本地部署FastGPT保姆级教程!轻松使用在线大语言模型

FastGPT 是一个基于 LLM 大语言模型的知识库问答系统,提供开箱即用的数据处理、模型调用等能力,它背后依赖OneApi开源项目来访问各种大语言模型提供的能力。各大语言模型提供的访问接口规范不尽相同,为此OneApi项目提供了统一的API接口去对接各种大语言模型。FastGPT的部署架构如图所示:
在这里插入图片描述

本文章将介绍如何部署OneApi和FastGPT,以及两种在线大语言模型(AzureOpenAI讯飞星火3.5)的配置方法。

我将在Windows系统的WSL子系统上进行部署,WSL子系统安装的是Ubuntu22 Linux系统,WSL的部署方式完全适用于真实的Linux系统。

一、部署OneApi

OneApi项目开源地址:https://github.com/songquanpeng/one-api

1.在/opt目录下创建oneapi目录
cd opt
mkdir oneapi
cd oneapi

2.编辑docker-compose.yml文件

在/opt/oneapi目录下创建docker-compose.yml文件,将下面的内容复制进去并保存

version: '3.8'

services:
  oneapi:
    container_name: oneapi
    image: justsong/one-api:latest
    restart: unless-stopped
    ports:
      - 3001:3000
    networks:
      - llm_net
    volumes:
      - ./data:/data
    environment:
      - TZ=Asia/Shanghai

networks:
  llm_net:
    name: llm_net
    external: true  

3.创建llm_net docker网络
docker network create llm_net

4.运行oneapi
docker compose up -d

5.配置AzureOpenAI渠道

登录http://localhost:3001,用户名:root,密码:123456。

如果你没有申请AzureOpenAI,可以直接查看讯飞星火的配置方式。其实申请AzureOpenAI并不难,网上教程很多,只要真实填写相关信息,一般24小时内就可以通过。

接下来我们添加AzureOpenAI渠道,按照图中的方式填写就好了。这里有一个需要注意的地方就是名称那一项填的是Azure上面的部署名称,而这个部署名称必须要和模型名称一致(很奇怪的做法,GitHub上已经有人提了issue,正在解决)
在这里插入图片描述

在这里插入图片描述

6.测试

渠道添加成功后,可以在渠道列表页面点击“测试”按钮,如果没有问题,会返回测试成功。
在这里插入图片描述

7.创建令牌

令牌的名称随便填,由于是测试,可以把额度设置为无限额度。

提交后,可以在令牌列表页面复制刚刚创建的令牌,这个令牌将在部署FastGPT时用到。
在这里插入图片描述

二、部署fastgpt
1.在/opt目录下创建fastgpt目录
cd opt
mkdir fastgpt
cd fastgpt

2.编辑docker-compose.yml文件

请先阅读FastGPT官方部署文档:https://doc.fastgpt.in/docs/development/docker/

下载docker-compose.yml文件和config.json文件

curl -O https://raw.githubusercontent.com/labring/FastGPT/main/files/deploy/fastgpt/docker-compose.yml
curl -O https://raw.githubusercontent.com/labring/FastGPT/main/projects/app/data/config.json

编辑docker-compose.yml文件,主要是更改了容器网络,数据库用户名密码之类的

version: '3.8'
services:
  pg:
    image: ankane/pgvector:v0.5.0 # git
    # image: registry.cn-hangzhou.aliyuncs.com/fastgpt/pgvector:v0.5.0 # 阿里云
    container_name: pg
    restart: always
    ports: 
      - 5432:5432
    networks:
      - llm_net
    environment:
      - POSTGRES_USER=fastgpt
      - POSTGRES_PASSWORD=123456
      - POSTGRES_DB=fastgpt
    volumes:
      - ./pg/data:/var/lib/postgresql/data

  mongo:
    image: mongo:5.0.18
    # image: registry.cn-hangzhou.aliyuncs.com/fastgpt/mongo:5.0.18 # 阿里云
    container_name: mongo
    ports:
      - 27017:27017
    networks:
      - llm_net
    command: mongod --keyFile /data/mongodb.key --replSet rs0
    environment:
      - MONGO_INITDB_ROOT_USERNAME=fastgpt
      - MONGO_INITDB_ROOT_PASSWORD=123456
    volumes:
      - ./mongo/data:/data/db
      - ./mongodb.key:/data/mongodb.key

  fastgpt:
    container_name: fastgpt
    image: ghcr.io/labring/fastgpt:latest # git
    # image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt:latest # 阿里云
    ports:
      - 3002:3000
    networks:
      - llm_net
    depends_on:
      - mongo
      - pg
    restart: always
    environment:
      - DEFAULT_ROOT_PSW=123456
      - OPENAI_BASE_URL=http://192.168.2.117:3001/v1
      - CHAT_API_KEY=sk-XXXXX # 在OneApi中创建的令牌
      - DB_MAX_LINK=5 # database max link
      - TOKEN_KEY=any
      - ROOT_KEY=root_key
      - FILE_TOKEN_KEY=filetoken
      # mongo 配置,不需要改. 用户名myname,密码mypassword。
      - MONGODB_URI=mongodb://fastgpt:123456@mongo:27017/fastgpt?authSource=admin
      # pg配置. 不需要改
      - PG_URL=postgresql://fastgpt:123456@pg:5432/fastgpt
    volumes:
      - ./config.json:/app/data/config.json

