快速上手:用 FastGPT 搭建企业级 AI 知识库与智能代理
通过本教程,你将掌握以下能力:
- 在 30 分钟内部署一个私有化 AI 知识库(支持文档、网页、数据库导入)
- 通过可视化工作流串联 LLM、知识检索、API 调用,构建自动问答机器人
- 将智能代理嵌入网站或企业微信,实现客户支持、内部知识查询等场景
前置条件
- 一台 Linux 服务器(Ubuntu 20.04+,4 核 8G 内存,50GB 磁盘)
- 已安装 Docker 和 Docker Compose(v2.0+)
- 拥有一个 OpenAI API Key 或兼容的本地模型(如通过 Ollama 部署的 Llama 3)
- 域名及 SSL 证书(可选,用于生产环境 HTTPS 访问)
第一步:部署 FastGPT 服务
- 在服务器终端执行以下命令,拉取官方部署脚本:
curl -o docker-compose.yml https://raw.githubusercontent.com/labring/FastGPT/main/files/docker-compose.yml
curl -o config.json https://raw.githubusercontent.com/labring/FastGPT/main/files/config.json
- 编辑
config.json,在 llmModels 字段中填入你的模型配置(例如 OpenAI 的 gpt-4 或本地模型地址):
"llmModels": [
{
"model": "gpt-4",
"name": "GPT-4",
"provider": "OpenAI",
"apiKey": "sk-xxxxxxxxxxxx",
"baseUrl": "https://api.openai.com/v1"
}
]
- 启动服务:
docker-compose up -d
- 访问
http://服务器IP:3000,使用默认账号 root 密码 1234 登录(首次登录后请立即修改密码)。
预期结果:浏览器显示 FastGPT 控制台首页,左侧菜单包含「知识库」「工作流」「应用」等模块。
常见问题:
- 若端口被占用,修改
docker-compose.yml 中 3000:3000 为 8080:3000 后重新启动。 - 若模型调用失败,检查
config.json 中 baseUrl 是否包含 /v1 路径,且 API Key 有效。
第二步:创建知识库并导入数据
- 点击左侧菜单「知识库」→「新建知识库」,选择「通用知识库」模板。
- 在「数据源」页面,支持三种导入方式:
- 上传文档:支持 PDF、Word、TXT、Markdown 格式,单文件不超过 50MB
- 网页抓取:输入 URL,系统自动爬取并清洗正文内容
- API 导入:通过 HTTP POST 发送 JSON 数据(适合对接内部系统)
- 以「上传文档」为例,点击「上传文件」,选择公司产品手册 PDF,等待系统自动切片和向量化(进度条显示在右上角)。
- 点击「测试」按钮,输入问题「产品保修期多久?」,确认系统能返回匹配的文档片段。
预期结果:知识库列表中显示刚创建的库,状态为「已就绪」,测试问答返回准确结果。
注意事项:
- 文档切片长度默认 500 字符,若回答不完整,可在「知识库设置」中调整切片重叠率(建议 10%-20%)。
- 网页抓取仅支持静态页面,动态渲染的页面(如 Vue/React 单页应用)需使用 API 导入。
第三步:搭建可视化工作流
- 点击「工作流」→「新建工作流」,选择「空白模板」。
- 从左侧组件面板拖拽以下节点到画布:
- 输入节点:接收用户问题
- 知识库检索节点:选择上一步创建的知识库,设置返回片段数量(建议 3-5 条)
- LLM 节点:选择模型,编写提示词模板,例如:
你是一个客服助手,根据以下知识库内容回答用户问题。如果找不到答案,请回复“请联系人工客服”。
知识库内容:{context}
用户问题:{question}
- 用连线连接各节点:输入 → 知识库检索 → LLM → 输出。
- 点击「保存并测试」,输入问题「如何重置密码?」,观察每个节点的输出日志。
预期结果:工作流运行成功,输出节点返回格式正确的回答,日志中显示检索到的文档片段和 LLM 消耗的 Token 数。
失败排查:
- 若知识库检索节点返回空,检查知识库是否已导入数据且状态为「已就绪」。
- 若 LLM 节点报错,在节点配置中点击「测试模型连接」,确认 API 可用。
第四步:发布为智能代理
- 点击「应用」→「新建应用」,选择「对话型」。
- 在「应用配置」中,关联上一步创建的工作流,并设置:
- 欢迎语:如「您好,我是智能客服,请问有什么可以帮您?」
- 对话历史:保留最近 10 轮对话(避免 Token 超限)
- 用户权限:选择「所有人可访问」或「仅限登录用户」
- 点击「发布」,获取两种集成方式:
- 嵌入代码:复制
<iframe> 代码,粘贴到网站 HTML 中 - API 接口:复制
https://你的域名/api/v1/chat/completions,用于对接企业微信、钉钉等
预期结果:在浏览器中打开嵌入的页面,或通过 API 发送请求,均能获得智能回复。
注意事项:
- 生产环境务必配置 HTTPS,否则浏览器会阻止 iframe 加载。
- API 调用需在请求头添加
Authorization: Bearer 你的API密钥(密钥在「应用」→「API 密钥」中生成)。
常见问题与边界
- Q:知识库数据更新后,需要重新部署吗?
A:不需要。FastGPT 支持增量更新,在知识库中点击「重新训练」即可,不影响在线服务。 - Q:工作流能否调用外部 API?
A:可以。拖拽「HTTP 请求节点」到画布,配置 URL、请求头和参数,例如查询订单状态或天气预报。 - Q:免费版有什么限制?
A:开源版无功能限制,但需自行管理服务器和模型费用。官方提供付费云服务(含自动扩缩容和监控)。