上一篇我们刚刚讲完,LangChain入门最值得先学的3个核心组件就是:PromptTemplate,OutputParser,Chain.但是如果你真的开始做知识库项目,很快就会发现:**掌握几个组件,并不等于已经把RAG系统组织好了。因为很多人做RAG的真实状态,并不是“不会”,而是“会一点,但是越做越乱”。最初的时候,你可能只想做一个简单的知识库问答:用户提出问题查找一些相关的资料将资料拼接到Prompt中调整模型回答好像也没有几步的样子。于是就有很多人直接开始动手了:先查向量库,然后拼接出一个很长的字符串,再调用模型进行处理,并把结果返回。第一次跑通的时候成就感很强但是项目往前走两步的时候,问题就出现了:检索策略是否需要调整?上下文拼接是否要统一?Prompt模板是否需要根据场景进行区分?来源信息如何回传给前端?是否需要进行结构化处理?后面要不要加query改写、rerank日志缓存评估?这时候你就会突然发现:RAG真正难的地方,并不是检索和生成这两个字,而是如何把这条链路组织成一个可以持续扩展、维护更新并且不断演进的系统。这也是为什么我一直强调:RAG不应该只是零散拼接。零散拼接的代码可以帮你把Demo做出来;但是只有工程化的组织才能让你的知识库系统真