天才一秒记住本站地址:[乐阅读]
https://www.leduxs.com/最快更新!无广告!
仅基于大语言模型,连接知识库搜索,和在线搜索。前端部分我采用streamlit来完成,UI设计如图所示。这边是功能按钮,中间是对话框。先前有讲到了,我们来检测针对专业领域的大模型的标准就是检测是否有能力回答专业领域的问题,并针对结果进行优化。这里我向chatbot提出同一个问题。只采用大语言模型,采用知识库与大语言模型结合,和联网搜索与大语言模型结合。三种功能下获得的回答是完全不同的,后面两个检索功能均为大语言模型优化了生成回答的准确性,对大语言模型的专业领域知识做了补充和改善。可以看到普通的大语言模型回答的是最简短的,采用了知识库的回答,将答案细分,扩充,并添加了新的内容,附上参考文献。最后的联网搜索,将答案分为了几类,更加全面,但是每类回答点到即止。最后就是向量知识库进行优化。对于准确率低的查询,分析模型回应错误的原因。如果是由于知识库中缺少相关信息,可以通过添加更多相关文档和数据来增强向量知识库的覆盖范围。用户反馈是对输入的问题和产生的回答进行记录,方便针对性进行调整。反馈可以直接用于指导向量知识库的更新和优化。不断地测试来完善我的专业领域大模型。最后一部分是我本次研究的总结。首先创建了一个能被大语言模型直接调用的专业知识库,在电力LCA这个专业性较高的领域填补了大语言模型的空白。其次是采用RAG技术,将知识库,联网与大语言模型相结合,增强了大语言模型在特定领域的可信度和实用性。最后就是本次研究虽然是针对电力LCA领域,但其背后的构架适用于各个领域,构建了一个完整的体系,可以进行修改,全方面的辅助大语言模型,应用广泛。以下就是我的全部研究内容请各位老师批评指正。
3.3.2
数据预处理
Unstructured
库是一个强大的工具,专为处理非结构化数据设计,具体流程如图
3.7
所示,
如从文本文档、PDF
文件或网页中提取数据。它支持多种数据提取方法,包括正则表达式匹配、自
然语言处理(NLP)技术等。
数据预处理步骤如下:
步骤一:数据清洗
去除杂质:从文本中去除无关的字符,如特殊符号、空白行等。
格式统一:将所有文本统一为相同的编码格式,通常为
UTF8,以避免编码错误。
语言标准化:统一不同术语的使用,例如将所有"photovoltaic"统一替换为"PV",确保术语的
一致性。
步骤二:信息提取
关键信息标识:标识文献中的关键信息,如研究方法、主要结论、实验条件等。
数据分类:根据信息类型将数据分类,如作者、出版年份、研究结果等。
步骤三:结构化转换
结构化处理:将信息精细化拆解与清洗,将各种元素进行转换,形成结构化数据形式,拆分成
标题与内容。
分割部分关键代码:
对于其中的每个元素,如果是
positeElement
类型,就提取其中的文本并将其添加到
text_list
中;如果是
Table
类型,就将表格的文本表示(可能是
HTML
格式)添加到
text_list
中。
将图
3.8
的提取的数据进行拆分,添加到
text_list
中,输出结果如图
3.11
所示。
非结构化文本数据通常非常稀疏,即包含大量的词汇但每个文档只使用其中的一小部分。而结
构化数据则可以通过合并相似信息来降低数据的稀疏性,这有助于生成更加紧凑和有效的嵌入向
量。
结构化数据可以实现更高效的特征提取。结构化数据通常已经按照特定的模式或结构进行了组
织,这使得我们可以更加高效地从中提取有用的特征(如标题、作者、摘要、关键词等)。这些特
征可以作为后续
Embedding
的输入,帮助生成具有更强区分性和泛化能力的嵌入向量。结构化数据
中的元素(如主题、类别、属性等)通常具有明确的含义,这些含义可以在
Embedding
过程中被保
留下来。因此,基于结构化数据的嵌入向量往往具有更强的解释性,有助于我们更好地理解模型的
预测结果和内部机制。喜欢离语请大家收藏:
章节错误,点此报送(免注册),
报送后维护人员会在两分钟内校正章节内容,请耐心等待。