DeepSeek Harness(DSH)是用于与模型交互和测试的框架。在开发需要生成数学公式、几何图表或报告的场景时,智能体往往需要将 LaTeX 或 SVG 代码转换为可视化的图片。jaxzhou/dsh-mathmatic-symbol 是一个 DSH 插件,它提供了四个工具,让智能体能够直接将数学公式渲染为图片、从声明式规格绘制几何图形、转换现有文件,以及组装包含这些图片的文档。
该插件属于“联网工具”类别,由用户 jaxzhou 维护,遵循 MIT 许可证。
核心功能¶
安装后,插件会在 DSH 会话中注册四个工具函数,分别解决不同的数学可视化需求:
- math_formula:将 LaTeX 公式渲染为图片(同时生成 SVG 和 PNG)。
- math_figure:根据声明式的几何规格绘制数学图形。
- math_convert:将现有的公式或 SVG 转换为可直接嵌入的图片格式。
- math_document:组装文档,并在文档中自动插入生成的数学图片。
安装与启用¶
在 DSH 环境中,使用以下命令安装该插件:
dsh plugin --profile web add @jaxzhou/dsh-mathmatic-symbol
安装完成后,插件会自动注册提示引导,告诉模型在需要输出图片或文档文件时优先使用这些工具,而不是手写渲染代码。
典型用法¶
渲染数学公式¶
使用 math_formula 函数,智能体可以直接传入 LaTeX 字符串,插件会生成对应的图片资源。
math_formula({ latex: "\\int_0^\\infty e^{-x^2}\\,dx = \\frac{\\sqrt{\\pi}}{2}" })
绘制几何图形¶
使用 math_figure,智能体可以通过声明式的 JSON 规格来描述图形。例如,定义一个三角形:
math_figure({ figure: { ... }, name: "triangle" })
转换图片格式¶
如果工作区中已有 SVG 文件,可以使用 math_convert 将其转换为 PNG,并调整缩放比例:
math_convert({ source: { path: "diagrams/flow.svg" }, format: "png", scale: 3 })
组装文档¶
使用 math_document,智能体可以指定文档路径和内容,插件会将生成的公式和图表插入文档中,并返回相对路径。
math_document({ path: "docs/report.md", body: "...", math: "image", figures: { ... } })
技术特性与权衡¶
该插件在实现上有几个明确的技术特征:
- 无字体依赖:生成的 SVG 包含轮廓路径(outline paths),不依赖系统字体,确保在任何环境下渲染一致。
- 确定性栅格化:PNG 输出由
@resvg/resvg-js生成,且禁用了系统字体加载,同一输入在任何机器上产生的字节相同。 - 内容寻址文件:相同的输入总是写入相同的文件名,便于缓存和构建流程中的覆盖写入。
注意:由于 SVG 中文本被转换为轮廓,图片中的标签无法被选中或搜索。这是为了实现无字体依赖所做的必要权衡。
结语¶
jaxzhou/dsh-mathmatic-symbol 为 DSH 中的数学可视化任务提供了标准化的解决方案。通过将复杂的渲染逻辑封装为工具调用,它简化了智能体生成高质量数学文档和图表的过程。更多细节可参考插件目录页或源码仓库。