【AI智能体】Codex 制作RAG知识库应用实战操作详解
目录
一、前言
Codex 被誉为2026年最值得上手的 AI 工具,它不仅是一个编程 Agent,更是一个几乎可以替换掉任何对话工具的全能 AI。配合高性价比的定价机制和充足的 Token 额度,只要你能想到的场景,它都能帮你自动化完成。可以说,Codex 完美复刻了ChatGPT的模板,让普通的用户也能方便使用一款专属定制、性能强大的桌面版AI助手。
自从有了AI,知识库的使用就显得尤为重要,AI搭配知识库的使用可以让AI智能体充分发挥其价值,比如大家熟知的各类智能客服,传统方式下,不管是使用外部的知识库服务,还是自己从0到1搭建一个知识库都是耗时耗力的,现在就可以直接基于Codex 快速开发一个企业级的知识库,本篇将介绍如何基于Codex 完成一个知识库的应用搭建过程。
二、Codex 介绍
Codex 是 OpenAI 推出的一款AI 编程智能体。与简单的聊天机器人或代码补全工具不同,Codex 能够像一个真实的开发人员一样,独立理解复杂任务、操作你的电脑、编写并修改代码、运行终端命令,甚至自动修复bug。访问入口:https://openai.com/zh-Hans-CN/codex/?utm_source=Ai138.com

