ubuntu部署fastGPT+oneApi

ubuntu部署fastGPT+oneApi

服务器:ubuntu20.04.6
基本环境:nodeJs 18 ,go 1.21.4,mysql 8.0.35
node管理器:nvm(用于管理node版本)

oneAPI

下载最新版 OneAPI

git clone https://githubfast.com/songquanpeng/one-api.git

安装 MySQL 8.0.35 并创建数据库

  1. 安装 MySQL 8.0.35:

    sudo apt update
    sudo apt install mysql-server=8.0.35
    
  2. 登录 MySQL 并创建 oneapi 数据库:

    sudo mysql -u root -p
    mysql> CREATE DATABASE oneapi;
    

安装 Go 1.21.4 环境

  1. 下载 Go 1.21.4 安装包:

    wget https://go.dev/dl/go1.21.4.linux-amd64.tar.gz
    
  2. 安装 Go 并配置环境变量:

    sudo rm -rf /usr/local/go
    sudo tar -C /usr/local -xzf go1.21.4.linux-amd64.tar.gz
    
  3. 将 Go 安装路径加入环境变量:
    ~/.profile~/.bashrc 文件中添加以下内容:

    export GOCACHE=$HOME/.cache/go-build
    export GOROOT=/usr/local/go
    export GOPATH=$HOME/go
    export GOBIN=$GOPATH/bin
    export PATH=$PATH:$GOROOT/bin:$GOBIN
    export PATH=$PATH:/usr/local/go/bin
    
  4. 使环境变量生效:

    source ~/.profile
    

    source ~/.bashrc
    
  5. 验证 Go 安装:

    go version
    

    输出类似 go version go1.21.4 linux/amd64

配置 Go 环境变量

在终端中设置 Go 环境变量 SQL_DSN 用于 OneAPI 连接本地数据库:

export SQL_DSN="<mysql用户名>:<密码>@tcp(localhost:3306)/oneapi"

构建前端

  1. 切换到 one-api/web/default 目录:

    cd one-api/web/default
    
  2. 切换 npm 源:

    npm config set registry https://registry.npmmirror.com/
    
  3. 清除 npm 缓存:

    npm cache clean --force
    
  4. 安装前端依赖并构建:

    npm install
    npm run build
    

构建后端

  1. 切换到 OneAPI 项目目录:

    cd /path/to/your/one-api
    
  2. 设置环境变量

    #设置 GO111MODULE 为 on
    go env -w GO111MODULE=on
    
    #设置 GOPROXY 为 https://goproxy.cn
    go env -w GOPROXY=https://goproxy.cn
    

    确认配置是否成功:

    go env | grep GO111MODULE
    go env | grep GOPROXY
    
  3. 下载 Go 包:

    go mod download
    
  4. 构建 OneAPI 可执行文件:

    go build -ldflags "-s -w" -o one-api
    
  5. 增加可执行权限:

    chmod u+x ./one-api
    

启动项目

  1. 启动 OneAPI 服务(默认端口号 3001):

    ./one-api --port 3001 --log-dir ./logs
    
  2. 如果修改端口号,需要同步修改 FastGPT 的 OneAPI 配置。


fastGPT

下载最新版 FastGPT

git clone https://githubfast.com/labring/FastGPT

安装数据库

  1. 安装 MongoDB 6.0.12

    sudo apt update
    sudo apt install -y mongodb-org=6.0.12 mongodb-org-server=6.0.12 mongodb-org-shell=6.0.12 mongodb-org-mongos=6.0.12 mongodb-org-tools=6.0.12
    
  2. 安装 PostgreSQL 16 及 pgvector 扩展

    sudo apt install -y postgresql-16
    sudo -u postgres psql -c "CREATE EXTENSION IF NOT EXISTS vector;"
    

配置

前提

在终端命令行下切换到 fastGPT/projects/app 目录下。