networks:
  llm_net:
    name: llm_net
    external: true  

这里要注意的 OPENAI_BASE_URL=http://192.168.2.117:3001/v1,我本来想设置成http://oneapi:3000/v1,因为fastgpt与oneapi在同一个docker网络,但fastgpt访问不了这个地址,可能是哪里没有设置对,只好先用本机ip来访问。

3.编辑config.json文件

改动如下,name改成在oneapi配置中的一样
在这里插入图片描述

4.运行fastgpt
docker compose up -d

运行成功之后,不要忘了对MongoDb进行配置,直接按官网的步骤进行操作:

# 查看 mongo 容器是否正常运行
docker ps
# 进入容器
docker exec -it mongo bash
# 连接数据库
mongo -u myname -p mypassword --authenticationDatabase admin
# 初始化副本集。如果需要外网访问,mongo:27017 可以改成 ip:27017。但是需要同时修改 FastGPT 连接的参数(MONGODB_URI=mongodb://myname:mypassword@mongo:27017/fastgpt?authSource=admin => MONGODB_URI=mongodb://myname:mypassword@ip:27017/fastgpt?authSource=admin)
rs.initiate({
  _id: "rs0",
  members: [
    { _id: 0, host: "mongo:27017" }
  ]
})
# 检查状态。如果提示 rs0 状态,则代表运行成功
rs.status()

5.测试

官网说OPENAI_BASE_URL地址后面要加v1,当我加了的时候,测试结果如下,报404:
在这里插入图片描述

于是去oneapi容器查看日志,可以看到fastgpt请求已经转到了oneapi,oneapi又去请求AzureOpenAI, AzureOpenAI返回404。于是去Azure上测试部署后的聊天功能,按F12查看网络请求,发现路由里面没有v1

于是更改docker-compose.yml文件,把OPENAI_BASE_URL值中的v1去掉了,重新执行docker-compose up -d ,重启之后继续测试,这次的报错就不一样了,如下图所示:
在这里插入图片描述

查看oneapi日志,请求结果是200,但没有响应内容,找了很久的原因,无法得知是OneApi还是Azure OpenAI的问题,于是转而去测试讯飞星火大模型。
在这里插入图片描述

三、配置讯飞星火认知大模型
1.创建讯飞模型应用

先去官方领取讯飞星火认知大模型的个人免费试用套餐,然后去到讯飞开放平台去创建基于v3.5版本的应用,得到APPID、APISecret、APIKey三个值(在OneApi中需要用到)
在这里插入图片描述

2.在oneapi页面添加星火模型渠道

在这里插入图片描述

3.编辑fastgpt的config.json文件

增加星火模型的配置
在这里插入图片描述

4.重启fastgpt容器

注意:如果你之前的操作把OPENAI_BASE_URL的v1去掉了,请把它补上,然后执行命令:docker-compose up -d

5.测试

AI模型选择上面配置的spark3.5,测试成功
在这里插入图片描述

如何学习AI大模型 ?

“最先掌握AI的人,将会比较晚掌握AI的人有竞争优势”。

这句话,放在计算机、互联网、移动互联网的开局时期,都是一样的道理。

我在一线互联网企业工作十余年里,指导过不少同行后辈。帮助很多人得到了学习和成长。

我意识到有很多经验和知识值得分享给大家,故此将并将重要的AI大模型资料包括AI大模型入门学习思维导图、精品AI大模型学习书籍手册、视频教程、实战学习等录播视频免费分享出来。【保证100%免费】🆓

对于0基础小白入门:

如果你是零基础小白,想快速入门大模型是可以考虑的。

一方面是学习时间相对较短,学习内容更全面更集中。
二方面是可以根据这些资料规划好学习计划和方向。

😝有需要的小伙伴,可以VX扫描下方二维码免费领取🆓

👉1.大模型入门学习思维导图👈

