添加模型供应商
Dify 的模型配置在「设置 → 模型供应商」,选 OpenAI-API-compatible,点「添加模型」。这个供应商类型就是给非官方地址准备的,字段不多,但每一项都会影响后面能不能用:
- 模型名称:
kimi-k3,必须和站点一致 - API Key:
sk-... - API endpoint URL:
https://ai.idcidiot.com/v1 - 模型类型:LLM
- 上下文长度:1048576
- 最大 token 上限:131072
- 函数调用:支持
- 流式函数调用:支持
- 视觉:支持
URL 末尾要带 /v1,Dify 会自己拼 /chat/completions。填成完整路径会多一层,返回 404。模型类型选错,这个模型不会出现在应用的下拉列表里,看起来像没添加成功。
先在终端确认这个模型和 Key 能通,再去 Dify 里填,能少一半排查时间:
curl -s https://ai.idcidiot.com/v1/chat/completions \
-H "Authorization: Bearer $YUN25_API_KEY" \
-H "Content-Type: application/json" \
-d '{"model":"kimi-k3","messages":[{"role":"user","content":"ping"}]}'参数为什么重要
上下文长度和最大 token 上限不是装饰。Dify 用上下文长度决定一次能塞多少检索结果和对话历史,用最大 token 上限约束输出长度;填得比上游真实值大,请求会在上游被拒或截断,填小了本地就先丢材料。kimi-k3 的上下文是 1,048,576 token,最大输出 131,072 token,照实填。
函数调用要按模型真实能力开。开了但模型不支持,Agent 节点会在第一次工具调用时报 400;不确定就先关掉,用普通 LLM 节点把链路跑通,再逐项打开。视觉开关同理,纯文本模型开了也只会多一个用不了的选项。
温度、top_p 这类采样参数 Dify 会给默认值。翻译和字段抽取建议调低,减少随机性;创意写作再调高。这些参数在模型配置里改一次,所有引用它的应用都会跟着变。
在应用里用起来
工作流里加 LLM 节点,模型选刚加的 kimi-k3。知识库检索出的段落会作为上下文拼进 prompt,这部分 token 全部计入输入。上下文够大不代表该全塞:检索 top-k 设小一点,回答更准,账单也更低。
聊天助手应用可以直接在模型下拉里切换供应商,切完保存并发布,草稿状态不影响线上。多模型对比时给每个模型建一个应用,不要在一个应用里频繁改配置,历史对话会跟着模型变化,很难复现问题。
应用里提示「模型不可用」时,先看供应商页面里这个模型是否启用,再看应用引用的模型是否还在。Dify 删除模型不会提示哪些应用正在用它,删之前先在应用列表里搜一遍模型名。
常见问题
400 model not found:模型名称拼错,或当前分组没权限。401:Key 填错,或者 URL 少了/v1打到了别的路径。- Agent 节点报工具调用错误:关掉函数调用,或换支持工具调用的模型。
- 长文档答非所问:检索段落太多把关键信息挤掉了,调小 top-k 或加 rerank。
- 回复被截断:最大 token 上限设得太小,或模型本身输出上限就这么多。
- 修改配置后没生效:应用里的模型要重新选一次,旧的引用不会自动更新。
- 模型列表里看不到刚加的模型:模型类型不是 LLM,或供应商没启用。
接好之后先用一条短提示词确认回复正常,再导入知识库。RAG 效果不好时先查切分和检索,模型接入层通常不是瓶颈。
成本
kimi-k3 的 model_ratio 是 10,稳定国模分组 0.2 倍,输入价 = 10 × 2 × 0.2 = $4/百万 token,输出按 completion_ratio 5 折算为 $20/百万 token。一次 RAG 问答带 8,000 输入、800 输出,约 $0.032 + $0.016 = $0.048,一天 500 次就是 $24。
高频场景换 glm-5.3-flash(官渠国模 0.2 倍,$0.16/$0.56),同样的输入输出约 $0.0013 + $0.00045,差两个数量级。倍率表在 价格页,单模型页在 /model/kimi-k3/。先在供应商页面点一次测试,再去创建应用。