使用大语言模型Fast GPT和One API部署私有化问答系统

AI前沿4个月前发布 wanglu852
8,574 0 0
广告也精彩

使用大语言模型Fast GPT和One API部署私有化问答系统

介绍

在这篇文章中,我们将演示如何使用大语言模型Fast GPT结合One API来部署自己的问答系统。最终的效果是,当问到什么是比特币的时候,它的回答内容是引用了我之前上传的比特币的白皮书PDF。这样的一套问答过程就是最近非常热门的RAG模式。相对于完整的大模型,它的回答内容更加可控,正确率也更高。

​​使用大语言模型Fast GPT和One API部署私有化问答系统​​

项目部署步骤

环境准备

在开始部署前,我们需要准备以下环境:

  1. git
  2. Docker
  3. Node
  4. npm

我建议大家使用Linux环境,这样在开发过程中会更顺利。fastgpt主业。

安装Docker数据库

我们需要安装两个数据库,一个是MongoDB,另一个是MySQL。这两个数据库都依赖于Docker和Docker Compose,所以首先我们需要安装Docker Compose。

# 安装Docker Compose
sudo curl -L "https://github.com/docker/compose/releases/download/1.29.2/docker-compose-(uname -s)-(uname -m)" -o /usr/local/bin/docker-compose
sudo chmod +x /usr/local/bin/docker-compose

然后,我们需要下载docker-compose的文件,并启动容器。

# 下载docker-compose文件
wget https://raw.githubusercontent.com/fastgpt/fastgpt/main/docker-compose.yml

# 启动容器
docker-compose up -d

当你运行完以上命令后,在你的docker容器里面应该会出现两个运行的容器,一个是mongodb的数据库,一个是pg的数据库。

本地化运行代码

接下来,我们需要本地化运行代码。首先,我们需要初始化配置文件。在config.json文件中,因为我们采用的是原代码方式部署的,所以config的参数有的是需要变化的。

{
  "mongodb": {
    "username": "<你的mongodb用户名>",
    "password": "<你的mongodb密码>",
    "host": "<你的mongodb的IP地址>",
    "port": "<你的mongodb的端口>"
  },
  "pg": {
    "username": "<你的pg用户名>",
    "password": "<你的pg密码>",
    "host": "<你的pg的IP地址>",
    "port": "<你的pg的端口>"
  },
  "openai": {
    "url": ""
  }
}

注意,如果你使用的不是海外服务器或者你用国内的话,你可能无法直接访问OpenAI的地址。这时你就需要一个中转的地址,比如ChatGPT API的一个中转项目。

运行项目

最后,我们只需要运行npm dev​就可以运行这个项目。

npm run dev

当你的窗口没有出现报错的时候,就表示已经运行成功了。你可以通过http://localhost:3000​打开项目。

项目使用步骤

构建知识库

首先,你需要构建自己的知识库。因为有了知识库之后,你的应用才能够读取你知识库里面的内容,更好的给你解答。

你可以添加任意的知识,比如PDF文件,TXT文件或者其他文件。你甚至可以直接导入网页端,也就是说你可以直接把一个网站的知识都导给它。

添加模型

接下来,你需要添加模型。在OneAPI的渠道里面,你可以添加新的渠道。你需要选择自定义渠道,然后输入你刚才运行项目的IP地址和端口。

{
  "baseURL": "<你的项目IP地址>:<你的项目端口>",
  "name": "<模型的名称>",
  "model": "<模型的名字>"
}

当你添加完成后,点击测试,如果返回200 OK,就代表你已经接入成功了。

结语

以上就是如何使用Fast GPT和One API部署私有化问答系统的全部内容。

原文链接:fastgpt+oneAPI构建智能问答系统,rag模式下的chatglm再也不胡说八道呢_哔哩哔哩_bilibili

© 版权声明
chatgpt4.0

相关文章

暂无评论

您必须登录才能参与评论!
立即登录
暂无评论...
error: Content is protected !!