部署私有知识库项目FastGPT

news2024/12/22 10:25:21

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

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 的格式取决于你所使用的客户端。

 

 

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/879969.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【推荐】7个可以改变我们在3dMax中工作方式的插件

​以下给大家介绍的这些插件,将改变我们在3d Max中的工作方式,让生活更加轻松。 Glue Utility(粘合实用程序) 这些年来,这个工具改变了我的游戏规则。它使我能够执行许多任务,否则这些任务要么是不可能…

在矩池云使用 ChatGLM2-6B ptuning

本文参考 ChatGLM2-6B 官方文档,在矩池云复现了对于 ChatGLM2-6B 模型基于 P-Tuning v2 的微调。P-Tuning v2 将需要微调的参数量减少到原来的 0.1%,再通过模型量化、Gradient Checkpoint 等方法,最低只需要 7GB 显存即可运行。 官方文档地址…

一百五十六、Kettle——Linux上安装的Kettle9.3连接ClickHouse数据库(亲测,附流程截图)

一、目标 kettle9.3在Linux上安装好后,需要与ClickHouse数据库建立连接 二、前提准备 (一)在Linux已经安装好kettle并可以启动kettle (二)已知kettle和ClickHouse版本 1、kettle版本是9.3 2、ClickHouse版本是21…

深度学习优化器

1、什么是优化器 优化器用来寻找模型的最优解。 2、常见优化器 2.1. 批量梯度下降法BGD(Batch Gradient Descent) 2.1.1、BGD表示 BGD 采用整个训练集的数据来计算 cost function 对参数的梯度: 假设要学习训练的模型参数为W,代价函数为J(W),…

项目管理工具探析:详细介绍四种常用选择

市场上的项目管理工具,主要是解决项目计划制定、任务协作、文档协作这几方面的问题, 下面简单聊聊一些自己用过的工具: 1、Excel/在线协作表格 如果项目简单,任务数少,没什么依赖,那么就可以用Excel来做项目…

静电放电发生器的操控模式和释放模式有哪些方式

静电放电是一种自然现象 ,当两种不同介电强度的材料相互摩擦时,就会产生静电电荷,当其中一种材料上的静电荷积累到一定程度,在与另外一个物体接触时,就会通过这个物体到大地的阻抗而进行放电。静电放电及影响是电子设备…

四大运营商的大流量卡测评,看完您会选哪个运营商?

很多朋友都说网上的流量卡资费是真的便宜,但是小编认为资费便宜归便宜,但是运营商的小心思也有不少。 ​ 今天小编就带大家看一看三大运营商推出的正规流量卡都有哪些小心思? 首先,移动推出的线上大流量卡数量是最少的&#xff…

算法|Day37 动态规划5

LeetCode 1049- 最后一块石头的重量 II 题目链接:力扣 题目描述:有一堆石头,用整数数组 stones 表示。其中 stones[i] 表示第 i 块石头的重量。 每一回合,从中选出任意两块石头,然后将它们一起粉碎。假设石头的重量…

Blazor : Component parameter should be auto property,无法修改get;set;

文章目录 Blazor 无法在get;set;里面定义方法 Blazor 无法在get;set;里面定义方法 Blazor Component组件 其实原因就是微软觉得你在get;set;里面放自定义逻辑,太容易出现无限父子回调的问题。如果你要在get时候进行某种逻辑,那你就在OnParameterSetAs…

归并排序 与 计数排序

目录 1.归并排序 1.1 递归实现归并排序: 1.2 非递归实现归并排序 1.3 归并排序的特性总结: 1.4 外部排序 2.计数排序 2.1 操作步骤: 2.2 计数排序的特性总结: 3. 7种常见比较排序比较 1.归并排序 基本思想: 归并排序(MERGE-SORT)是建立在归并操作上的一种…

Qgis统计面要素内点的数量,不同类型点的数量

简单: 统计面要素内点的数量。 工具栏直接搜索:统计点在多边形中的数量 统计面要素内不同类型点的数量。 查看QGIS-11 “按位置连接属性工具”——“按类别统计工具”——pandas透视表统计 数据透视表参考链接 参考链接: QGIS入门-9 统计面…

leetcode375. 猜数字大小 II(动态规划-java)

猜数字大小 II lc - 375 猜数字大小 II题目描述暴力递归 记忆化搜索代码演示动态规划 动态规划 lc - 375 猜数字大小 II 题目描述 我们正在玩一个猜数游戏,游戏规则如下: 我从 1 到 n 之间选择一个数字。 你来猜我选了哪个数字。 如果你猜到正确的数字&…

开学季 | 新生入学必备好物,快来看看你漏掉了哪些!

一转眼年就过完了,又到了开学季。有很多学生又要重新走进校园,开始自己的学生宿舍生活。作为一个从初中就开始住宿舍的过来人,有一些东西确实是我当时在学校里用过的,非常好用的神器,可以非常好的帮助我们生活、学习或…

界面组件DevExpress Reporting——支持图表本地化和可绑定属性

DevExpress Reporting是.NET Framework下功能完善的报表平台,它附带了易于使用的Visual Studio报表设计器和丰富的报表控件集,包括数据透视表、图表,因此您可以构建无与伦比、信息清晰的报表。 在最近的更新(v23.1)中,官方扩展了…

无脑入门pytorch系列(三)—— nn.Linear

本系列教程适用于没有任何pytorch的同学(简单的python语法还是要的),从代码的表层出发挖掘代码的深层含义,理解具体的意思和内涵。pytorch的很多函数看着非常简单,但是其中包含了很多内容,不了解其中的意思…

智能设备管理系统对企业设备管理效果有作用吗?

智能设备管理系统对企业设备管理效果具有显著的作用和积极的影响。它可以提高设备管理的效率、准确性和可靠性,帮助企业降低运营成本、提高生产效率,并为企业提供更好的决策支持。以下是智能设备管理系统对企业设备管理效果的几个方面影响: …

手机图片怎么转换成pdf?这几个转换方法看看

手机图片怎么转换成pdf?如果你在手机上需要将一些图片转换成PDF文件,将图片转为PDF文档有多种优点。首先,PDF格式是一种通用的文件格式,可以在几乎所有设备上进行查看和打印,而且保留了原始文件的格式和布局。其次&…

为什么很多人认为ChatGPT最好的替代工具是Claude?

ChatGPT引领着生成式AI聊天机器人领域,但Claude AI看起来是一个有力的竞争者。 前段时间,ChatGPT的强劲竞争对手Claude2面世。当时很多人认为它可能会取代ChatGPT,在体验过一段时间之后,深以为然。原因如下: 更强大的…

使用vscode进行远程调试

官方调试手册:vscode官方调试手册 1.安装python扩展 如果是远程连接的话,一定要在ssh上启用扩展。不然创建基于python的配置文件时就会提示,无python扩展。 2.新建配置文件,并修改参数 点击左侧第四个按钮,运行与调试…

一、Dubbo 简介与架构

一、Dubbo 简介与架构 1.1 应用架构演进过程 单体应用:JEE、MVC分布式应用:SOA、微服务化 1.2 Dubbo 简介一种分布式 RPC 框架,对专业知识(序列化/反序列化、网络、多线程、设计模式、性能优化等)进行了更高层的抽象和…