All In AI的智能时代到来,头部科技公司都在投入巨资,打造各自的AI能力。你是否也期待能够拥有强大的AI能力,为你的客户提供全天候的智能服务,无论时间和地点,都能延展我们卓越的客户关怀与支持!如:提供智能销售,随时为客户提供产品和方案咨询;提供智能客服,为客户提供全天候不间断的售后服务;提供智能代理,为客户的消费、理财提供即席分析,给出建议。
如果能够站在这些大公司和开源社区的成果上,看似很高深的AI工作,也变得像把大象装入冰箱一样简单。
接下来,我们可以参考Langchain chatGLM的方式,首先打造一个智能客服,解放你们公司客服长期不间断的重复工作,让他们集中精力处理更需要创造力的工作上。
智能客服
第一步,售后知识库准备工作,成果为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的形式展现给客户端,实现逐字逐句问答的效果
图1. Chat-Agent
接下来,我们还可以搭建一个更加复杂的智能代理。其步骤方法与智能客服类似,但需要在一些环节中加入对业务交易系统数据操作的能力。
智能代理
我们参考DB-GPT,在以上的装配线上,做些组件更换,训练数据补充,引入数据库操作和数据展现等工具。
第一步,增加业务系统数据结构知识准备工作
- 在公司业务产品知识库的基础是基础上,增加业务系统数据结构文档
第二步,搭建流水装配工厂,支持数据库处理能力
- 新引入常用ER图格式转SQL工具组件(如eralchemy,sqlacodegen)
- 引入SQL执行器(如SQLAlchemy)、数据分析器(如Matplotlib)
第三步,搭建和训练大语言模型,新增数据结构知识训练
- 用业务数据结构的知识,微调训练大语言模型,具备业务数据操作SQL生成能力
第四步,将客户的问题输入给大语言模型,返回数据查询分析结果
- 在Chat的模式下,补充数据图表能力,给出下一步操作引导提示
图2. DB-Agent