向量知识库构建是一个将处理过的数据嵌入向量知识库的过程,主要用于将不同类型的数据转</p>
化为向量,并进行存储和检索。其流程如图 4.1 所示。</p>
图 4.1 向量知识库构建流程</p>
对收集到的数据进行清洗、去重、分类,提取分割文本,以确保数据的质量和有效性。消除噪</p>
声数据,提高数据的一致性和准确性。将预处理后的数据转化为向量,将向量化后的数据存储到向</p>
量知识库中,并利用向量数据库进行高效的存储和检索。向量数据库是一种专门用于存储和检索向</p>
量数据的数据库系统,可以根据语义或上下文含义查找最相似或相关的数据。</p>
测试流程包括以下几个步骤:</p>
测试设计:根据目标领域定义测试用例,包括典型问题、边缘情况和错误输入。</p>
环境搭建:搭建测试环境,包括聊天界面和后端模型处理系统。</p>
执行测试:记录模型的回应。</p>
评估结果:根据预设的标准(如准确性、响应时间、用户满意度)评估模型表现。</p>
优化模型:根据测试结果对模型进行调整和优化。</p>
5.2 智能交互组件 Chatbot</p>
Chatbot 是一种人工智能程序,它设计用于模拟人类对话,并且能够基于事先编程或机器学习</p>
技术来进行智能对话交流。Chatbot 通常被用于客户服务、信息查询、娱乐等各种场景,可以通过</p>
文本或语音与用户进行交互。</p>
Chatbot 的一些特点和作用包括:</p>
①自动化交互:Chatbot 可以自动回答用户提出的问题,执行指定的任务,无需人工干,减少</p>
人力成本和时间消耗。</p>
②实时响应:Chatbot 能够在任何时间、任何地点提供服务,随时响应用户的问题和需求。</p>
③个性化服务:Chatbot 可以根据用户的需求和历史数据提供个性化的服务和建议,提高用户</p>
体验。</p>
④多渠道支持:Chatbot 可以在多种通信渠道上运行,如网页、应用程序、社交媒体平台等,</p>
为用户提供多样化的对话途径。</p>
本项目选择 OpenAI 的 GPT 模型作为 Chatbot 的大语言模型基座,GPT 模型基于 Transformer</p>
架构,相较于其他模型,这种架构允许模型在处理长文本时保持较好的性能,同时具有良好的并行</p>
化能力,使得模型的训练和推理速度得到提升。</p>
5.2.1 Chatbot 后端</p>
基于先前构建的针对电力 LCA 领域的向量知识库构建 Chatbot 测试模型性能,主要设计思路是</p>
为了实现检索功能,大致可分为知识库检索功能和在线搜索。</p>
Chatbot 功能流程图如图 5.1 所示。</p>
用户通过 Chatbot 界面输入他们的问题或请求。对用户输入文本进行清洗,包括去除标点符</p>
号,进行分词等。转化为结构化数据后将预处理后的文本转换为向量形式,以便于机器理解。将向</p>
量化处理后的用户问题构建成搜索向量。使用搜索向量与知识库中已向量化的内容进行匹配,找出</p>
相关的信息。对匹配到的知识库内容进行排序,选择最相关的几个回答候选。为保证性能设置最相</p>
关的问答数量。基于排序和选择的结果,生成回答,将最终确定的回答返回给用户。</p>
对于用户输入的问题语句进行文本预处理,随后将其变成机构化数据后向量化,与先前处理文</p>
献数据类似,因此这里不再赘述。</p>
知识库搜索:</p>
以下是通过 Weaviate 在名为“Water”的集合中搜索与特定查询文本相近的文档,并返回相</p>
关文档的内容和来源,设置 top_k=3,考虑计算机性能与运行速度,只寻找三个匹配项。</p>