Demo-文件对话

目标

《中华药典(第一部)》收录了大量药材和饮片、植物油脂和提取物、成方制剂和单味制剂等药材信息,以类似字典的形式进行组织。内容示例见下图:
在这里插入图片描述
大语言模型根据《中华药典》文档,对用户输入的有关中华药典的问题进行回答。典型问题如“益气养血口服液的处方”、“瓦松的性状”等,都是询问药名、品名的某类特征。

效果示例

在这里插入图片描述

构建思路

  1. 需要对文本内容进行回答,因此选择语言模型ChatOpenAI组件(或其他语言模型组件)、RetrievalQA组件、CombineDocsChain组件;
  2. 因为中华药典中的内容很多都是专有名词,药品药材的名称是最关键的信息,因此相比向量语义搜索,通过关键词的搜索找到相关文本段落会更有效,因此选择ElasticKeywordsSearch组件;
  • 连接示例

在这里插入图片描述

  • 工作原理

用户输入的问题由ElasticKeywordsSearch组件对用户的query进行分词,然后通过这些词进行关键词匹配,返回匹配关键词的文本段落,再把问题与这些文本段落一同传递给大语言模型,由大语言模型输出答案。我们内部实验,在该场景下使用向量搜索最终回答的准确率不到50%,使用ES关键词搜索可以将准确率提升到85%以上。

  • 组件参数设置
    • ChatOpenAI
      • Model Name:选择gpt-3.5-turbo-16k-0613,可以换为任意模型
      • OpenAI API Key:API接口密钥
      • OpenAI API Base/OpenAI Proxy:服务的地址,填写其中之一即可(如果是自己代理的国内的地址则填写OpenAI Proxy参数)
    • CombineDocsChain
      • Chain Type:选择“stuff”,原因详见CombineDocsChain
      • token_max:“13000”,即对传给大模型的文本长度做限制,不能超过13000个token,详见CombineDocsChain
    • ElasticKeywordsSearch
      • Index Name:要搜索的数据库
      • Search Kwargs:关键词搜索匹配的方式,参数的含义见ElasticKeywordsSearch
  • 5
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值