部署私有知识库项目FastGPT

FastGPT 是一个基于 LLM 大语言模型的知识库问答系统,提供开箱即用的数据处理、模型调用等能力。同时可以通过 Flow 可视化进行工作流编排,从而实现复杂的问答场景。

项目源码:

GitHub - c121914yu/FastGPT: A platform that uses the OpenAI API to quickly build an AI knowledge base, supporting many-to-many relationships.A platform that uses the OpenAI API to quickly build an AI knowledge base, supporting many-to-many relationships. - GitHub - c121914yu/FastGPT: A platform that uses the OpenAI API to quickly build an AI knowledge base, supporting many-to-many relationships.https://github.com/c121914yu/FastGPT/

项目文档:

快速了解 FastGpt | FastGptFastGPT 是一个基于 LLM 大语言模型的知识库问答系统,提供开箱即用的数据处理、模型调用等能力。同时可以通过 Flow 可视化进行工作流编排,从而实现复杂的问答场景!https://doc.fastgpt.run/docs/intro

项目编译

一、初始配置

1. 环境变量

复制.env.template 文件,生成一个.env.local 环境变量文件夹,修改.env.local 里内容才是有效的变量

2. config 配置文件

复制 data/config.json 文件,生成一个 data/config.local.json 配置文件

二、运行

cd client
npm install
npm run dev

三、镜像打包

docker build -t dockername/fastgpt .

打包成功后使用下面命令查看镜像 

docker images

docker-compose 快速部署

一、预先准备

1、准备好代理环境,确保可访问到 OpenAI,国外服务器可忽略。

2、安装 docker 和 docker-compose

二、创建 docker-compose.yml 文件

创建一个 docker-compose.yml 文件,粘贴下面的内容。只需要改 fastgpt 容器的 3 个参数即可启动。

# 非 host 版本, 不使用本机代理
version: '3.3'
services:
  pg:
    image: ankane/pgvector:v0.4.2 # git
    # image: registry.cn-hangzhou.aliyuncs.com/fastgpt/pgvector:v0.4.2 # 阿里云
    container_name: pg
    restart: always
    ports: # 生产环境建议不要暴露
      - 5432:5432
    networks:
      - fastgpt
    environment:
      # 这里的配置只有首次运行生效。修改后,重启镜像是不会生效的。需要把持久化数据删除再重启,才有效果
      - POSTGRES_USER=username
      - POSTGRES_PASSWORD=password
      - POSTGRES_DB=postgres
    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
    restart: always
    ports: # 生产环境建议不要暴露
      - 27017:27017
    networks:
      - fastgpt
    environment:
      # 这里的配置只有首次运行生效。修改后,重启镜像是不会生效的。需要把持久化数据删除再重启,才有效果
      - MONGO_INITDB_ROOT_USERNAME=username
      - MONGO_INITDB_ROOT_PASSWORD=password
    volumes:
      - ./mongo/data:/data/db
  fastgpt:
    container_name: fastgpt
    # image: c121914yu/fast-gpt:latest # docker hub
    image: registry.cn-hangzhou.aliyuncs.com/fastgpt/fastgpt:latest # 阿里云
    ports:
      - 3000:3000
    networks:
      - fastgpt
    depends_on:
      - mongo
      - pg
    restart: always
    environment:
      # root 密码,用户名为: root
      - DEFAULT_ROOT_PSW=1234
      # 中转地址,如果是用官方号,不需要管
      - OPENAI_BASE_URL=https://api.openai.com/v1
      - CHAT_API_KEY=sk-xxxx
      - DB_MAX_LINK=5 # database max link
      - TOKEN_KEY=any
      - ROOT_KEY=root_key
      # mongo 配置,不需要改
      - MONGODB_URI=mongodb://username:password@mongo:27017/?authSource=admin
      - MONGODB_NAME=fastgpt
      # pg配置.
      - PG_HOST=pg
      - PG_PORT=5432
      - PG_USER=username
      - PG_PASSWORD=password
      - PG_DB_NAME=postgres