2.1 Codex 是什么
简单来说,可以把 Codex 看作一个“能帮你干活的AI工程师”。
-
它是“目标驱动”而非“指令驱动”:你只需告诉它最终的目标(例如:“帮我搭建一个带用户登录功能的网站”),它会自动拆解任务,规划步骤并执行,而不需要你一步步告诉它该怎么做。
-
它不只是一个聊天框:虽然你可以在ChatGPT网页版找到它,但它真正的威力在于桌面应用和命令行工具(CLI)。在这些地方,它可以直接访问你的文件系统、运行终端命令,甚至操作其他软件。
-
它的用户远超程序员:官方数据显示,Codex每周有超过300万用户,其中近一半(50%)的使用场景并非编码。从写周报、整理文档到数据分析,它都足以胜任。
2.2 Codex能做什么?
近期的重大更新让Codex的能力大幅跃升,使其不再局限于编程领域:
-
动打开软件、运行模拟器、发现问题、修改代码,并再次测试验证,完成一整套开发闭环。
-
所见即所得的开发(内置浏览器):Codex内置了一个浏览器。当你开发网页时,它可以直接在浏览器中展示效果。你可以直接在渲染出的网页上圈出问题,比如圈出一个标题并写上评论“字体太大,颜色改成蓝色”,Codex就能理解视觉和空间上下文,并精准地修改对应的代码。
-
“心跳”机制与长期记忆:
-
自动排班:你可以交付给它一个需要数小时甚至数周的长线任务。即使你关掉电脑,它也会在约定的时间点“自动醒来”,在后台继续工作。
-
记忆功能:它会记住你的编码偏好和纠正过的错误,下次再合作时,就不需要从头开始解释了。
-
-
强大的工具生态:Codex已经接入了超过90个插件,可以无缝连接JIRA、GitLab、Microsoft Suite、Slack、Gmail等常用工具。你可以让它去Notion里读文档、去邮箱里看邮件、去项目管理工具里筛选Bug,再把所有信息汇总成一份报告给你。
2.3 Codex 搭建知识库介绍
用 Codex 搭建知识库,本质上是将 AI 从被动的问答工具,转变为一个能帮你持续打理、整理和连接信息的"知识管理员"。它的核心方法,就是围绕一个本地的 Markdown 文件夹,通过明确的规则和技能(Skills),让 Codex 来负责知识的摄取、提炼和维护。
2.3.1 核心思路
整个搭建思路,是创建一个由 AI 辅助管理的"第二大脑":
-
数据完全由你掌控:所有知识都以 Markdown 文件形式存储在本地,你随时可以用任何编辑器打开、修改,数据隐私和安全性很高。
-
AI 是你的知识管家:Codex 可以读取和修改这个目录下的文件。你只需给它下达"把这篇资料归档"或"更新知识库"等指令,它便会自动执行。
-
规则驱动:在项目根目录下放一个
AGENTS.md文件,来定义目录结构、命名规范和维护流程。这样,Codex 每次操作都会遵循同一套标准,避免混乱。
2.3.2 具体操作流程
具体的操作路径很清晰,目前社区里主要有两种主流方式:
1)使用现成的知识库工具包(推荐新手)
这是最省事的方法,可以借助一些开源工具快速上手。以 kb-skills 这个工具包为例:
-
一键安装:在你的终端运行
npx @optima-chat/kb-skills@latest install,它会把需要的技能(Skills)自动安装到 Codex 的目录里。 -
一句话初始化:在 Codex 对话中直接说:"帮我把当前目录初始化成一个可长期维护的知识库"。Codex 就会自动为你创建好
AGENTS.md、raw/(存放原始资料)、wiki/(存放整理后的知识)等基本骨架。 -
日常使用流程:
-
摄入资料:把文章链接或文件发给 Codex,说:"把这份资料 ingest 进知识库"。
-
更新知识:说:"更新受影响的页面",Codex 就会将新资料与已有知识进行整合和关联。
-
提问:你可以直接基于这个不断生长的知识库提问,Codex 会优先从整理好的
wiki里找答案,效率更高。
-
2)手动打造更个性化的方案
如果你想更自由地控制知识库的结构,也可以手动设置。比如,可以结合 Obsidian 这款笔记软件来使用:
-
在 Obsidian 中打开你的知识库文件夹,利用它的双向链接和知识图谱功能,直观地看到知识之间的关联。
-
同时让 Codex 也"打开"这个文件夹,并遵循你定义好的
AGENTS.md规则来工作。这样,你就有了一个既拥有强大可视化界面,又有 AI 自动维护的"超强"知识库。
3)企业级知识库
这种需要对AI智能体的相关技术有一定的掌握,这种开发出来的知识库更符合企业自身的需求,不过要投入的资源以及后续维护的成本也会高很多。
三、RAG 前置介绍
3.1 什么是RAG?
RAG对应的就是检索 增强生成,RAG就是让AL回答问题之前,先去你准备好的资料里查一查,而传统 AI是凭自己记忆回答:RAG是先查你给它的资料,再根据资料回答。
比如用户问:
-
你们这个课程卖多少钱?
-
传统的AI回答:价格可能根据课程内容不同有所变化,建议咨询客服。
-
-
而RAG会先去你的知识库里找价格信息,然后回答:
-
根据知识库,基础班价格是1999元,进阶班价格是3999元,私教班需要人工确认。
-
所以客服智能体更适合用RAG,因为它回答的是企业自己的产品资料,不是AI自己猜。
3.2 为什么要使用RAG
使用过传统知识库的同学应该深有体会,从0到1搭建并使用一个知识库整个周期是非常长,如果是代码开发,可能会更加复杂,以使用开源软件作为知识库服务,搭建完成后,需要将文档等各类资料分门别类整理好,然后上传到知识库软件服务,创建索引,后续的维护等,这个过程下来,少则几个月,甚至大半年都有可能,而RAG则方便很多,只需要把各类资料,pdf,word,markdown等上传之后,即可马上测试看效果了。
3.3 适合RAG的一些场景
如果你也有下面这些场景,可以考虑使用RAG
-
客服问答
-
企业知识库
-
产品资料问答
-
FAQ 自动回复
-
售后政策查询
-
内部员工助手
-
销售话术辅助
-
课程学习助手
四、Codex 搭建RAG知识库过程
接下来通过实际操作演示下使用Codex 搭建一个知识库的完整过程。
4.1 前置准备
4.1.1 提前准备一些知识库语料
这些语料可以是日常业务中的销售话术,或者回复用户的业务标准流程说明等,如下,我这里提前准备了一份关于服务器相关的文档。

