资讯动态

从上传到RAG素材:Qwen-Agent文件知识库的全流程

发布时间:2026/9/10 15:42:41 来源:尧图企业网站定制
从上传到RAG素材Qwen-Agent文件知识库的全流程【免费下载链接】Qwen-AgentAgent framework and applications built upon Qwen3.0, featuring Function Calling, MCP, Code Interpreter, RAG, Chrome extension, etc.项目地址: https://gitcode.com/GitHub_Trending/qw/Qwen-AgentQwen-Agent 内置doc_parser工具能把 PDF/Word 等文件变成可直接提问的文本块——上传一份文档模型就能引用它作答。下面用一份文档当例子把这条流水线的五个环节讲清楚。先看效果上传文件后直接提问效果长这样把一份 15 页的 PDF 论文丢给机器人问这篇论文的结论是什么它立刻给出有条理的回答。背后 Qwen-Agent 对文件做了提取、分块、存储、检索四件事模型才能引用文档作答。两个主力模块分别是 qwen_agent/tools/doc_parser.py解析与分块和 qwen_agent/tools/storage.py存盘与读取。 一份文件的一生从上传到被检索的五站上传/解析doc_parser接收一个url本地路径或 http 链接内部SimpleDocParser按页读成结构化内容每段都带 token 数文档标题也会被提取出来。大小判断先统计全文 token 总数小于等于max_ref_token就整篇作为一个 chunk否则进入分块。分块split_doc_to_chunk按页按段装载直到 chunk 的 token 预算由parser_page_size决定装不下为止装不下的段落先按句子切.或。单句仍超长则按 tokenizer 精确切到预算大小。存储分块结果序列化成 JSON由Storage以一个 key 一个文件的方式落盘根目录默认是workspace/tools/storage。被检索提问时 agent 再次调用doc_parser缓存命中则直接拿到 chunks进入召回与回答。关键机制深拆两个值得记住的设计自适应分块按 token 预算切。分块像把长文切成模型能消化的段落分不分块的入口判断只有if/else这么长if total_token max_ref_token: # 整篇装得下一个 chunk 就够 content [Chunk(contentget_plain_doc(doc), metadata{source: url, title: title, chunk_id: 0}, tokentotal_token)] else: content self.split_doc_to_chunk(doc, url, titletitle, parser_page_sizeparser_page_size)为什么这样设计小文件切开反而引入边界损耗大文件整篇塞给模型会超窗口。阈值即 qwen_agent/settings.py 中的DEFAULT_MAX_REF_TOKEN默认 20000也就是给 RAG 材料预留的窗口。哈希键缓存一次解析永久复用。缓存键是f{hash_sha256(url)}_{str(parser_page_size)}同一文件 同一分块参数 同一 key未分块时后缀为_without_chunking。call前先get(key)命中直接返回未命中才解析并put保存。这解决的是多轮问答中同一份参考文档被反复解析的问题副作用是改parser_page_size会生成新缓存两份结果互不覆盖。另有细节一个 chunk 装满时_get_last_part会从末尾最多取 150 个字符作为下一个 chunk 的开头避免接缝处语义断裂。上手速查三步跑起文档问答git clone https://gitcode.com/GitHub_Trending/qw/Qwen-Agent获取代码。设置DASHSCOPE_API_KEY环境变量后运行 examples/parallel_doc_qa.py打开多文档问答页面支持 PDF/Word/PPT/TXT/HTML。或者python run_server.py -k 你的key一条命令拉起 assistant/workstation/database 三个服务浏览器里就能上传文件提问。参数调优表参数默认行为何时调整max_ref_token库默认 20000run_server.py的-t默认 4000模型窗口大就调大以减少 chunk 数窗口紧张就调小parser_page_size500每个 chunk 不超过 500 token长句、表格多可调大追求召回粒度可调小storage_root_path存放在workspace/tools/storage知识库变大时挪到读写性能好的磁盘QWEN_AGENT_DEFAULT_MAX_REF_TOKEN等环境变量不改代码覆盖库默认值部署时全局统一配置靠token 预算分块 哈希键缓存这两招文档解析成了可复用、可重复的低成本流水线模型拿到的 RAG 材料既可控也有据可查。顺着这条线你完全可以接入更进阶的检索与重排策略来提升召回质量更多细节参见官方文档。【免费下载链接】Qwen-AgentAgent framework and applications built upon Qwen3.0, featuring Function Calling, MCP, Code Interpreter, RAG, Chrome extension, etc.项目地址: https://gitcode.com/GitHub_Trending/qw/Qwen-Agent创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

读完文章,也想定制专属网站?

尧图设计师 24 小时内与您沟通定制方案

免费获取报价