如何提升 Chatbot 回复质量
- tomi xu
- 2024年8月16日
- 讀畢需時 4 分鐘
部署生成型AI应用程序时,由于大型语言模型(LLM)的不可预测性,可能会面临诸如幻觉式回应、不合规以及过度消耗令牌等挑战。
Dify.AI 的注释回复功能允许手动编辑历史对话或导入问答批次,以便将类似用户问题首先匹配并回复已注释的响应。这种可定制性使聊天机器人能够在特定问题场景中给出确定的答案。
让我们看看它能为您做些什么。
提升回复质量,构建LLMOps数据反馈循环
我们认为,每个AI应用程序最初只能实现60%的预期性能。剩余的40%需要不断细化提示和回复以达到目标。这就是为什么Dify致力于成为一个出色的LLMOps平台,让开发者在创建后迭代LLM应用程序的性能。
一个生产级的LLM应用程序需要一个完整的应用开发、监控、反馈和优化循环。这允许开发者反复提升LLM的性能,创造数据飞轮效应,并稳步提高生成质量和可靠性。注释回复功能在这里起着至关重要的作用。
在Dify中,您可以在应用程序调试期间注释AI回复,以便在向重要客户演示时,可以预先注释特定问题的答案,使LLM输出与期望一致。
在应用程序操作期间,Dify还促进了开发者和业务经理之间的协作,而无需硬编码更改。业务经理最了解客户需求,并知道最佳答案!开发者构建应用程序后,业务团队可以通过编辑回复或导入现有的问答数据来接管数据改进。
业务团队很可能已经积累了标准的问答对作为有价值的数据资产(这也是为什么需要RAG为LLM应用程序注入业务知识)。这些可以通过Dify的注释回复功能直接导入,通过登录Dify轻松访问。
降低令牌成本和加快响应速度
在对话场景中,用户经常会问之前已经回答过的重复问题,每次调用LLM时都会产生冗余的令牌成本。Dify的注释回复数据处理具有独立的RAG(检索增强系统)机制,与知识库分开。它允许为语义相同的查询持久化响应,而不是查询LLM,从而节省成本并减少延迟。
为什么不用GPTCache?
为什么选择Dify.AI而不是GPTCache呢?GPTCache通过自动缓存重复语义来为LLM查询创建语义缓存,以减少请求和发送到LLM服务的令牌,从而节省成本。相比之下,Dify坚持自定义注释响应以减少LLM请求,达到同样的成本节约,同时更可靠地存储用于检索的生产质量数据。
关于自动语义缓存,Portkey.ai的VRUSHANK VYAS在《通过语义缓存减少LLM成本和延迟》中测试,通过语义缓存,这些请求可以以零推断延迟和令牌成本处理,至少提供20倍的潜在加速,而无需额外成本。
此外,要使用GPTCache构建应用程序,可能还需要更多服务,如LangChain、向量数据库、嵌入模型,这些需要硬编码在一起进入未经验证的应用程序。相反,Dify提供了一个完整的UI解决方案,其中相似性阈值和嵌入模型可以灵活调整,允许无代码生产LLM应用程序开发和通过注释回复在2小时内提高性能。
为未来模型微调准备数据
注释回复不仅优化了实时性能,还积累了用于模型微调的有价值数据资产。随着时间的推移,捕获实际用户问题特征和所需回复的增长问题-答案对可以按需导出,以获得更定制化、专业化的能力,根据OpenAI的指导显著改善结果,从50-100有效示例开始。
微调通过在比可以放入提示的更多示例上训练来改善少数学习,让您在广泛的任务上获得更好的结果。一旦模型经过微调,您就不需要在提示中提供那么多示例。这样可以节省成本并实现更低延迟的请求。
什么时候使用它?
这里有一些使用注释回复的例子:
对敏感问题的固定回复:
用户:你们使用的是哪个模型?
聊天机器人(注释回复):对不起,我们的商业模型和技术细节是商业秘密,不能披露。
标准化问题回复:
用户:你们提供什么服务?
聊天机器人(注释回复):我们提供虚拟助理和知识库开发服务。标准价格为每月xx美元。
批量导入现有标准化问答:
用户:你们的产品包装是否单独收费?
聊天机器人(注释回复):不,我们提供标准包装免费。可以提供额外成本的高级包装服务。
如何在Dify.AI中使用注释回复?
在提示工程下启用注释回复 --> 添加功能(目前仅支持聊天应用)。然后可以在LLM应用的调试过程或日志中注释LLM回复内容。高质量的LLM回复可以直接添加或根据需要编辑后持久化。
稍后的问题将被向量化并与注释过的问题进行匹配。
如果有匹配,就会直接返回相应的注释响应,而不需要通过LLM或RAG。
如果没有匹配,就会应用常规工作流程(传递给LLM或RAG)。
当功能关闭时,禁用注释响应匹配。
请参阅文档了解最佳实践,或查看GitHub发布说明进行升级。
结论
注释回复提供了一种持续改进AI应用性能以实现商业目标的简便方式。有了这个功能,您可以构建持续改进的AI应用程序。
Comments