企业做知识库问答,最容易犯的错是先讨论"用哪个模型",然后马上开始上传文档。
模型当然重要,但知识库问答真正影响效果的,通常不是模型名字,而是这几件事:文档怎么切、检索怎么召回、权限怎么过滤、上下文怎么压缩、回答怎么引用来源。
OpenAI 现在把 File Search 放在工具链里,配合 Responses API 可以很快做出一个"上传文件、检索片段、生成回答"的流程。GitHub 上围绕 RAG 的讨论则更偏工程化:chunking、embedding、rerank、eval、权限过滤、缓存和监控。两边看起来像两条路,其实适合不同阶段。
1. 先把链路拆开
一个能上线的企业知识库问答,至少有六段链路。
第一段是文档进入系统。企业文档来源很杂:PDF、Word、飞书/钉钉文档、网页、数据库记录、客服工单、产品手册、代码仓库 README。不能默认所有文档都适合直接上传。扫描件要 OCR,表格要保留结构,过期制度要打标,重复文档要合并。
第二段是切片。切片太短,模型只看到碎句;切片太长,召回成本和噪声都会上升。常见做法是按标题、段落、列表、表格边界切,而不是固定每 500 字切一刀。技术文档还要保留代码块、接口字段和上下级标题。
第三段是向量化和索引。File Search 会帮你处理一部分索引工作,自建 RAG 则通常会用独立向量库或搜索引擎。这里的关键不是"有没有向量库",而是索引里有没有足够的元数据,比如部门、权限级别、文档版本、生效时间、产品线、语言。
第四段是检索。只做向量召回往往不够。企业知识库里有大量专有名词、编号、表单字段、版本号,关键词检索仍然有价值。更稳的方案是混合检索:关键词先兜住精确词,向量检索补语义相似,再用 rerank 排序。
第五段是组装上下文。不要把召回结果原样塞给 GPT-5.5。应该先去重、按证据强弱排序、裁剪过长片段,并要求模型引用来源。对客服、财务、法务这类场景,最好把"没有依据就拒答"写进系统提示。
第六段是答案后处理。企业场景需要记录回答来源、命中文档、模型版本、token 消耗、用户反馈。没有这些日志,后面很难优化。
2. File Search 适合什么场景
File Search 的优势是接入快。你不需要先搭一整套向量库、解析服务和索引服务,就可以把文件问答跑起来。对早期 POC、内部小范围试点、文档规模不大、权限边界简单的团队,它很合适。
比如一个研发团队想让 GPT-5.5 回答内部 SDK 使用说明,文档来源固定,更新频率不高,读者也都是同一个团队。这个时候先用 File Search 做出原型,比从第一天就设计复杂 RAG 平台更务实。
File Search 还适合验证问题本身是否成立。有些公司以为自己缺一个知识库机器人,试完才发现真正的问题是文档过期、标题混乱、制度版本冲突。先用 File Search 跑一轮,可以很快暴露这些脏数据问题。
但 File Search 也不是万能方案。只要出现下面几类需求,就要考虑自建 RAG 或混合架构:
- 文档权限复杂,不同用户只能看不同部门、项目、客户的数据。
- 文档更新频率很高,需要分钟级同步、删除、重建索引。
- 需要接入数据库、工单系统、CRM、代码仓库等非文件数据。
- 检索策略要自己控制,比如混合检索、rerank、多路召回、业务规则加权。
- 需要完整审计链路,知道某个回答为什么引用了某段内容。
3. 自建 RAG 适合什么场景
自建 RAG 的价值在"可控"。你可以控制文档解析、切片策略、embedding 模型、向量库、关键词索引、rerank 模型、权限过滤和缓存策略。
企业知识库一旦进入生产,权限通常会变成硬问题。HR 制度、合同模板、客户资料、售后工单、研发文档、财务政策不能混在一个无权限边界的索引里。检索时必须先过滤用户可见范围,再召回内容。否则模型回答得越准,风险越大。
自建 RAG 还能做更细的成本控制。比如:
- 高频制度问答先走缓存。
- 简单 FAQ 用低成本模型生成答案。
- 涉及跨文档推理的问题再交给 GPT-5.5。
- 代码、长合同、复杂表格分析可以路由给 Claude 4.7 或其他更适合长文档的模型。
- 离线批量摘要放到低峰时段执行。
这也是为什么 GitHub 上很多 RAG 项目不只关注"怎么调用模型",而是在讨论 evaluation、chunking、retrieval quality、observability。企业知识库不是 demo,召回错了,后面模型再强也只能把错证据说得更像真的。
4. Responses API 放在哪里
Responses API 更适合作为应用侧的统一入口。你可以把工具调用、文件检索、结构化输出、多轮上下文、流式响应放到同一条链路里管理。
一个简化流程可以这样设计:
text
用户问题
-> 鉴权,获取用户可见文档范围
-> 判断问题类型:FAQ / 文档问答 / 跨文档分析 / 人工转接
-> File Search 或自建 RAG 检索
-> 组装证据片段和系统提示
-> 调用 GPT-5.5 生成答案
-> 返回答案、引用来源、置信度和后续操作
-> 记录日志、token、命中文档、用户反馈
如果是 POC,可以先让 File Search 承担检索;如果进入生产,可以保留 Responses API 作为应用层入口,把检索换成自建 RAG。这样前端和业务逻辑不用频繁改。
5. 国内团队会遇到哪些限制
国内团队做 GPT 企业知识库,限制通常不在代码,而在接入和合规。
第一是网络可达性和稳定性。直接调用海外模型 API,延迟、丢包、超时都可能影响体验。知识库问答又很容易触发长上下文和多轮调用,稳定性比普通聊天更敏感。
第二是账号、支付和发票。企业采购不喜欢个人信用卡、外币结算、账单分散。财务要人民币结算、合同、发票、预算归集和部门分摊。
第三是数据边界。企业文档可能包含客户信息、合同条款、内部制度、源代码和业务流程。上线前要明确哪些数据允许进入外部模型,哪些只能脱敏,哪些必须留在内网。
第四是权限治理。知识库问答不是搜索框。用户问一句"某客户合同折扣是多少",系统必须先判断他有没有权限看相关合同。
第五是模型更新。GPT-5.5、Claude 4.7、Gemini 等模型能力会持续变化,企业不能把代码写死在单一模型上。更稳的做法是把模型调用封装成网关,应用只关心任务类型和服务等级。
6. token5u API 可以放在接入层
如果团队已经决定做 POC,但不想在第一周就被账号、网络、结算、多模型 SDK 拖住,可以把词元无忧 API(token5u API)放在模型接入层。
它更适合承担这几件事:OpenAI 兼容调用入口、多模型统一接入、人民币相关结算、专线优化、按量计费和账单管理。对知识库问答来说,这些能力不直接决定回答质量,但会决定系统能不能稳定试起来。
比较合理的用法是:业务侧仍然把权限、索引、日志掌握在自己手里;模型侧通过统一 API 网关调用 GPT-5.5、Claude 4.7 或其他模型。这样后续想做模型路由、成本对比、失败降级,会比每个模型单独接一套接口省事。
这不是说所有团队都必须用中转 API。能直接稳定接官方 API、合规和结算都能处理的团队,可以直连。token5u 这类方案的价值,是减少国内团队在接入层遇到的摩擦。
7. 我的选型建议
如果你还在验证需求,先用 File Search。别急着搭复杂 RAG 平台,先看看真实用户会问什么、文档是否干净、答案是否有业务价值。
如果你已经有明确生产场景,尤其涉及权限、审计、多数据源和高频更新,就直接按 RAG 架构设计。File Search 可以作为其中一个工具,但不要让它承载所有权限和索引治理。
如果你需要同时使用 GPT-5.5、Claude 4.7、Gemini 等模型,尽早做模型网关。知识库问答的成本不只来自单次生成,还来自检索、摘要、重试、缓存、评估和日志。等账单失控后再治理,会很被动。
一句话:File Search 解决"先跑起来",RAG 解决"可控地跑下去"。企业真正要选的不是一个名词,而是一条能长期维护的工程链路。