复制配置文件

  1. 复制 .env.template 文件,生成 .env.local 文件,修改 .env.local 里的内容:

    cp .env.template .env.local
    
  2. 复制 data/config.json 文件,生成 data/config.local.json 文件:

    cp data/config.json data/config.local.json
    

修改配置文件

配置 .env.local 文件(本地环境变量),主要修改数据库连接的变量:

FastGPT 配置
# MongoDB 数据库连接参数
MONGODB_URI=mongodb://127.0.0.1:27017/?authSource=admin

# PostgreSQL 数据库连接参数
PG_URL=postgresql://username:password@localhost:5432/postgres
OneAPI 配置
# OneAPI 基本地址
OPENAI_BASE_URL=http://<你的oneApi地址>/v1

# OneAPI 生成的令牌
CHAT_API_KEY=<oneApi生成的令牌>

修改 data/config.local.json 文件

{
  "SystemParams": {
    "vectorMaxProcess": 15,
    "qaMaxProcess": 15,
    "pgHNSWEfSearch": 100
  },
  "ChatModels": [
    {
      "model": "gpt-3.5-turbo-1106",
      "name": "GPT35-1106",
      "price": 0,
      "maxContext": 16000,
      "maxResponse": 4000,
      "quoteMaxToken": 2000,
      "maxTemperature": 1.2,
      "censor": false,
      "vision": false,
      "defaultSystemChatPrompt": ""
    }
  ],
  "QAModels": [
    {
      "model": "gpt-3.5-turbo-16k",
      "name": "GPT35-16k",
      "maxContext": 16000,
      "maxResponse": 16000,
      "price": 0
    }
  ],
  "CQModels": [
    {
      "model": "gpt-3.5-turbo-1106",
      "name": "GPT35-1106",
      "maxContext": 16000,
      "maxResponse": 4000,
      "price": 0,
      "toolChoice": true,
      "functionPrompt": ""
    }
  ],
  "ExtractModels": [
    {
      "model": "gpt-3.5-turbo-1106",
      "name": "GPT35-1106",
      "maxContext": 16000,
      "maxResponse": 4000,
      "price": 0,
      "toolChoice": true,
      "functionPrompt": ""
    }
  ],
  "QGModels": [
    {
      "model": "gpt-3.5-turbo-1106",
      "name": "GPT35-1106",
      "maxContext": 1600,
      "maxResponse": 4000,
      "price": 0
    }
  ],
  "VectorModels": [
    {
      "model": "text-embedding-ada-002",
      "name": "Embedding-2",
      "price": 0.2,
      "defaultToken": 700,
      "maxToken": 3000
    }
  ],
  "ReRankModels": [],
  "AudioSpeechModels": [
    {
      "model": "tts-1",
      "name": "OpenAI TTS1",
      "price": 0,
      "baseUrl": "",
      "key": "",
      "voices": [
        { "label": "Alloy", "value": "alloy", "bufferId": "openai-Alloy" },
        { "label": "Echo", "value": "echo", "bufferId": "openai-Echo" },
        { "label": "Fable", "value": "fable", "bufferId": "openai-Fable" },
        { "label": "Onyx", "value": "onyx", "bufferId": "openai-Onyx" },
        { "label": "Nova", "value": "nova", "bufferId": "openai-Nova" },
        { "label": "Shimmer", "value": "shimmer", "bufferId": "openai-Shimmer" }
      ]
    }
  ],
  "WhisperModel": {
    "model": "whisper-1",
    "name": "Whisper1",
    "price": 0
  }
}

启动项目

在终端命令行下切换到 <你本地的fastGPT项目路径> 目录下。

赋予脚本执行权限

chmod -R +x ./scripts/

安装依赖

在代码根目录下执行以下命令,会安装根 package、projects 和 packages 内所有依赖:

pnpm i

切换到应用目录

cd projects/app

运行开发模式

pnpm dev
  • 4
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Swain_Woo

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值