Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

期望的功能增加 #385

Open
wangjinyi-1 opened this issue Nov 1, 2024 · 1 comment
Open

期望的功能增加 #385

wangjinyi-1 opened this issue Nov 1, 2024 · 1 comment

Comments

@wangjinyi-1
Copy link

1 长文档确实解析的很好,但是流程上面需要增加一个判断,判断用户是不是真的需要查询文档,这样会很好的优化使用体验。分享一下提示词
PROMPT = """
You're a text classifier. You need to categorize the user’s questions into {keysnum} categories,
namely: {keynames}
Here's description of each category:
{descriptions}
You could learn from the following examples:
{examples}
You could learn from the above examples.
If a question spans multiple categories, you can list all relevant categories separated by commas.
Just mention the category names, no need for any additional words.
"""
2 文档如果多个长文档一起加载,这时候效果会非常差。这时候应当需要增加一个树状索引,为每一篇文档单独建立简介。用户提出问题,根据简介判断这个问题应该查找哪个文档。这部分同样分享一下提示词,看看能不能增加这个:PROMPT_TEMPLATE_ZH = """
你有很多知识库可以询问,你需要根据提供的多个知识库介绍,将问题分类到不同的知识库中并生成相应的子问题。你有以下知识库:
{kdlists},
输出为JSON格式:{output_example}。
如果问题与上述知识库无关或者你觉得自己可以回答则输出:{{res: [],}}
当然建议你在面对(这个地方根据各自领域特色编写)方面相关问题的时候,如果不是对话历史中出现过答案的,最好还是咨询一下数据库
示例:
{examples}

下面正式开始,你必须使用提供的知识库,知识库的内容以知识库介绍为准。
开始!
Question:{user_request}
Result:
"""
3 为每一个单独的文档生成详细的简介,目前库里面确实有一个总结用agent,但是好像针对长文档的效果好像不太好,不知道是不是用的不对。我们目前用的滑窗加步长法,先切片写总结,然后在几个总结拼到一起,继续给这个写总结,就像金字塔一样。
4 表格处理,我没有发现您这边表格是如何优化切片。当然也有可能是我没读到。但事实上在真实场景中,文档中的表格是非常多的,建议关于对表格的切片做一些工程上面的优化。例如先转html再整体裁剪?
5 qwen2.5-7B 的json生成格式有很大概率会错误,目前我们采用的json的[] 格式进行包裹,这样改之后json格式就很稳定了。
以上,是在落地过程为应对实际需求增加一些改动。最后再次感谢你们的开源。

@tuhahaha
Copy link
Collaborator

您好,我们提供了examples/virtual_memory_qa.py,这个例子可以动态的决定检索哪个相关文档,会比固定检索更灵活一些。可以尝试下看是否更符合您的使用场景。

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants