文件与检索用于控制文件上传、内容提取、OCR、全文注入、向量化检索、语义增强、RAG 和上下文压缩增强。它决定用户上传文件后能否被预览、提取、检索并进入对话上下文。
使用入口#
进入管理端后打开“文件与检索”。页面按上传限制、内容提取、全文注入、向量化检索、语义增强、RAG 和上下文压缩增强分组。
这些设置会影响所有用户的后续文件处理。修改前应确认存储、提取服务、Embedding 服务和任务模型都可用。
各类上传、提取、全文注入、向量化、RAG 和压缩参数的完整说明,见 文件与检索进阶。
上传限制#
上传限制用于控制单条消息附件数量、默认文件大小上限、用户存储配额、MIME 白名单,以及图片和文档的单独大小上限。
MIME 白名单决定用户能上传哪些文件类型。大小上限和用户配额用于保护存储成本和处理资源。设置过严会影响用户上传体验,设置过松会带来存储和解析压力。
内容提取#
内容提取决定文档、PDF、表格、演示文稿、代码和文本如何提取内容。平台可以接入 Tika、Docling、MinerU、Tesseract OCR、RapidOCR、PaddleOCR、腾讯云 OCR、阿里云 OCR 和 LLM OCR 等能力。
不同服务适合不同文件类型。Tika 适合通用文档文本提取;OCR 适合扫描件和图片文字;Docling 或 MinerU 更适合复杂文档解析。管理员可以测试连接,确认服务地址和凭据可用。
全文注入#
全文注入用于把文件内容直接放入对话上下文。它适合小文件、精确审阅、合同条款检查、代码片段分析等场景。
管理员可以限制全文注入的文本大小、Token 上限和 PDF 页数。开启限制可以避免超大文件挤占上下文,关闭限制则更依赖模型上下文容量和用户自觉。
向量化检索#
向量化检索用于把文件内容转换为向量索引,让模型按问题召回相关片段。它适合大文件、多文件和知识库式问答。
配置 Embedding 时,需要启用服务、填写服务地址、请求模型和相关参数。Embedding 模型变更后,旧向量会被标记为失效,需要在索引状态中执行重建索引。
向量索引状态#
向量索引状态会显示当前签名、就绪、失效、待处理、失败和空状态。当检测到失效向量时,应点击“重建索引”。
重建索引会提交后台任务异步执行。文件数量较多时,重建可能需要较长时间。重建期间,部分文件检索结果可能不完整。
语义增强和 RAG#
语义增强用于让系统在会话中召回更相关的历史消息或文件内容。RAG 设置决定检索片段数量、召回策略、证据使用和上下文拼接方式。
开启语义增强前,需要先启用消息向量化。RAG 适合资料较多、问题需要跨文件查找或希望降低全文注入成本的场景。
上下文压缩增强#
上下文压缩增强用于长对话或大资料场景。它可以在上下文接近限制时压缩早期内容,减少当前回复链路阻塞,并尽量保留关键信息。
压缩模型可以跟随当前模型,也可以指定专用任务模型。建议选择稳定、成本可控且擅长总结的模型。
使用建议#
先配置上传限制和基础提取,再开启 OCR、Embedding 和 RAG。小文件优先全文注入,大文件优先向量检索。修改 Embedding 模型后及时重建索引;开放新文件类型前,先用样例文件验证提取和预览效果。
配置项对照#
文件与检索页由 storage.*、file.*、extract.* 和部分 chat.* 配置共同组成。
| 分组 | 配置键 |
|---|---|
| 上传限制 | 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_auth_token、extract.mineru_timeout_seconds |
| OCR | extract.image_ocr_enabled、extract.pdf_ocr_fallback_enabled、extract.ocr_engine 以及各 OCR 引擎的地址、密钥、区域、端点、超时和提示词字段。 |
| 全文注入 | 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_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 |
其中 Embedding 服务就绪条件依赖 file.embedding_enabled、file.embedding_host 和 file.rag_model;RAG 相关参数只有在 Embedding 就绪且 chat.rag_enabled 开启后才会完整生效。