TextGen SuperboogaV2 扩展怎么用:安装依赖并让对话引用 PDF/DOCX/PPTX 文档
2026/9/10 22:51:30 网站建设 项目流程

TextGen SuperboogaV2 扩展怎么用:安装依赖并让对话引用 PDF/DOCX/PPTX 文档

【免费下载链接】textgenOpen-source desktop app for local LLMs. Text, vision, tool-calling, OpenAI/Anthropic-compatible API. 100% private.项目地址: https://gitcode.com/GitHub_Trending/te/textgen

本文的任务很具体:在 TextGen 中启用内置的 SuperboogaV2 扩展(一个基于 ChromaDB 的 RAG 扩展,支持 PDF、DOCX、PPTX 等文件),把你自己的文档喂给它,让模型在对话时自动引用这些文档中最相关的片段作为额外上下文。前提是你已经用完整安装(full installation)方式装好了 TextGen——按 README 的说明,扩展属于完整安装支持的场景,便携版只面向 GGUF(llama.cpp)模型,扩展、训练、图像生成都指向 Installation 章节;并且 UI 里已经放好了一个可用的模型(把 GGUF 文件放进user_data/models即可被自动检测)。

准备条件:进入 conda 环境

SuperboogaV2 的依赖要装进 TextGen 自己的 conda 环境里。在textgen根目录运行对应系统的cmd_脚本(cmd_windows.batcmd_linux.shcmd_macos.sh)即可启动该环境并获得一个交互式终端。这些脚本不需要管理员/root 权限。

安装 Python 依赖

cmd_脚本打开的终端中,从 textgen 根目录执行:

pip install -r extensions/superboogav2/requirements.txt

Windows 上路径分隔符要写成反斜杠:

pip install -r extensions\superboogav2\requirements.txt

这份 requirements.txt 列出了文本抽取所需的库,包括chromadbsentence_transformersPyMuPDF(PDF 抽取用)、python-docxpython-pptxpandasspacy等。如果扩展是你从 GitHub 上克隆安装的,Session Tab 文档提示同样用这条命令补装依赖;使用一键安装器的话,也可以走 update wizard 的 "Install/update extensions requirements" 选项(它最后会重装主项目依赖,保证主依赖优先于冲突的扩展依赖)。

在 Session 标签页启用扩展

打开 Web UI(完整安装默认地址http://127.0.0.1:7860),进入Session标签页:

  1. Available extensions列表中找到superboogav2并勾选。该列表展示textgen/extensionstextgen/user_data/extensions下的扩展,其中部分扩展需要按上一步手动安装 Python 依赖。
  2. 点击Apply flags/extensions and restart重启 UI,扩展随即加载。
  3. 可选:点击Save extensions settings to user_data/settings.yaml保存 UI 默认值,让设置在多次重启后保持(SuperboogaV2 的 README 里把这个按钮称作Save UI defaults to settings.yaml)。

不走 UI 的替代路径:扩展在启动时通过--extensions参数加载,可以直接python server.py --extensions superboogav2(见 Extensions 文档)。

在聊天界面加载 PDF/DOCX/PPTX 文档

启用后,在 Chat 标签页向下滚动就能看到 SuperboogaV2 界面。文档引用走的是File input页签:

  1. 在 "Input file" 文件框中选择文件,支持多选(file_count="multiple")。
  2. 点击Load data

处理进度会显示在右侧状态区:先是### Processing data...,完成后显示### Done.。支持的格式包括 TXT、PDF、EPUB、HTML、CSV、ODT/ODS/ODP、DOCX/PPTX/XLSX;PDF 用 MuPDF 抽取,DOCX 用 python-docx 按段落抽取,PPTX 用 python-pptx 按幻灯片形状抽取。

注意加载数据的行为是整体替换:每次加载新数据,旧的 chunks 都会被丢弃(扩展内置说明原文:"Each time you load some new data, the old chunks are discarded")。

验证对话是否引用了文档

文档被切分、清洗后作为 embeddings 存入本地 Chroma 数据库,并在对话期间持久保留。判断是否生效的方式是看模型输入侧发生了什么:

  • 每轮对话时,扩展会把数据库中最接近你当前输入的片段拼进本轮输入,格式如下(扩展内置说明的示例):

    Consider the excerpts below as additional context: ...

    这种注入只作用于当前这一轮生成,不会写进聊天历史。

  • 在 instruct 模式下上述引用生效;在 "Regular chat"(自定义角色对话)模式下,外部数据源被忽略,Chroma 数据库改由聊天历史构建,扩展退化为长期记忆。所以要用文档问答,请使用 instruct 模式。

  • 想清空已加载的文档,点击 SuperboogaV2 界面里的Clear Data按钮(状态区会显示### Data Cleared!),然后开一段新对话。

一个可以核对的异常现象:如果文件框为空就点 Load data,日志会给出No files selected.警告;某个文件所有抽取器都无法解析时,日志会报Failed to extract text from <文件名>, unsupported format.并跳过该文件。

限制与可调整项

  • 能塞进额外上下文的总量受你自己模型的 context window 限制(扩展 README 原话:文件提供时 "subject to the context window limit of your model")。Generation settings 里有Max Context Tokens一项用于给注入的上下文设 token 上限。
  • 文本抽取参数(chunk 长度、chunk 正则、上下文长度等)在 SuperboogaV2 界面的Settings页签的 "Processing settings" 中调整,Chunk lengthContext length以字符(而非 token)为单位,在点击 Load data 时生效。
  • 扩展自带 nltk 数据目录extensions/superboogav2/nltk_data,script.py 启动时会把NLTK_DATA指向它,通常不需要额外下载语料。
  • 界面还有 URL input(按行填多个 URL 抓取网页)和 Text input 页签,以及 Benchmark/Optimize 功能,属于同一扩展的其他入口,与本文"文件文档引用"的目标无关,可按需再看 SuperboogaV2 README。

完成以上步骤后,加载文档 → 状态区出现### Done.→ 在 instruct 模式下提问,模型输入里出现Consider the excerpts below as additional context:前缀,就说明文档引用链路已经打通。

【免费下载链接】textgenOpen-source desktop app for local LLMs. Text, vision, tool-calling, OpenAI/Anthropic-compatible API. 100% private.项目地址: https://gitcode.com/GitHub_Trending/te/textgen

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询