是否可以更换文本
zhaostarr opened this issue · comments
大佬好,这是提的第二个Issue,之前提的已经解决了,史先生部署成功了,很有意义的一个项目。再次感谢!
问题:如何用您的项目代码构建一个新的知识库?
背景:我想更换为其他的语料,是不是意味着:我需要重新做一个milvus库?而不是:直接把txt文件丢到文件夹,build就好?
因为我这么做过,问相关的问题,答案就是:不知道。
所以想请教您:如何用您的项目代码构建一个新的知识库?谢谢!
ZS
cfgs/config.yaml 有一个collection_name为‘history_rag’
milvus以collection来管理你的文件,所以你可以通过:
1.使用remove命令删除当前collection的文件
2.新建一个collection,只要你把collection_name改为‘history_rag2’,再次运行cli.py,那么你读取和写入都会在一个全新的collection上。
做完后,你可能会遇到回答“不知道”,使用 ask -d 可以返回出来retrieve的你的文档片段,如果retrieve的内容是你新的文件,那说明确实没找到,你可以先测试,再发进一步的结果。
我去,大佬回复的也太快了!我明天试试!感谢。
您好,删除并更换文本后,遇到empty response的问题,请问如何继续?
我做了什么?
- REMOVE: 我试着用remove,把之前build的文件删除了。您原文说的是删除当前collection,我不懂怎么删除,就remove 后面加上 每一个文件名,删掉了所有的已经build的txt
- 新建文件库:然后我在data文件夹里,新建了一个txtdata文件夹,把我的文档放入其中。第一行起了标题,第二行以下做了缩进。注:全是txt文件。
- 重新Build:每个文件都分别用build .data/*.txt给构建了一次了(*这里指的是文件名,而不是我放了通配符),反馈:索引构建完成。注:但是建立的特别快,0.5秒的时间。
结果:
- Ask命令:回复的都不是不知道了,是”empty response” (苦笑)
- Ask -D:回复也是“empty response”
总结:
看来我是没有替换数据库成功,我该修正哪里呢?
您好,修改后成功build英文内容,也可以识别,但是有新的疑问:
Issue: 无法回答相应的问题。
背景:
- 我根据您的#63 这个问题下的答案指导,修改了三点。成功build了新的文本
- 但问问题的时候,反馈“不知道”,或者“无法回答相关问题。”
- 同时反馈我的文本的信息(反馈的内容是正确的)不是特定历史事件或任务的详细信息。
请问是不是需要重新训练模型?毕竟这个模型是为了回答历史问题而训练的。
谢谢!
使用ask -d 看看你的结果
你这个语料不适合作为RAG, RAG的本质上是根据query找到数据,利用数据来回答的你问题,
在这里你用的文本是试卷,而不是知识。所以无法根据这些试卷来回答你的问题,符合你所需要的知识库的答案是你自己准备好的,比如:
以下是一些包含where的知识点和例句:
定语从句:用于引导地点的定语从句。例:The town where I was born is famous for its music festival.
疑问副词:询问地点。例:Where do you live?
连接副词:连接描述地点的两个句子。例:She moved to New York, where she started her own business.
非限定性定语从句:添加额外地点信息,不限制名词。例:London, where the Queen lives, is attracting many tourists.
与'in which'互换:在更正式的文体中可用'in which'替换。例:The house where I grew up is very old. (或The house in which I grew up is very old.)
你这个语料不适合作为RAG, RAG的本质上是根据query找到数据,利用数据来回答的你问题, 在这里你用的文本是试卷,而不是知识。所以无法根据这些试卷来回答你的问题,符合你所需要的知识库的答案是你自己准备好的,比如:
以下是一些包含where的知识点和例句: 定语从句:用于引导地点的定语从句。例:The town where I was born is famous for its music festival. 疑问副词:询问地点。例:Where do you live? 连接副词:连接描述地点的两个句子。例:She moved to New York, where she started her own business. 非限定性定语从句:添加额外地点信息,不限制名词。例:London, where the Queen lives, is attracting many tourists. 与'in which'互换:在更正式的文体中可用'in which'替换。例:The house where I grew up is very old. (或The house in which I grew up is very old.)
谢谢您的耐心解释。还有两个小疑惑。
- 其实我的第一个问题是:请给我一些包含where的例句。反馈是 “...没有直接提供含有where”的句子。
但是文本中,有很多含有where的句子。这和原来项目中,“请列出谈到诸葛亮的史料?”
这种问题,在自然语言理解上,本质上是一样。这种情况也是不能回答的吗?
- 在您原来的项目中。我看到gpt4.0也能根据提炼出来的史料,回答一些不是现成答案的问题。为什么换成英文试卷,它就无法回答一些总结类的问题了呢?
只是脑子可能还没转过来。
我明白您的字面意思,但是没懂内涵。
按照您的指导调整了,已经可以回答类似之前历史库“有答案”的相关的问题了,
例如,“请列出包含where的句子”。
非常感谢。
Issue: 如何让他回答一些需要识别、总结归纳的问题?类似“请找出几个定语从句这样的问题”,它的回答是:“原文中没有直接提供定语从句的例子,因此无法直接引用文本中的句子作为定语从句的例子。”
背景:
-
我记得您之前告诉我原因。“这个语料不适合作为RAG, RAG的本质上是根据query找到数据,利用数据来回答的你问题,”,以及“...答案是你自己准备好的...”
-
想请教的是:chatgpt本身是可以回答的类似“请找出几个定语从句这样的问题的”。
但您通过RAG流程的文档切片、向量化、向量检索的方式提供给他数据,他为什么就不能回答了,给他的输入的我理解也是语料呀?
因此:如果希望他能够回答类似问题,是不是需要新的路径?这个路径我可能走不通了?还是说在这个路径中嵌入一个什么流程,让他开启这个识别、总结和归纳的功能?
感谢!