前言
在AI智能技术迅猛发展的背景下,企业对智能化客户服务的需求日益增长。FastGPT作为一款开源的AI知识库构建平台,基于LLM大模型,提供了数据处理、模型调用、RAG检索以及可视化工作流编排等强大功能。无论是构建特定领域的AI客服,还是开发复杂的AI应用,FastGPT都能帮助企业轻松实现。FastGPT提供开源版本和企业版本,其中开源版本允许用于商业化,例如作为其他应用的“后端即服务”,或作为应用开发平台提供给企业。如果涉及多租户SaaS服务或LOGO及版权信息时,则需联系作者获取商业许可。
此前,我在公司内部基于FastGPT成功部署了“AI运维技术问答知识库”,显著提升了工作效率。本文将详细介绍如何通过Docker Compose快速部署FastGPT,构建专属的AI客服或AI知识库应用。
部署前你需要了解Docker、Docker Compose、会百度查询报错
一、部署架构图
MongoDB:用于存储除了向量外的各类数据
PostgreSQL/Milvus:存储向量数据
OneAPI: 聚合各类 AI API,支持多模型调用 (任何模型问题,先自行通过 OneAPI 测试校验)
二、部署推荐配置
环境 | 最低配置(单节点) | 推荐配置 |
---|---|---|
测试 | 2c2g | 2c4g |
100w 组向量 | 4c8g 50GB | 4c16g 50GB |
500w 组向量 | 8c32g 200GB | 16c64g 200GB |
三、Linux部署
详细教程请查看FastGPT官网:
3-1、创建项目、下载配置文件、Docker Compose文件
# 创建目录
mkdir fastgpt
# 进入
cd fastgpt
# 下载配置文件、Docker Compose文件
# curl下载配置文件
curl -O https://raw.githubusercontent.com/labring/FastGPT/main/projects/app/data/config.json
# pgvector 版本(测试推荐,简单快捷)
curl -o docker-compose.yml https://raw.githubusercontent.com/labring/FastGPT/main/files/docker/docker-compose-pgvector.yml
3-2、修改config.json
、docker-compose.yml
文件环境变量
注意: config.json文件不会更改则先不动,等启动容器之后进入OneAPI,配置模型之后再进行配置哈
测试环境下,可以不用修改文件的变量,直接启动容器即可。在生产环境,文件都有详细的中文注释,最好根据注释来进行修改变量。下面是我的config.json修改的部分内容:
# llmModels
"llmModels": [
{
"model": "gpt-3.5-turbo",
"name": "gpt-3.5-turbo",
"avatar": "/imgs/model/openai.svg",
"maxContext": 128000,
"maxResponse": 4000,
"quoteMaxToken": 100000,
"maxTemperature": 1.2,
"charsPointsPrice": 0,
"censor": false,
"vision": true,
"datasetProcess": true,
"usedInClassify": true,
"usedInExtractFields": true,
"usedInToolCall": true,
"usedInQueryExtension": true,
"toolChoice": true,
"functionCall": false,
"customCQPrompt": "",
"customExtractPrompt": "",
"defaultSystemChatPrompt": "",
"defaultConfig": {}
},
{
"model": "gpt-4",
"name": "gpt-4",
"avatar": "/imgs/model/openai.svg",
"maxContext": 128000,
"maxResponse": 4000,
"quoteMaxToken": 100000,
"maxTemperature": 1.2,
"charsPointsPrice": 0,
"censor": false,
"vision": true,
"datasetProcess": false,
"usedInClassify": false,
"usedInExtractFields": false,
"usedInToolCall": false,
"usedInQueryExtension": false,
"toolChoice": true,
"functionCall": false,
"customCQPrompt": "",
"customExtractPrompt": "",
"defaultSystemChatPrompt": "",
"defaultConfig": {}
},
{
"model": "deepseek-chat",
"name": "deepseek-chat",
"avatar": "/imgs/model/openai.svg",
"maxContext": 128000,
"maxResponse": 4000,
"quoteMaxToken": 100000,
"maxTemperature": 1.2,
"charsPointsPrice": 0,
"censor": false,
"vision": true,
"datasetProcess": true,
"usedInClassify": true,
"usedInExtractFields": true,
"usedInToolCall": true,
"usedInQueryExtension": true,
"toolChoice": true,
"functionCall": false,
"customCQPrompt": "",
"customExtractPrompt": "",
"defaultSystemChatPrompt": "",
"defaultConfig": {}
}
]
# vectorModels
"vectorModels": [
{
"model": "text-embedding-ada-002",
"name": "Embedding-2",
"avatar": "/imgs/model/openai.svg",
"charsPointsPrice": 0,
"defaultToken": 512,
"maxToken": 3000,
"weight": 100,
"dbConfig": {},
"queryConfig": {}
},{
"model": "text-embedding-ada-002",
"name": "OpenaiEmbedding",
"avatar": "/imgs/model/openai.svg",
"charsPointsPrice": 0,
"defaultToken": 512,
"maxToken": 3000,
"weight": 100,
"dbConfig": {},
"queryConfig": {}
}
],
3-3、启动容器
# 启动容器
docker-compose up -d
# 等待10s,OneAPI第一次总是要重启几次才能连上Mysql
sleep 10
# 重启一次oneapi(由于OneAPI的默认Key有点问题,不重启的话会提示找不到渠道,临时手动重启一次解决,等待作者修复)
docker restart oneapi
# ----拓展
## 关闭容器
docker-compose down
## 启动容器
docker-compose up -d
3-4、打开 OneAPI 添加模型
可以通过[ip]:3001访问OneAPI,默认账号为root
密码为123456
,来进行添加模型,配置好之后需要在config.json文件中配置、[关闭、再启动]容器fastGPT页面才生效。
暂无评论