FastGPT私有化部署教程

新知榜官方账号

2023-11-01 16:22:40

FastGPT私有化部署教程

FastGPT是一款专为客服问答场景而定制的开箱即用的AI知识库问答系统。该系统具备可视化工作流功能,允许用户灵活地设计复杂的问答流程,几乎能满足各种客服需求。在国内市场环境下,离线部署对于企业客户尤为重要。由于数据安全和隐私保护的考虑,企业通常不愿意将敏感数据上传到线上大型AI模型(如ChatGPT、Claude等)。因此,离线部署成为一个刚需。幸运的是,FastGPT本身是开源的,除了可以使用其在线服务外,也允许用户进行私有化部署。相关的开源项目代码可以在GitHub上找到:https://github.com/labring/fastgpt

正好上周ChatGLM系列推出了其最新一代的开源模型——ChatGLM3-6B。该模型在保留前两代模型流畅对话和低部署门槛的优点基础上,带来了以下新特性:

  • 更强大的基础模型:ChatGLM3-6B的基础模型,名为ChatGLM3-6B-Base,具有更丰富的训练数据、更合理的训练策略和更多的训练步数。在语义、数学、推理、代码、知识等不同角度的数据集上测评显示,ChatGLM3-6B-Base具有在10B以下的预训练模型中优秀的性能。
  • 更完善的功能:ChatGLM3-6B引入了全新设计的Prompt格式,除了支持正常的多轮对话,还原生支持如工具调用(FunctionCall)、代码执行(CodeInterpreter)和Agent任务等复杂场景。
  • 更全面的开源计划:除了ChatGLM3-6B,该团队还开源了基础模型ChatGLM-6B-Base和长文本对话模型ChatGLM3-6B-32K。以上所有权重对学术研究完全开放,在登记后亦允许免费商业使用。

本文接下来将详细介绍如何私有化部署ChatGLM3-6B,并与FastGPT结合,构建一个完完全全私有化的AI知识库问答系统。通过这样的整合,企业不仅可以保证数据安全,还能利用最新、最强大的AI技术来提升客服效率和用户体验。

OneAPI部署FastGPT

可以通过接入OneAPI来实现对各种大模型的支持,你可以参考FastGPT的文档来部署OneAPI:https://doc.fastgpt.in/docs/installation/one-api/

FastGPT部署

如果你不嫌麻烦,可以选择在本地使用DockerCompose来部署FastGPT。我推荐直接使用Sealos应用模板来一键部署,Sealos无需服务器、无需域名,支持高并发&动态伸缩。打开以下链接即可一键部署:https://cloud.sealos.top/?openapp=system-fastdeploy%3FtemplateName%3Dfastgpt

rootpassword是默认的密码,默认用户名是root。baseurl填入OneAPI提供的API接口。假设OneAPI地址是https://xxx.cloud.sealos.top,那么baseurl就是https://xxx.cloud.sealos.top/v1。如果你的OneAPI和FastGPT都部署在Sealos中,这里的baseurl可以填入OneAPI的内网地址,例如我的内网地址是:http://one-api-wkskpejy.ns-sbjre322.svc.cluster.local:3000/v1

将ChatGLM3-6B接入FastGPT

最后我们来修改FastGPT的配置,将ChatGLM3-6B接入FastGPT。首先在FastGPT的应用详情中点击【变更】,然后点击配置文件中的/app/data/config.json:将文件值修改为如下的值:

{  "SystemParams": {    "pluginBaseUrl": "",    "openapiPrefix": "openapi",    "vectorMaxProcess": 15,    "qaMaxProcess": 15,    "pgIvfflatProbe": 10  },  "ChatModels": [    {      "model": "ChatGLM3",      "name": "ChatGLM3",      "price": 0,      "maxToken": 4000,      "quoteMaxToken": 2000,      "maxTemperature": 1.2,      "censor": false,      "defaultSystemChatPrompt": ""    }  ],  "QAModels": [    {      "model": "ChatGLM3",      "name": "ChatGLM3",      "maxToken": 8000,      "price": 0    }  ],  "CQModels": [    {      "model": "ChatGLM3",      "name": "ChatGLM3",      "maxToken": 8000,      "price": 0,      "functionCall": true,      "functionPrompt": ""    }  ],  "ExtractModels": [    {      "model": "ChatGLM3",      "name": "ChatGLM3",      "maxToken": 8000,      "price": 0,      "functionCall": true,      "functionPrompt": ""    }  ],  "QGModels": [    {      "model": "ChatGLM3",      "name": "ChatGLM3",      "maxToken": 4000,      "price": 0    }  ],  "VectorModels": [    {      "model": "text-embedding-ada-002",      "name": "Embedding-2",      "price": 0.2,      "defaultToken": 700,      "maxToken": 3000    },    {      "model": "m3e",      "name": "M3E(测试使用)",      "price": 0.1,      "defaultToken": 500,      "maxToken": 1800    }  ]}

修改完成后,点击【确认】,然后点击右上角的【变更】,等待FastGPT重启完成后,再次访问FastGPT,点击【立即开始】进入登录界面,输入默认账号密码后进入FastGPT控制台。

新建一个应用,模板选择【简单的对话】,点击【确认创建】。AI模型选择ChatGLM3,然后点击【保存并预览】。点击左上角【对话】打开一个聊天会话窗口:

按国际惯例先来测试一下它的自我认知:

再来检测一下数学能力:

逻辑推理能力:

接入M3E向量模型

刚刚我们只是测试了模型的对话能力,如果我们想使用FastGPT来训练知识库,还需要一个向量模型。FastGPT线上服务默认使用了OpenAI的embedding模型,如果你想私有部署的话,可以使用M3E向量模型进行替换。M3E的部署方式可以参考文档:https://doc.fastgpt.in/docs/custom-models/m3e/

Sealos社区长期征稿,欢迎Sealos终端用户与开发者前来投稿,奖金丰厚!详情可查看文章爱Sealos?来投稿!有奖金,还没有截止日期...

加入Sealos开源社区体验像个人电脑一样简单的云操作系统

本页网址:https://www.xinzhibang.net/article_detail-18525.html

寻求报道,请 点击这里 微信扫码咨询

关键词

FastGPT 私有化部署 ChatGLM3-6B

分享至微信: 微信扫码阅读

相关工具

相关文章