networks:
  fastgpt:

三、运行 docker-compose

在 docker-compose.yml 同级目录下执行:

docker-compose up -d

四、访问

可以通过 http://127.0.0.1:3000 直接访问。登录用户名为 root,密码为刚刚环境变量里设置的 DEFAULT_ROOT_PSW。如果需要域名访问,可以自行安装 Nginx。

使用one-api管理多模型

推荐使用 one-api 项目来管理 key 池,兼容 openai 、微软和国内主流模型等。

支持多种大模型:

  • OpenAI ChatGPT 系列模型(支持 Azure OpenAI API)
  • Anthropic Claude 系列模型
  • Google PaLM2 系列模型
  • 百度文心一言系列模型
  • 阿里通义千问系列模型
  • 讯飞星火认知大模型
  • 智谱 ChatGLM 系列模型

一、基于 Docker 进行部署

部署命令:

docker run --name one-api -d --restart always -p 3003:3000 -e TZ=Asia/Shanghai -v /home/data/one-api:/data justsong/one-api

其中,-p 3003:3000 中的第一个 3003 是宿主机的端口,可以根据需要进行修改。

数据将会保存在宿主机的 /home/data/one-api 目录,请确保该目录存在且具有写入权限,或者更改为合适的目录。

如果上面的镜像无法拉取,可以尝试使用 GitHub 的 Docker 镜像,将上面的 justsong/one-api 替换为 ghcr.io/songquanpeng/one-api 即可。

使用 http://127.0.0.1:3003 访问one-api管理页面

初始账号用户名为 root,密码为 123456

二、使用方法

渠道页面中添加你的 API Key,之后在令牌页面中新增访问令牌。

之后就可以使用你的令牌访问 One API 了,使用方式与 OpenAI API 一致。

你需要在各种用到 OpenAI API 的地方设置 API Base 为你的 One API 的部署地址,API Key 则为你在 One API 中生成的令牌。

注意,具体的 API Base 的格式取决于你所使用的客户端。

### FastGPT私有部署方法 FastGPT 是一种基于大语言模型 (LLM) 的知识库问答系统,支持数据处理、模型调用以及通过可视化工具 Flow 进行复杂的工作流编排[^1]。为了满足本地环境的需求并降低硬件成本,官方提供了详细的私有部署指南。 #### 部署前准备 在开始之前,需要确保具备以下条件: - Docker 和 Docker Compose 已安装于目标服务器上。 - 至少 1 核 CPU 和 1GB RAM 的计算资源以运行基础服务[^2]。 #### 安装步骤概述 以下是私有部署的主要流程: 1. **克隆仓库** 使用 Git 将项目的源码下载到本地机器中。 ```bash git clone https://github.com/your-repo/fastgpt.git cd fastgpt ``` 2. **拉取镜像** 执行命令来获取所需的容器镜像文件。 ```bash docker-compose pull ``` 3. **初始化配置** 创建必要的配置文件,并调整参数适配实际需求。 ```bash cp .env.example .env nano .env ``` 编辑 `.env` 文件中的数据库连接字符串和其他敏感设置项。 4. **启动服务** 启动所有组件并将它们绑定在一起运作。 ```bash docker-compose up -d ``` 5. **验证状态** 访问指定端口上的 Web 界面确认一切正常工作。 完成上述操作之后,用户便可以在自己的网络内部访问已部署好的实例了。 ```python import requests def check_fastgpt_status(url="http://localhost"): try: response = requests.get(f"{url}/health", timeout=5) if response.status_code == 200 and 'ok' in response.text.lower(): return True, "Service is running." else: return False, f"Unexpected status code {response.status_code}." except Exception as e: return False, str(e) print(check_fastgpt_status()) ``` 此脚本可用于测试 API 是否成功响应。
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值