id, title, type, domain, stack, tags, level, prerequisites, est_hours, related, week
id
title
type
domain
stack
tags
level
prerequisites
est_hours
related
week
ai.lowcode.scenario.poc-to-production
从 Dify 原型到生产:哪些留在平台、哪些改成代码
scenario
ai
PoC
低代码
私有化部署
自定义工具
迁移
评测
intermediate
2
ai.lowcode.interview
ai.agent-ops.scenario.agent-quality-gate
从 Dify 原型到生产:哪些留在平台、哪些改成代码
业务背景与问题
业务部门用私有化部署的 Dify 搭了一个“合同条款问答”原型,两周内在部门内部很受欢迎,准备推广到全公司。评估时发现:
知识库是所有合同混在一起,没有按部门和密级做权限;
回答效果没有量化,改提示词全凭感觉;
某些问题需要查合同管理系统的实时状态,平台的 HTTP 节点直接写了系统的内部账号;
用户量扩大 20 倍后,平台的响应变慢。
约束
业务部门希望继续能自己调整提示词和流程。
合同属于敏感数据,权限必须严格。
方案设计
能力拆分 :
留在平台:对话流程编排、提示词、界面、通用知识(公开的制度);
改成代码服务:带权限的合同检索 (按用户部门和密级过滤,见 RAG 权限场景 )、合同系统查询(用户身份透传),以自定义工具接入平台。
评测 :从原型的对话日志中整理 100 条问题和标准答案,形成评测集;每次修改提示词后通过 API 批量调用平台应用跑评测。
配置版本化 :定期导出应用配置(DSL)存入 Git,修改前后对比。
性能 :自定义工具服务独立扩容;平台按官方文档做多实例部署;高频问题加缓存(注意权限维度)。
退出路径 :如果平台无法满足(例如需要复杂的多 Agent 和人工审批),核心服务已经是独立代码,迁移到 LangGraph 的成本可控。
关键代码
通过 API 批量调用平台应用做评测(Dify 应用 API 的路径和参数以官方文档为准,示意):
自定义工具接口示例:examples/dify-tool-api 。
取舍
选择
优点
缺点
平台编排 + 代码服务(本方案)
业务可自助调整,关键逻辑可控
两套系统,要定义清楚边界
全部留在平台
最快
权限、评测、性能受平台能力限制
全部重写为代码
完全可控
失去业务自助能力,开发周期长
易错点
在平台的 HTTP 节点中写死系统账号和密钥。
原型的知识库直接用于全公司,没有权限。
评测时用的平台应用版本和线上不一致。
推广前没有压测。
面试怎么讲
“Dify 原型验证了需求之后,我做的是拆分:流程、提示词和界面留在平台,让业务自己调;带权限的合同检索和合同系统查询写成代码服务,用用户身份调用,再作为自定义工具接入。用原型日志整理了评测集,通过平台的 API 批量跑;平台配置定期导出进 Git。这样既保留了低代码的效率,权限和质量又在我们控制之下。”