4.2 知识库搭建过程
4.2.1 准备知识库框架
我们可以让codex帮我们生成一个RAG的知识库框架,相当于是编写一个开发计划或方案,有了这份方案,指导Codex 进行后续具体的开发。
给到Codex的第一步提示词可以这样写:
请帮我创建一个最基础的RAG知识库演示项目。
项目目标:
用于教学演示,让用户理解RAG的基本原理:用户提问后,系统先从本地知识库中查找相关内容,再根据查到的内容进行回复。
技术要求:
1、使用 Node.js + Express
2、创建一个knowledge.txt 文件作为本地知识库
3、创建一个POST/ask接口
4、用户提交问题后,后端读取knowledge.txt
5、使用简单关键词匹配,从knowledge.txt 中查找相关内容
6、如果找到相关内容,就返回基于知识库的回答
7、如果找不到相关内容,就返回:知识库中暂时没有找到相关答窝,建议转人工客服处理
8、不需要前端页面
9、不需要数据库
10、不需要向量数据库
11、不需要真实 AI API
12、代码要简单,注释要清楚,适合新手学习
项目文件结构:
basic-rag-demo/
|--- package.json
|--- server.js
|--- knowledge.txt
|--- README.md
关于项目文件目录说明:
-
basic-rag-demo/
-
是项目总文件夹,就像我做一个课程项目,所有资料都放进一个文件夹里,方便管理。
-
-
package.json
-
是项目配置,就像项目的“说明牌”,告诉电脑这个项目怎么运行。
-
-
server.js
-
是核心代码,就是这个RAG系统的大脑和发动机。
-
比如当用户提问:
这个产品多少钱?
server.js 就会去knowledge.txt 里找和”价格、多少钱、收费”相关的内容,然后返回答案。所以:
-
server.js是真正处理问题和返回答案的地方。
knowledge.txt 是知识库资料,你自己的产品资料都写在这里,比如:
产品介绍
价格说明
购买流程
付款开通
FAQ 常见问题
退款规则
人工寄服规则
用户问问题时,系统不是乱答,而是先查这个文件。比如:
用户问:付款后多久开通?
系统查 knowledge.txt
找到:付款成功后一股5分钟内开通
然后返回答案
所以:
-
knowledge.txt 写得越清楚,RAG回答越准确。
README.md就像项目的使用说明书,别人拿到这个项目后,看它就知道怎么运行。
4.2.2 搭建知识库框架
将上面的提示词投递给Codex
请帮我创建一个最基础的RAG知识库演示项目。
项目目标:
用于教学演示,让用户理解RAG的基本原理:用户提问后,系统先从本地知识库中查找相关内容,再根据查到的内容进行回复。
技术要求:
1、使用 Node.js + Express
2、创建一个knowledge.txt 文件作为本地知识库
3、创建一个POST/ask接口
4、用户提交问题后,后端读取knowledge.txt
5、使用简单关键词匹配,从knowledge.txt 中查找相关内容
6、如果找到相关内容,就返回基于知识库的回答
7、如果找不到相关内容,就返回:知识库中暂时没有找到相关答窝,建议转人工客服处理
8、不需要前端页面
9、不需要数据库
10、不需要向量数据库
11、不需要真实 AI API
12、代码要简单,注释要清楚,适合新手学习
项目文件结构:
basic-rag-demo/
|--- package.json
|--- server.js
|--- knowledge.txt
|--- README.md
稍作等待之后可以看到项目文件已经按要求生成了


打开项目文件夹,可以看到按要求生成了相关的文件

4.2.3 准备原始知识库材料
提前准备一份知识库原材料,可以是工作中的业务文档,SOP流程,销售话术,处理常见问题的文档材料等,作为接下来上传到RAG的材料,如下,我这里有一份阿里云服务器相关的FAQ资料:

4.2.4 将原始文档写入知识库
通过下面的提示词将准备的这份材料写入到知识库文档,即 knowledge.txt
请帮我把这个文档里的资料整理成适合 RAG知识库使用的knowledge.txt 内容。
要求:
1、按照以下结构整理:
-- 服务器选购流程
-- 计费方式
-- 下单流程
-- 配置过程
-- 售后流程
2、内容要简洁清晰,方便关键词检索
3、不要编造我没有提供的信息
4、如果资料中没有提到的内容,请标注“资料不足,需要人工补充”
5、请直接帮我写入knowledge.txt

最终成功将原始文档内容写入到指定的knowledge.txt 文件中


4.2.5 知识库效果测试
经过上面的操作后,RAG写入知识库就结束了,我们要确认用户提问时,系统真的能从knowledge.btxt里找到对应资料。
如果用户问"服务器选购流程是怎样的”,系统应该命中。
如果用户问"服务器操作遇到问题怎么办”,系统应该命中售后流程规则。
如果用户问一个知识库里没有的问题,比如”你们能开发火箭吗”,系统就不能乱答,应该提示转人工。
给出下面的提示词,做一个完整的测试流程:
请帮我测试当前 RAG 项目。
要求:
1、启动项目
2、测试 P0ST /ask 接口
3、分别测试以下问题:
-- 服务器选购流程是怎样的
-- 服务器使用遇到问题怎么办
4、检查返回结果是否正确
5、如果接口报错,请帮我修复
6、如果知识库没有命中,请帮我优化关键词匹配逻辑
提示词输入之后,Codex 会根据本地的环境要求为这个项目安装必要的依赖

