最近收到读者后台留言,他上传了一本几百页的电子书,问DeepSeek,但是显示 只能处理前30% ,问我如何解决,截图如下所示: 今天这篇文章来探讨大家普遍遇到的这个问题,经过我至少二十次的实验,终于摸索出了一个不错的解决方法,本文提供完整复现教程,感兴趣的可以看看。 3)不需要自己写一行代码,对不会编程的朋友也很友好。 接下来分享这个智能体,大家能直接在自己电脑上也能用上,更好的帮助大家提升工作和学习效率。 基于DeepSeek-R1,下面是做的这个智能体,起名为:吞书智能体,如下所示: 使用Sutton编写的《强化学习》这本书,作为测试,如下所示: 导入吞书智能体后,处理过程,如下GIF图所示,受限于公众号GIF图帧数限制,一个GIF只能展示几帧: 第二个GIF展示了,吞书智能体理解了第一章后,自动开始处理第二章: 吞书智能体前后处理大概10分钟,便能精细化的理解全书15个章节,自动生成如下总结html网页,如下是前几章的章节摘要总结GIF展示: 「吞书智能体」会 自动生成 十五个章节总结txt文件,如下所示: 接下来跟大家介绍「吞书智能体」详细制作步骤,大家 根据我的步骤就可以在自己的电脑,完整复现出这个智能体。 在制作 吞书智能体时,我尝试过Vscode, Claude, Trae, 发现Trae是对MCP智能体支持最好、且对智能体编排做了深度优化,字节开发的,免费使用: 第一步,获取软件并安装在本地,安装步骤很简单,都是下一步,不再赘述。 内置模型,如Doubao-1.5-pro, DeepSeek-R1等,可以免费使用: 第二步,本地电脑新建一个文件夹,直接使用Trae打开此文件夹,然后右下角选择DeepSeek-R1,再 点击@智能体: 弹出下面界面,依次按照1,2,3顺序,前两项如下填写,其中2是最关键的一项,这些提示词是智能体执行编排流程, 直接关系到智能体是否精准工作: 完整提示词我放在下面文本框里,这个提示词我迭代了不下20次,现在分享给大家: # PDF章节提取与总结自动化处理 ## 初始设置 1. 使用PDF阅读器工具读取目标PDF文件的目录索引(通常位于前10页) ## 目录索引处理 2. 使用文件系统工具创建book_index.txt文件 3. 将每章的【起始页码,终止页码】信息提取并按格式写入book_index.txt - 格式示例:第1章,10,25 ## 章节处理循环 4. 从第1章开始,执行以下步骤直到所有章节处理完毕: a. 读取book_index.txt获取当前章节[i]的起始页码和终止页码 b. 使用PDF阅读器工具,传入页码范围参数读取章节[i]的完整内容 c. 分析章节[i]内容,提取关键要点并按条目列出(确保不遗漏重要信息) d. 使用文件系统工具创建chapter[i]_summary.txt文件 e. 将章节[i]的要点总结写入chapter[i]_summary.txt f. 明确输出处理进度:'已完成第[i]章处理,准备处理第[i+1]章' ## 汇总与展示 5. 检查是否所有章节均已处理完毕 6. 按章节顺序读取并合并所有chapter[i]_summary.txt文件内容 7. 将合并内容写入summary_results.txt 8. 将summary_results.txt内容转换为响应式HTML网页 - 实现精美布局与样式 - 添加目录导航功能 - 确保在移动设备上有良好显示效果 本次主要用到pdf-reader,点击如下图所示的「添加」按钮: 这 进入下面界面,点击「手动配置」: 弹出下面界面,大家把下面JSON串直接复制过来就行: { 'mcpServers': { 'pdf-reader': { 'command': '/Users/zhenguo/anaconda3/envs/mcp/bin/python', 'args': [ '/Users/zhenguo/Documents/code/mcp-pdf-reader/pdf_server.py' ] } } } 然后点击确认,再点击箭头所示的刷新图标,刷新后应该会报错,因为此时你还没有在指定目录配置上代码文件,大家也要记得修改上面的JSON串为你自己本地的文件目录: 等配置代码文件和目录正确后,刷新正确后,就会看到pdf-reader,因为支持MCP协议,所以能够无缝集成到Trae里面,并且看到里面有三个工具:read_pdf_text, read_by_orc, read_pdf_images. DeepSeek为啥不原生支持一次吞下500页的书,难点在哪里?根本原因在于: 1)模型输入长度受限,超长文本无法一次塞进 Transformer 结构; 2) 即便能塞下,注意力计算复杂度是 O(n²),文本越长,计算和显存开销爆炸增长,现有硬件难以承受。 有些读者可能听说过,有些大模型号称能够处理100万,200万的上下文Token ,其实也不是真正实现了无损精度的上下文,他们都采用了各种优化,如稀疏注意力,分块,局部聚焦等,实际精度会打折扣,如下图所示: 所以可能不如咱们针对自己的具体需求,使用智能体定制,比如本文使用Trae里构建智能体及流程优化,比较方便的就能实现逐章节提炼摘要总结,每个章节的上下文目前基本不会超过主流大模型长度,比如R1的128K上下文。 因此,文中解决方案通过多智能体协作,实现了对一本书每章摘要总结,具备如下能力: 1)精度无损的实现了对完整一本书每章的摘要总结,分析每章并把结果写入到指定文件,注意这些文件都是智能体自动保存出来的: 2)自动提取每个章节的起始、终止页码,如下图所示: 3)具备很好的可扩展性,哪怕一本书1000页,也能应对。 当然文中方案,也不是完美的。在中间执行流程中,会出现模型思考次数已达上限,输入继续后才能再走下去,需要手工配合输入:继续,如下图所示: 本文解决了大家普遍面临的一个难题,就是大模型无法直接高精度的分析总结一整本书的问题。 文中方案一句话总结:使用Trae+多智能体协作+分章节编排提示词,相对较好的解决了整本书精准总结问题。 Trae软件使用免费,除了通过@方便接入智能体外,还有#某个文档,直接接入本地文档,使用还是挺方便的。
|