在智能体开发中,面对模型返回的 JSON 数据,手动定义接口或 Pydantic 模型既繁琐又易错。# dsh–types 插件提供了一套本地化的类型转换工具,能够根据样本数据自动生成对应的代码结构。
该插件由 uckkk 维护,属于模型推理分类。它的核心作用是将一段 JSON 数据一键转换为 TypeScript 接口、JSON Schema 或 Python Pydantic 模型,并自动推断字段类型、嵌套对象与数组元素类型。
插件提供了以下三个工具函数:
_to_ts:将 JSON 转换为 TypeScript 接口。_to_schema:将 JSON 转换为 JSON Schema(draft-07 标准)。_to_python:将 JSON 转换为 Python Pydantic 模型。
在命令行中执行以下命令安装插件:
dsh plugin add dsh--types
安装完成后,该插件会随 DSH 会话启动,注册的工具即可在对话中直接调用。
安装后,在 DSH 会话中调用对应的工具函数。假设有如下 JSON 数据:
{
"id": 1,
"name": "example",
"tags": ["tag1", "tag2"],
"meta": { "status": "active" }
}
可以通过以下方式生成类型:
- 调用 _to_ts(data=<JSON>) 获取 TypeScript 接口。
- 调用 _to_schema(data=<JSON>) 获取 JSON Schema。
- 调用 _to_python(data=<JSON>) 获取 Pydantic 模型。
- 适用场景:当你需要快速为模型返回的数据定义强类型,或者为 Python 项目搭建数据验证模型时,可以直接使用该插件生成基础代码,减少手工编写的工作量。
- 注意事项:
1. 该插件为纯 Node 实现,安装即在本机运行第三方代码,建议在安装前自行审阅源码。
2. 类型推断基于样本数据,可能存在误判(例如字符串可能被推断为枚举或日期),在复杂场景下建议生成后进行人工微调。
总结来说,# dsh–types 解决了智能体开发中繁琐的类型定义问题。若需查看完整文档或源码,可访问其 GitHub 仓库。