文件与检索决定所有用户的文件链路:上传限制、内容提取、OCR、全文注入、向量化检索、语义增强和 RAG。它决定上传的文件能否预览、建立索引并进入对话上下文。
使用入口#
打开 管理端 → 文件与检索。页面包含六个区域,每个区域都有独立的保存按钮:
- 上传限制
- 内容提取
- 全文注入
- 向量化检索
- 语义增强
- RAG
这些是平台级设置,只影响修改之后处理的文件。已经提取或建立索引的文件保持原状态,除非重建索引。
完整链路是:上传 → 文本提取 → 需要时执行 OCR → 全文注入,或分片并向量化 → 向量索引 → RAG 召回注入上下文。语义增强在同一套 Embedding 服务上增加消息向量。建议先配置上传限制和提取,再配置 Embedding,然后开启 RAG。
上传限制#
打开上传限制。
| 字段 | 默认值 | 说明 |
|---|---|---|
| 附件数量上限 | — | 单条对话消息可携带的附件数量上限。 |
| 附件 MIME 白名单 | — | 允许上传的附件 MIME 类型,多个值使用逗号分隔。 |
| 默认大小上限 | — | 单个附件的默认大小上限,页面单位为 MB。 |
| 用户存储配额 | — | 每位用户可占用的文件总存储空间,单位 MB;设置为 0 表示不限制。 |
| 图像大小上限 | — | 单独覆盖图像附件的大小上限,单位 MB;留空时回退到默认附件大小上限。 |
| 文档大小上限 | — | 单独覆盖文档附件的大小上限,单位 MB;留空时回退到默认附件大小上限。 |
MIME 白名单决定用户可上传的文件类型,应与启用的提取引擎保持一致。使用 MinerU 时,如果白名单缺少所选 MinerU 文件类型所需的 MIME,页面会提示,并提供补充并保存缺失 MIME。
内容提取#
打开内容提取。该区域选择主链路提取引擎和共享 OCR 引擎。
提取引擎#
| 引擎 | 适用场景 |
|---|---|
| 内置 | 本地提取常见文档、代码和文本文件。 |
| Tika | 通过 Apache Tika 服务做通用文档文本提取。 |
| Docling | 通过 Docling 服务做结构化文档解析。 |
| MinerU | 通过 MinerU 云服务或自部署服务解析 PDF、Word、PowerPoint 和 Excel。 |
选择引擎后会展开对应配置。每个外部服务都有地址、可选鉴权密钥和超时时间。点击测试连接可检查地址和凭据;该区域有未保存改动时按钮不可用。
| 引擎 | 字段 |
|---|---|
| Tika | Tika 服务地址(必填)、Tika 鉴权密钥、Tika 超时时间(默认 60)。 |
| Docling | Docling 服务地址(必填)、Docling 鉴权密钥、Docling 超时时间(默认 60)。 |
| MinerU | MinerU 服务类型(云服务或自部署)、MinerU 服务地址(必填)、MinerU 文件类型(PDF、Word、PowerPoint、Excel)、MinerU 鉴权密钥、MinerU 超时时间(默认 180)。 |
MinerU 默认选择 PDF、Word 和 PowerPoint。自部署 MinerU 在这些类别中只接受 DOCX、PPTX 和 XLSX,云服务还接受旧版 DOC、PPT 和 XLS。默认地址为云服务 https://mineru.net/api/v4、自部署 http://127.0.0.1:8000。
所选引擎缺少服务地址时无法保存:
- Tika 服务地址不能为空。
- Docling 服务地址不能为空。
- MinerU 服务地址不能为空。
OCR 启用范围#
| 开关 | 行为 |
|---|---|
| 图片 OCR | 将图片附件送入 OCR 链路,并生成可用于检索的文本。 |
| PDF OCR 回退 | PDF 原生文本提取失败或质量较差时启用 OCR 回退识别。 |
任一开关开启后显示 OCR 引擎字段。
OCR 引擎#
| 引擎 | 必填字段 |
|---|---|
| Rapid OCR | Rapid OCR 服务地址、可选鉴权密钥、超时时间(默认 60)。 |
| Tesseract OCR | Tesseract OCR 服务地址、可选鉴权密钥、超时时间(默认 60)。 |
| Paddle OCR | Paddle OCR 服务地址、可选鉴权密钥、超时时间(默认 60)。 |
| 腾讯云 OCR | 腾讯云 SecretId、SecretKey、地域(默认 ap-guangzhou);接入点默认 ocr.tencentcloudapi.com;超时默认 60。 |
| 阿里云 OCR | 阿里云 AccessKey ID、AccessKey Secret、地域(默认 cn-hangzhou);接入点默认 ocr-api.cn-hangzhou.aliyuncs.com;超时默认 60。 |
| Mistral OCR | Mistral OCR 服务地址(默认 https://api.mistral.ai/v1/ocr)、API Key、请求模型(默认 mistral-ocr-latest),超时默认 60。 |
| LLM OCR | LLM OCR 服务地址、可选鉴权密钥、请求模型,超时默认 60,可选提示词。 |
校验提示与所选引擎对应,例如 Tesseract OCR 服务地址不能为空。、腾讯云 OCR 的 SecretId、SecretKey 和地域不能为空。、Mistral OCR API Key 不能为空。、LLM OCR 请求模型不能为空。
全文注入#
打开全文注入。全文注入把提取出的文本直接放进对话上下文,而不走片段召回。
| 字段 | 说明 |
|---|---|
| 全文注入限制 | 开启后按大小、Token 和 PDF 页数限制全文注入;关闭后不再限制。默认开启。 |
| 全文大小上限 | 允许注入的最大提取文本大小,单位 MB;留空或填 0 表示不限制大小。开启限制后显示。 |
| 全文 Token 上限 | 允许注入的最大 Token 预算;留空或填 0 表示不限制 Token。开启限制后显示。 |
| 全文页数上限 | PDF 走全文注入时允许的最大页数;留空或填 0 表示不限制页数。开启限制后显示。 |
文件较小、需要精确引用原文时使用全文注入。文件较大或数量较多时,改用向量化检索和 RAG。
向量化检索#
打开向量化检索。该区域配置把文件内容转成向量的外部 Embedding 服务。
| 字段 | 默认值 | 说明 |
|---|---|---|
| 启用 Embedding | 关闭 | 启用文件向量化和向量检索能力;关闭后相关链路停用。 |
| Embedding 服务地址 | — | 开启 Embedding 时必填。服务需兼容 OpenAI /embeddings 接口。 |
| Embedding 鉴权密钥 | — | 调用 Embedding 服务时使用的鉴权密钥。 |
| Embedding 模型 | — | 开启 Embedding 时必填。用于指定向量化所使用的模型名称。 |
| Embedding 超时 | 60 | 单次 Embedding API 请求的最长等待时间,单位秒。 |
| 向量维度 | 1536 | 写库和检索统一使用的向量维度。 |
| 维度参数策略 | 携带 | 请求是否携带 dimensions 参数。服务不接受时选择不携带。 |
| 归一化向量 | 开启 | 存储和检索前对向量执行归一化。 |
| 自动向量化 | 开启 | 文件上传完成后立即异步触发 Embedding。 |
| 批次大小 | 20 | 单次 Embedding API 请求携带的文本数量。 |
| 分片大小 | 1024 | 文档向量化时的分片大小,按 Token 估算。 |
| 分片重叠 | 64 | 相邻分片之间的 Token 重叠量。 |
向量维度必须与模型输出一致。服务拒绝 dimensions 参数时,把策略改为不携带;返回的向量仍会按配置的维度校验。修改 Embedding 模型或向量维度会把已有向量标记为失效。
向量索引状态#
开启 Embedding 后,该区域显示向量索引状态,包含当前模型签名,以及就绪、失效、待处理、无文本、失败的数量。检测到失效向量时会提示:检测到失效向量,请点击「重建索引」以恢复检索能力。
- 重建索引提交后台重建任务,只处理需要处理的文件。
- 存在无文本文件时会出现重建含无文本文件,把这些文件一并纳入重建。
- 首次保存配置后会自动计算签名;在此之前显示尚未生成签名(首次保存配置后自动计算)。
重建在后台执行。文件较多时需要时间,重建完成前部分文件的检索结果可能不完整。
语义增强#
打开语义增强。该区域用同一套 Embedding 服务召回相关历史消息。
| 字段 | 行为 |
|---|---|
| 消息向量化 | 每轮对话完成后异步生成消息向量,依赖可用的 Embedding 服务。 |
| 语义上下文召回 | 发送消息时自动召回历史相关片段并注入上下文,依赖消息向量数据可用。 |
在 Embedding 开启且服务地址、模型都已填写前,两个开关都会被拒绝:请先在「向量化检索」中开启并配置 Embedding 服务地址和请求模型。 未开启消息向量化就打开语义上下文召回,会提示请先开启消息向量化。
RAG#
打开 RAG。该区域控制召回和片段注入方式。
| 字段 | 默认值 | 说明 |
|---|---|---|
| RAG 开关 | 关闭 | 允许文件进入检索增强链路,依赖可用的 Embedding 服务。 |
| 召回片段数 | 5 | RAG 最终返回并参与注入的片段数量。 |
| 相似度阈值 | 0.45 | 片段注入的最低相似度阈值。 |
| 注入 Token 预算 | 2000 | 检索片段注入上下文时可占用的 Token 预算。 |
| 抓取倍数 | 3 | 系统先抓取更多候选结果,再执行二次筛选。 |
| 就绪等待时长 | 3000 | 发送请求时等待向量化结果就绪的最长时间,单位毫秒。 |
| 历史拼接轮次 | 0 | 生成检索查询时可额外带入的最近用户轮次数量。 |
| 检索缓存时长 | 120 | RAG 检索结果缓存时长,单位秒。 |
| 混合检索(BM25+向量) | 关闭 | 并行执行向量检索和全文检索,并使用 RRF 合并结果。 |
Embedding 就绪前无法开启 RAG:请先在「向量化检索」中开启并配置 Embedding 服务地址和请求模型。 RAG 开关之后的字段,仅在 RAG 开启且 Embedding 就绪时显示。
文件证据的保留属于上下文压缩,不在此页配置。证据保留天数位于会话配置的“上下文管理”区域,见会话配置。
配置项对照#
| 分组 | 配置键 |
|---|---|
| 上传限制 | storage.max_message_files、file.allowed_mime_types、storage.max_upload_file_bytes、storage.user_storage_quota_bytes、file.image_max_bytes、file.doc_max_bytes |
| 内容提取 | extract.engine、extract.tika_base_url、extract.tika_auth_token、extract.tika_timeout_seconds、extract.docling_base_url、extract.docling_auth_token、extract.docling_timeout_seconds、extract.mineru_source、extract.mineru_base_url、extract.mineru_file_types、extract.mineru_auth_token、extract.mineru_timeout_seconds |
| OCR 启用范围 | extract.image_ocr_enabled、extract.pdf_ocr_fallback_enabled、extract.ocr_engine |
| OCR 引擎 | extract.rapidocr_base_url、extract.rapidocr_auth_token、extract.rapidocr_timeout_seconds、extract.tesseract_ocr_base_url、extract.tesseract_ocr_auth_token、extract.tesseract_ocr_timeout_seconds、extract.paddle_ocr_base_url、extract.paddle_ocr_auth_token、extract.paddle_ocr_timeout_seconds、extract.tencent_ocr_secret_id、extract.tencent_ocr_secret_key、extract.tencent_ocr_region、extract.tencent_ocr_endpoint、extract.tencent_ocr_timeout_seconds、extract.aliyun_ocr_access_key_id、extract.aliyun_ocr_access_key_secret、extract.aliyun_ocr_region、extract.aliyun_ocr_endpoint、extract.aliyun_ocr_timeout_seconds、extract.mistral_ocr_base_url、extract.mistral_ocr_auth_token、extract.mistral_ocr_model、extract.mistral_ocr_timeout_seconds、extract.llm_ocr_base_url、extract.llm_ocr_auth_token、extract.llm_ocr_model、extract.llm_ocr_timeout_seconds、extract.llm_ocr_prompt |
| 全文注入 | file.full_context_limit_enabled、file.file_full_context_max_bytes、file.full_context_max_tokens、file.full_context_pdf_max_pages |
| 向量化检索 | file.embedding_enabled、file.embedding_host、file.embedding_key、file.rag_model、file.embedding_timeout_seconds、file.embedding_output_dimensions、file.embedding_dimensions_policy、file.embedding_normalize、file.embed_trigger_on_upload、file.embed_batch_size、file.embed_chunk_size_tokens、file.embed_chunk_overlap_tokens |
| 语义增强 | chat.message_embedding_enabled、chat.semantic_context_enabled |
| RAG | chat.rag_enabled、file.rag_top_k、chat.rag_min_similarity、chat.rag_token_budget、chat.rag_fetch_multiplier、chat.rag_wait_ready_ms、chat.rag_query_history_turns、chat.rag_retrieval_cache_ttl_seconds、chat.rag_hybrid_enabled |
常见问题#
- RAG 或语义增强无法开启。 Embedding 必须已开启并填写服务地址和模型。语义上下文召回还需要先开启消息向量化。
- 更换模型后检索质量下降。 已有向量已失效。打开向量索引状态,点击重建索引。
- 文件没有可检索文本。 状态显示无文本。文件仍可通过全文注入使用,但不参与索引。只有确认提取应产出文本时,才使用重建含无文本文件。
- 服务测试失败。 检查服务地址、凭据,并确认该区域没有未保存改动。字段有改动时测试连接不可用。
- MinerU 收不到某类文件。 MIME 白名单缺少该格式。按提示补充缺失 MIME,或手动添加。
- 上传被拒绝。 检查 MIME 白名单、默认大小上限、图像 / 文档单独上限和用户存储配额。