不上传一份文档到云端:5 分钟搭好本地文档问答
【免费下载链接】gpt4allGPT4All: Run Local LLMs on Any Device. Open-source and available for commercial use.项目地址: https://gitcode.com/GitHub_Trending/gp/gpt4all
你手里有份三十页的合同 PDF,想让 AI 帮你划重点,但又不想把文件传到任何服务器上。GPT4All 的 LocalDocs 功能就是干这个的:把本地文件夹建成私有知识库,本地文档问答全程不离开你的电脑。
从零到第一次回答
打开 GPT4All 桌面端,点左侧导航里的 LocalDocs。先在右上角点 Add Collection,起个名字(比如"合同档案"),选中存放 PDF 的文件夹,点创建。接着系统开始后台干活:逐份提取文件文本,再用本地嵌入模型把每个片段转成向量存进数据库。集合页面会实时显示进度,状态变成 Ready 就代表全部就绪——其实索引跑到一半,已处理完的文件就已经可以提问了。最后在新聊天窗口点右上角的 LocalDocs 按钮,勾选你刚建的集合,现在问一句"合同里乙方有哪些主要义务",回答就会基于那些文件生成,答案下方点 Sources 还能看到它引用了哪些原文片段。
它到底在本地做了什么
流程不复杂:索引时把文本切成几百字的片段,每个片段转成向量存进本地数据库;提问时,你的问题同样向量化,系统按向量距离找出库里最相关的几个片段,塞进提示词里,本地大模型只"看到"这些片段就作答。全程没有一个字节出外网。就像图书馆管理员给整馆书编好了索引卡片——查资料不用通读全书,翻到卡片指的几页就够了。
让它更准、更快
参数都在 Settings 里的 LocalDocs 页面,真正值得调的是这几个:
- Document snippet size(默认 512 字符):每个切片的长度。调大后上下文更完整,但小模型容易被撑爆上下文窗口,生成也会变慢;
- Max document snippets per prompt(默认 3):每次提问最多塞几个片段。回答含糊、漏内容时,先试着加到 5~6;
- Embeddings Device:默认用 CPU 跑嵌入,机器有 CUDA 显卡就切到 GPU,大集合索引速度明显提升。
注意这两个数字会相乘吃掉上下文窗口,都拉满等于必然翻车,拿不准就保持默认。
卡住了?看这里
现象:回答里完全没有文档内容。原因:聊天窗口没勾选集合——建好集合不等于它对每次聊天生效。动作:打开右上角 LocalDocs 面板,把目标集合勾上,再重新提问。
现象:索引长时间停在同一百分比,或集合提示数据库错误。原因:常见是磁盘空间不足,或对该文件夹没有读取权限。动作:确认磁盘剩余空间和文件夹读权限;还不行就把集合删掉重新添加。
回到开头那份合同 PDF:集合 Ready 之后,断网也能对它提问,每个回答都能溯源到具体文件。用下来效果不理想,先调上面两个参数;想弄清检索的底层逻辑,可以直接看 localdocs.cpp 和 LocalDocs 帮助文档。
【免费下载链接】gpt4allGPT4All: Run Local LLMs on Any Device. Open-source and available for commercial use.项目地址: https://gitcode.com/GitHub_Trending/gp/gpt4all
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考