要将大量记录的文本内容输入知识库并形成有效问答,可参考以下方法:
上面将文本转换成向量(一串数字)能大大节省空间,它不是压缩,可简单理解为索引(Index)。接下来就有意思了。比如我有一个大文本,可以先把它拆分成若干个小文本块(也叫chunk),通过embeddings API将小文本块转换成embeddings向量,这个向量是跟文本块的语义相关。在一个地方(向量储存库)中保存这些embeddings向量和文本块,作为问答的知识库。当用户提出一个问题时,该问题先通过embeddings API转换成问题向量,然后将这问题向量与向量储存库的所有文本块向量比对,查找距离最小的几个向量,把这几个向量对应的文本块提取出来,与原有问题组合成为新的prompt(问题/提示词),发送给GPT API。这样一来就不用一次会话中输入所有领域知识,而是输入了关联度最高的部分知识。一图胜千言,转一张原理图。再举一个极其简单的例子,比如有一篇万字长文,拆分成Chrunks包含:文本块1:本文作者:越山。xxxx。文本块2:公众号越山集的介绍:传播效率方法,分享AI应用,陪伴彼此在成长路上,共同前行。文本块3:《反脆弱》作者塔勒布xxxx。文本块4:“科技爱好者周刊”主编阮一峰会记录每周值得分享的科技内容,周五发布。...文本块n如果提问是”此文作者是谁?“。可以直观的看出上面的文本块1跟这个问题的关联度最高,文本块3次之。通过比较embeddings向量也可以得到这结论。那最后发送给GPT API的问题会类似于”此文作者是谁?从以下信息中获取答案:本文作者:越山。xxxx。《反脆弱》作者塔勒布xxxx。“这样一来,大语言大概率能回答上这个问题。
|上传方式|操作步骤||-|-||在线数据|扣子支持自动抓取指定URL的内容,也支持手动采集指定页面上的内容,上传到数据库。<br>自动采集方式:该方式适用于内容量大,需要批量快速导入的场景。<br>1.在文本格式页签下,选择在线数据,然后单击下一步。<br>2.单击自动采集。<br>3.单击新增URL。在弹出的页面完成以下操作:<br>3.1.输入要上传的网站地址。<br>3.2.选择是否需要定期同步网站内容,如果需要选择内容同步周期。<br>3.3.单击确认。<br>4.当上传完成后单击下一步。<br>系统会自动根据网站的内容进行内容分片。<br>手动采集:该方式适用于需要精准采集网页上指定内容的场景<br>1.安装扩展程序,详情请参考[安装Coze Scraper](https://www.coze.cn/docs/guides/scraper)。<br>2.在文本格式页签下,选择在线数据,然后单击下一步。<br>3.点击手动采集,然后在弹出的页面点击权限授予完成授权。<br>4.在弹出的页面输入要采集内容的网址,然后单击确认。<br>5.在弹出的页面上,点击页面下方文本标注按钮,开始标注要提取的内容,然后单击文本框上方的文本或链接按钮。<br>6.单击查看数据查看已采集的内容,确认无误后再点击完成并采集。<br><br>|
|上传方式|操作步骤||-|-||本地文档|1.在文本格式页签下,选择本地文档,然后单击下一步。<br>2.将要上传的文档拖拽到上传区,或单击上传区域选择要上传的文档。<br>目前支持上传.txt,.pdf,.docx格式的文件内容。<br>每个文件不得大于20M。<br>一次最多可上传10个文件<br>1.当上传完成后单击下一步。<br>2.选择内容分段方式:<br>2.1.自动分段与清洗:系统会对上传的文件数据进行自动分段,并会按照系统默认的预处理规则处理数据。<br>2.2.自定义:手动设置分段规则和预处理规则。<br>分段标识符:选择符合实际所需的标识符。<br>分段最大长度:设置每个片段内的字符数上限。<br>文本预处理规则:<br>替换掉连续的空格、换行符和制表符<br>删除所有URL和电子邮箱地址<br>1.单击下一步完成内容上传和分片。|