要学习一门新的技术,作为新手一定要先学习成长路线图,方向不对,努力白费。

对于从来没有接触过AI大模型的同学,我们帮你准备了详细的学习成长路线图&学习规划。可以说是最科学最系统的学习路线,大家跟着这个大的方向学习准没问题。(全套教程文末领取哈)
在这里插入图片描述

👉2.AGI大模型配套视频👈

很多朋友都不喜欢晦涩的文字,我也为大家准备了视频教程,每个章节都是当前板块的精华浓缩。

在这里插入图片描述
在这里插入图片描述

👉3.大模型实际应用报告合集👈

这套包含640份报告的合集,涵盖了AI大模型的理论研究、技术实现、行业应用等多个方面。无论您是科研人员、工程师,还是对AI大模型感兴趣的爱好者,这套报告合集都将为您提供宝贵的信息和启示。(全套教程文末领取哈)

在这里插入图片描述

👉4.大模型落地应用案例PPT👈

光学理论是没用的,要学会跟着一起做,要动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。(全套教程文末领取哈)

在这里插入图片描述

👉5.大模型经典学习电子书👈

随着人工智能技术的飞速发展,AI大模型已经成为了当今科技领域的一大热点。这些大型预训练模型,如GPT-3、BERT、XLNet等,以其强大的语言理解和生成能力,正在改变我们对人工智能的认识。 那以下这些PDF籍就是非常不错的学习资源。(全套教程文末领取哈)
img

在这里插入图片描述

👉6.大模型面试题&答案👈

截至目前大模型已经超过200个,在大模型纵横的时代,不仅大模型技术越来越卷,就连大模型相关的岗位和面试也开始越来越卷了。为了让大家更容易上车大模型算法赛道,我总结了大模型常考的面试题。(全套教程文末领取哈)

在这里插入图片描述
👉学会后的收获:👈
基于大模型全栈工程实现(前端、后端、产品经理、设计、数据分析等),通过这门课可获得不同能力;

能够利用大模型解决相关实际项目需求: 大数据时代,越来越多的企业和机构需要处理海量数据,利用大模型技术可以更好地处理这些数据,提高数据分析和决策的准确性。因此,掌握大模型应用开发技能,可以让程序员更好地应对实际项目需求;

基于大模型和企业数据AI应用开发,实现大模型理论、掌握GPU算力、硬件、LangChain开发框架和项目实战技能, 学会Fine-tuning垂直训练大模型(数据准备、数据蒸馏、大模型部署)一站式掌握;

能够完成时下热门大模型垂直领域模型训练能力,提高程序员的编码能力: 大模型应用开发需要掌握机器学习算法、深度学习

这份完整版的 AI 大模型学习资料已经上传CSDN,朋友们如果需要可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费

😝有需要的小伙伴,可以Vx扫描下方二维码免费领取🆓

好的,下面是ubuntu部署ThinkPHP框架的网站保姆教程: 1. 安装LAMP环境 LAMP环境包括Apache、MySQL和PHP,可以使用以下命令安装: ``` sudo apt-get update sudo apt-get install lamp-server^ ``` 在安装过程中,会要求你设置MySQL的root密码,输入两次即可。 2. 下载并解压ThinkPHP框架 可以在官网下载ThinkPHP框架的最新版本,解压后将整个文件夹放在Apache的网站根目录下(默认是/var/www/html/)。 3. 配置Apache 在终端中输入以下命令打开Apache的配置文件: ``` sudo nano /etc/apache2/apache2.conf ``` 在文件末尾添加以下内容: ``` <Directory /var/www/html/ThinkPHP/> Options Indexes FollowSymLinks AllowOverride All Require all granted </Directory> ``` 保存并退出文件。 然后重启Apache服务: ``` sudo service apache2 restart ``` 4. 创建数据库 可以使用phpMyAdmin创建数据库,也可以在终端中输入以下命令创建: ``` sudo mysql -u root -p CREATE DATABASE yourdatabasename; exit ``` 5. 修改数据库配置文件 在ThinkPHP框架的根目录下,有一个名为“database.php”的文件,需要修改其中的数据库配置信息: ``` 'hostname' => 'localhost', 'database' => 'yourdatabasename', 'username' => 'root', 'password' => 'yourpassword', ``` 将“yourdatabasename”改为你刚刚创建的数据库名称,“yourpassword”改为你设置的MySQL的root密码。 6. 测试网站 在浏览器中输入http://localhost/ThinkPHP/,即可看到ThinkPHP框架的默认页面。如果能够正常显示,说明网站已经部署成功。 以上就是ubuntu部署ThinkPHP框架的网站的保姆教程,希望能够帮到你!
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值