在执行过程中,Codex 发现知识库文件中存在语义不够明确的地方,于是自己进行了优化调整,最后完成了整个过程的测试验证


4.3 知识库升级
一开始我们不需要把知识库拆得太细。资料少的时候,一个knowledge.txt就够。如果拆分的太细,日常的维护工作量比较大,但是随着知识库承载的功能越来越多,全部放在一个知识库文件中就不合适了,此时需要根据业务类型进行细分。比如针对上面这个知识库文件,可以拆成3个文件:
-
服务器选购流程
-
服务器计费方式
-
服务器售后流程
明确了需求,接下来给出下面的提示词:
请帮我把当前 RAG 项目从单个knowledge.txt升级为简单的多文件知识库。
不要拆得太细,只需要拆成3个文件:
knowledge-base/
|-- Purchase.txt
|-- Service.txt
|-- Fee.txt
要求:
1、Purchase.txt 存放与服务器购买相关的内容
2、Service.txt 存放与服务器售后相关的内容
3、Fee.txt 存放与服务器使用过程中计费相关的内容
4、保留原来的POST /ask接口
5、后端自动读取knowledge-base文件夹里的所有txt 文件
6、用户提问时,系统从这3个文件中检索相关内容
7、返回结果中显示命中的文件名 matchedFile
8、如果没有找到相关内容,返回:知识库中暂时没有找到相关答案,建议转人工客服处理
9、代码要简单,注释要清楚,适合课堂教学

经过一段时间响应之后,最终按照要求将原始的知识库文档拆分成了3个文件

并且还贴心的做了测试验证

4.4 构建客服智能体
经过上面的操作,完成了一个简单的知识库的搭建过程,有了知识库,就可以做一个客服智能体,基于知识库语料进行用户问题回复了,下面使用Codex 完成客服智能体的开发。
简单理解:
RAG知识库=客服的大脑资料
客服智能体=用户提问入口+RAG回答逻辑+回复展示/发送
所以接下来要做的是:
-
用户提问
-
睿服智能体接收问题
-
调用 RAG 知识库
-
生成喜服回复
-
模拟展示在微信客服窗口里
下面看具体的实现步骤。
4.4.1 增加项目聊天界面
为了方便后续的演示操作,需要做一个用户的聊天界面,给出下面的提示词,让Codex 生成后续的功能:
请帮我在当前RAG知识库项目基础上,增加一个“微信客服智能体本地演示页面”。
当前项目已经有:
1、knowledge-base 知识文件夹
2、server.js后端服务
3、POST /ask 接口
4、用户提问后可以从知识库中检索并返回回答
现在请继续开发本地微信客服演示功能。
耍求:
1.新增 public文件夹,
2.在 public 中创建:
index.html
style.css
script.js
3.页面模拟微信客服聊天窗口。
4、页面包含:
聊天记录区域
用户输入框
发送按钮
快捷问题按扭
5、快捷问题包括:
- 服务器购买步骤?
- 服务器是怎么计费的?
- 服务器宕机了怎么办?
6、用户输入问题后,前端调用后端 POST /ask接口。
7、后端返回答案后,页面以聊天气泡形式展示。
8、用户消息显示在右侧,AI客服消息显示在左侧,
9、如果没有命中知识库,页面展示转人工提示,
10、保留原来的 RAG知识库逻辑,不要破坏原来的/ask接口。
11、代码要简单,注释要清楚,适合课堂教学。
12、README.md 中补充如何打开本地微信客服演示页面。
请直接修改当前项目并生成完整代码。

等待一段时间后,按要求完成了页面的生成,并且给出了项目启动的方式,我们按要求启动项目或者直接让Codex 帮我启动

浏览器打开,测试一下效果

五、写在文末
本文通过较大的篇幅详细介绍了如何基于Codex 完成一个基本的RAG应用开发的过程,有兴趣的同学还可以在此基础上进行更深入的扩展,本篇到此结束,感谢观看。
更多推荐


所有评论(0)