SuperAPI AI 工具集

dust-llm

智能体与模型

查看项目

更新于 10-15 21:35

技能介绍

用途:指导在 Dust 代码库中为最新发布的 LLM 模型添加支持,或更新已有模型。适用场景是新增模型或维护旧模型配置。

前置信息:添加前需收集模型 ID(供应商精确标识,如 gpt-4-turbo-2024-04-09)、上下文窗口大小、按百万 token 计的输入/输出定价、能力(视觉、结构化输出、推理强度等级)、兼容的 token 计数器。

主要涉及文件:front/types/assistant/models/{provider}.ts(模型 ID 与配置)、front/lib/api/assistant/token_pricing.ts(定价)、front/types/assistant/models/models.ts(中央注册表)、front/lib/api/llm/clients/{provider}/types.ts(路由白名单)、sdks/js/src/types.ts(SDK 类型)、front/components/providers/types.ts(UI 可用性,可选)、front/lib/api/llm/tests/llm.test.ts(集成测试)。

添加 OpenAI 模型的步骤:1)在 openai.ts 添加模型 ID 常量和 ModelConfigurationType 配置;2)在 token_pricing.ts 的 CURRENT_MODEL_PRICING 添加输入、输出及可选的缓存读写价格;3)在 models.ts 的 MODEL_IDS 和 SUPPORTED_MODEL_CONFIGS 中注册;4)把 ID 加入 OPENAI_WHITELISTED_MODEL_IDS;5)更新 SDK 的 ModelLLMIdSchema;6)按需加入 USED_MODEL_CONFIGS 以在界面显示;7)在 llm.test.ts 启用 runTest 并运行测试命令:RUN_LLM_TEST=true npx vitest --config lib/api/llm/tests/vite.config.js lib/api/llm/tests/llm.test.ts --run,通过后将 runTest 设为 false 以避免昂贵的 CI 运行。

Anthropic 模型遵循同样模式,使用对应文件:anthropic.ts、ANTHROPIC_WHITELISTED_MODEL_IDS、中央注册表、定价、SDK 类型并测试。

配置属性包括 supportsVision、supportsResponseFormat、minimum/maximum/defaultReasoningEffort(none、low、medium、high)、tokenizer。

检查清单:模型配置、定价、中央注册表、路由白名单、SDK 类型、UI 配置(如需)、集成测试通过、测试后关闭。

排障:模型未出现在 UI 检查 USED_MODEL_CONFIGS;API 调用失败检查模型 ID 与路由白名单;token 计数错误检查上下文大小与 tokenizer;定价问题确保按百万 token、美元计价。参考文件为 openai.ts 与 anthropic.ts,供应商文档包括 OpenAI、Anthropic、Google、Mistral。