开发者社区> 问答> 正文

如何搭建一个适用于金融领域的问答机器人?

如何搭建一个适用于金融领域的问答机器人?

展开
收起
我是三好学生 2024-07-25 14:34:31 27 0
1 条回答
写回答
取消 提交回答
  • 智能客服第一步:售后知识库准备工作,成果为WORD,PDF,TXT,MarkDown等格式的电子文档

    收集整理公司客服应答记录,保留与公司产品售后服务相关的文本记录;

    收集公司在售产品的产品手册、操作说明书、售后服务协议、客服人员培训资料等。

    第二步:搭建流水装配工厂,成果是将知识库中的电子文档转化为语言向量

    可从开源社区GitHub中寻找这类向量化装配工厂,完成知识库文本向量化流水处理工作。推荐可采用Langchain,搭建起装配工厂的流水线,这条流水线的上下游构成如下:

    挑选各类非结构化的文本加载工具(Langchain中整合了各类常见文件加载器),拼装成所需的文本加载器组;

    挑选文本分割器(如nlp_bert_document-segmentation_chinese-base),将大文本切割成段,方便后续加工;

    选择文本向量化模型Embedding,(如 nghuyong/ernie-3.0-nano-zh,GanymedeNil/text2vec-large-chinese);

    选择一个向量化数据库VectorStore,(如 Milvus,FAISS);

    采用Langchain这类工具,将以上工具和模型组装成流水线,实现文本知识存入向量数据库。

    第三步:搭建和训练大语言模型,成果是具备你专业业务领域的知识处理能力的大语言模型

    选择大语言模型基座,可供选择的大语言模型很多,既可选开源的大语言模型(如THUDM/chatglm-6b,vicuna-13b-hf),也可选商用的大语言模型(如OpenAI中的gpt-35-turbo);

    将以上知识库中的文本,按模型训练所需的数据格式(如JSON格式),随机分成两部分,一部分为训练数据,一部分为测试数据,一般分割比例可设为4:1;

    利用大语言模型提供的API接口,输入以上训练和测试数据,训练大语言模型,得到微调模型;

    启动大语言模型,加载微调后的模型,使用Chat类接口,验证训练结果。

    第四步:将客户的问题输入给大语言模型,成果是智能客服像人一样为客户做服务

    接收用户问题输入,采用第二步相同的Embedding工具,进行向量化;

    将向量化后的问题,在向量知识库中进行搜索,获得与此问题语义相关度较高的知识文本片段;

    将客户问题和知识文本片段,按提问模板拼装为问题提示Prompt;

    将Prompt发送至大语言模型,调用Chat类接口,生成答案;

    将问题答案以Stream的形式展现给客户端,实现逐字逐句问答的效果。

    接下来,我们还可以搭建一个更加复杂的智能代理。其步骤方法与智能客服类似,但需要在一些环节中加入对业务交易系统数据操作的能力。

    智能代理

    我们参考DB-GPT,在以上的装配线上,做些组件更换,训练数据补充,引入数据库操作和数据展现等工具。

    第一步:增加业务系统数据结构知识准备工作

    在公司业务产品知识库的基础上,增加业务系统数据结构文档。

    第二步:搭建流水装配工厂,支持数据库处理能力

    新引入常用ER图格式转SQL工具组件(如eralchemy,sqlacodegen);

    引入SQL执行器(如SQLAlchemy)、数据分析器(如Matplotlib)。

    第三步:搭建和训练大语言模型,新增数据结构知识训练

    用业务数据结构的知识,微调训练大语言模型,具备业务数据操作SQL生成能力。

    第四步:将客户的问题输入给大语言模型,返回数据查询分析结果

    在Chat的模式下,补充数据图表能力,给出下一步操作引导提示。

    image.png

    参考文档https://www.sohu.com/a/707921787_120009081

    2024-07-26 08:51:52
    赞同 5 展开评论 打赏
问答分类:
问答标签:
问答地址:
问答排行榜
最热
最新

相关电子书

更多
下一代服务机器人的应用和创新 立即下载
机器人的小脑SLAMWARE - 机器人自主定位导航系统 立即下载
AIOps的核心技术之一:任务机器人如何在金融运维 运营中落地 立即下载