Skip to content

Commit

Permalink
4.8.3 (#1654)
Browse files Browse the repository at this point in the history
* Milvus (#1644)

* feat: support regx

* 4.8.3 test and fix (#1648)

* perf: version tip

* feat: sandbox support log

* fix: debug component render

* fix: share page header

* fix: input guide auth

* fix: iso viewport

* remove file

* fix: route url

* feat: add debug timout

* perf: reference select support trigger

* perf: session code

* perf: theme

* perf: load milvus
  • Loading branch information
c121914yu authored Jun 1, 2024
1 parent 9fc6a8c commit a259d03
Show file tree
Hide file tree
Showing 81 changed files with 1,777 additions and 596 deletions.
2 changes: 0 additions & 2 deletions .github/workflows/preview-image.yml
Original file line number Diff line number Diff line change
Expand Up @@ -4,8 +4,6 @@ on:
paths:
- 'projects/app/**'
- 'packages/**'
branches:
- 'main'
workflow_dispatch:

jobs:
Expand Down
1 change: 1 addition & 0 deletions .npmrc
Original file line number Diff line number Diff line change
@@ -1 +1,2 @@
public-hoist-pattern[]=*tiktoken*
public-hoist-pattern[]=*@zilliz/milvus2-sdk-node*
6 changes: 3 additions & 3 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -52,10 +52,10 @@ https://github.com/labring/FastGPT/assets/15308462/7d3a38df-eb0e-4388-9250-2409b
`1` 应用编排能力
- [x] 提供简易模式,无需操作编排
- [x] 工作流编排
- [x] 源文件引用追踪
- [x] 工具调用
- [x] 插件 - 工作流封装能力
- [ ] Code sandbox
- [x] Code sandbox
- [ ] 循环调用

`2` 知识库能力
- [x] 多库复用,混用
Expand All @@ -65,7 +65,7 @@ https://github.com/labring/FastGPT/assets/15308462/7d3a38df-eb0e-4388-9250-2409b
- [x] 支持 txt,md,html,pdf,docx,pptx,csv,xlsx (有需要更多可 PR file loader)
- [x] 支持 url 读取、CSV 批量导入
- [x] 混合检索 & 重排
- [ ] 支持文件阅读器
- [ ] 标签过滤

`3` 应用调试能力
- [x] 知识库单点搜索测试
Expand Down
Binary file added docSite/assets/imgs/zilliz_key.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
122 changes: 102 additions & 20 deletions docSite/content/zh-cn/docs/development/docker.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,34 +7,60 @@ toc: true
weight: 707
---

## 部署架构图

![](/imgs/sealos-fastgpt.webp)


{{% alert icon="🤖" context="success" %}}

- MongoDB:用于存储除了向量外的各类数据
- PostgreSQL/Milvus:存储向量数据
- OneAPI: 聚合各类 AI API,支持多模型调用 (任何模型问题,先自行通过 OneAPI 测试校验)

{{% /alert %}}

## 推荐配置

### PgVector版本

体验测试首选

{{< table "table-hover table-striped-columns" >}}
| 环境 | 最低配置(单节点) | 推荐配置 |
| ---- | ---- | ---- |
| 测试 | 2c2g | 2c4g |
| 100w 组向量 | 4c8g 50GB | 4c16g 50GB |
| 500w 组向量 | 8c32g | 16c64g 200GB |
| 500w 组向量 | 8c32g 200GB | 16c64g 200GB |
{{< /table >}}

## 部署架构图
### Milvus版本

![](/imgs/sealos-fastgpt.webp)
对于千万级以上向量性能更优秀。

[点击查看 Milvus 官方推荐配置](https://milvus.io/docs/prerequisite-docker.md)

{{< table "table-hover table-striped-columns" >}}
| 环境 | 最低配置(单节点) | 推荐配置 |
| ---- | ---- | ---- |
| 测试 | 2c8g | 4c16g |
| 100w 组向量 | 未测试 | |
| 500w 组向量 | | |
{{< /table >}}

### 1. 准备好代理环境(国外服务器可忽略)
### zilliz cloud版本

确保可以访问 OpenAI,具体方案可以参考:[代理方案](/docs/development/proxy/)。或直接在 Sealos 上 [部署 OneAPI](/docs/development/one-api),既解决代理问题也能实现多 Key 轮询、接入其他大模型
亿级以上向量首选

### 2. 多模型支持
由于向量库使用了 Cloud,无需占用本地资源,无需太关注。

FastGPT 使用了 one-api 项目来管理模型池,其可以兼容 OpenAI 、Azure 、国内主流模型和本地模型等。
## 前置工作

可选择 [Sealos 快速部署 OneAPI](/docs/development/one-api),更多部署方法可参考该项目的 [README](https://github.com/songquanpeng/one-api),也可以直接通过以下按钮一键部署:
### 1. 确保网络环境

<a href="https://template.cloud.sealos.io/deploy?templateName=one-api" rel="external" target="_blank"><img src="https://cdn.jsdelivr.net/gh/labring-actions/templates@main/Deploy-on-Sealos.svg" alt="Deploy on Sealos"/></a>
如果使用`OpenAI`等国外模型接口,请确保可以正常访问,否则会报错:`Connection error` 等。 方案可以参考:[代理方案](/docs/development/proxy/)

## 一、安装 Docker 和 docker-compose
### 2. 准备 Docker 环境

{{< tabs tabTotal="3" >}}
{{< tab tabName="Linux" >}}
Expand Down Expand Up @@ -79,22 +105,75 @@ brew install orbstack
{{< /tab >}}
{{< /tabs >}}

## 二、创建目录并下载 docker-compose.yml

依次执行下面命令,创建 FastGPT 文件并拉取`docker-compose.yml``config.json`,执行完后目录下会有 2 个文件。
## 开始部署

### 1. 下载 docker-compose.yml


非 Linux 环境或无法访问外网环境,可手动创建一个目录,并下载配置文件和对应版本的`docker-compose.yml`

非 Linux 环境或无法访问外网环境,可手动创建一个目录,并下载下面2个链接的文件: [docker-compose.yml](https://github.com/labring/FastGPT/blob/main/files/deploy/fastgpt/docker-compose.yml),[config.json](https://github.com/labring/FastGPT/blob/main/projects/app/data/config.json)
- [config.json](https://github.com/labring/FastGPT/blob/main/projects/app/data/config.json)
- [docker-compose.yml](https://github.com/labring/FastGPT/blob/main/files/docker) (注意,不同向量库版本的文件不一样)

**注意: `docker-compose.yml` 配置文件中 Mongo 为 5.x,部分服务器不支持,需手动更改其镜像版本为 4.4.24**(需要自己在docker hub下载,阿里云镜像没做备份)
{{% alert icon="🤖" context="success" %}}

所有 `docker-compose.yml` 配置文件中 `MongoDB` 为 5.x,需要用到AUX指令集,部分 CPU 不支持,需手动更改其镜像版本为 4.4.24**(需要自己在docker hub下载,阿里云镜像没做备份)

{{% /alert %}}

**Linux 快速脚本**

```bash
mkdir fastgpt
cd fastgpt
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

# pgvector 版本(测试推荐,简单快捷)
curl -o docker-compose.yml https://github.com/labring/FastGPT/blob/main/files/docker/docker-compose-pgvector.yml
# milvus 版本
# curl -o docker-compose.yml https://github.com/labring/FastGPT/blob/main/files/docker/docker-compose-milvus.yml
# zilliz 版本
# curl -o docker-compose.yml https://github.com/labring/FastGPT/blob/main/files/docker/docker-compose-zilliz.yml
```

## 三、启动容器
### 2. 修改 docker-compose.yml 环境变量

{{< tabs tabTotal="3" >}}
{{< tab tabName="PgVector版本" >}}
{{< markdownify >}}

```
无需操作
```

{{< /markdownify >}}
{{< /tab >}}
{{< tab tabName="Milvus版本" >}}
{{< markdownify >}}

```
无需操作
```

{{< /markdownify >}}
{{< /tab >}}
{{< tab tabName="Zilliz版本" >}}
{{< markdownify >}}

![zilliz_key](/imgs/zilliz_key.png)

{{% alert icon="🤖" context="success" %}}

修改`MILVUS_ADDRESS``MILVUS_TOKEN`链接参数,分别对应 `zilliz``Public Endpoint``Api key`,记得把自己ip加入白名单。

{{% /alert %}}

{{< /markdownify >}}
{{< /tab >}}
{{< /tabs >}}

### 3. 启动容器

在 docker-compose.yml 同级目录下执行。请确保`docker-compose`版本最好在2.17以上,否则可能无法执行自动化命令。

Expand All @@ -107,13 +186,13 @@ sleep 10
docker restart oneapi
```

## 四、打开 OneAPI 添加模型
### 4. 打开 OneAPI 添加模型

可以通过`ip:3001`访问OneAPI,默认账号为`root`密码为`123456`

在OneApi中添加合适的AI模型渠道。[点击查看相关教程](/docs/development/one-api/)

## 五、访问 FastGPT
### 5. 访问 FastGPT

目前可以通过 `ip:3000` 直接访问(注意防火墙)。登录用户名为 `root`,密码为`docker-compose.yml`环境变量里设置的 `DEFAULT_ROOT_PSW`

Expand All @@ -125,7 +204,9 @@ docker restart oneapi

### Mongo 副本集自动初始化失败

最新的 docker-compose 示例优化 Mongo 副本集初始化,实现了全自动。目前在 unbuntu20,22 centos7, wsl2, mac, window 均通过测试。如果你的环境特殊,可以手动初始化副本集:
最新的 docker-compose 示例优化 Mongo 副本集初始化,实现了全自动。目前在 unbuntu20,22 centos7, wsl2, mac, window 均通过测试。仍无法正常启动,大部分是因为 cpu 不支持 AUX 指令集,可以切换 Mongo4.x 版本。

如果是由于,无法自动初始化副本集合,可以手动初始化副本集:

1. 终端中执行下面命令,创建mongo密钥:

Expand Down Expand Up @@ -266,13 +347,14 @@ PG 数据库没有连接上/初始化失败,可以查看日志。FastGPT 会
### Operation `auth_codes.findOne()` buffering timed out after 10000ms
mongo连接失败,查看mongo的运行状态对应日志
mongo连接失败,查看mongo的运行状态**对应日志**
可能原因:
1. mongo 服务有没有起来(有些 cpu 不支持 AVX,无法用 mongo5,需要换成 mongo4.x,可以docker hub找个最新的4.x,修改镜像版本,重新运行)
2. 连接数据库的环境变量填写错误(账号密码,注意host和port,非容器网络连接,需要用公网ip并加上 directConnection=true)
3. 副本集启动失败。导致容器一直重启。
4. `Illegal instruction.... Waiting for MongoDB to start`: cpu 不支持 AVX,无法用 mongo5,需要换成 mongo4.x
### 首次部署,root用户提示未注册
Expand Down
4 changes: 2 additions & 2 deletions docSite/content/zh-cn/docs/development/upgrading/482.md
Original file line number Diff line number Diff line change
Expand Up @@ -20,10 +20,10 @@ SANDBOX_URL=内网地址

## Docker 部署

可以拉取最新 [docker-compose.yml](https://github.com/labring/FastGPT/blob/main/files/deploy/fastgpt/docker-compose.yml) 文件参考
可以拉取最新 [docker-compose.yml](https://github.com/labring/FastGPT/blob/main/files/docker/docker-compose.yml) 文件参考

1. 新增一个容器 `sandbox`
2. fastgpt容器新增环境变量: `SANDBOX_URL`
2. fastgpt 和 fastgpt-pro(商业版) 容器新增环境变量: `SANDBOX_URL`
3. sandbox 简易不要开启外网访问,未做凭证校验。

## V4.8.2 更新说明
Expand Down
22 changes: 22 additions & 0 deletions docSite/content/zh-cn/docs/development/upgrading/483.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
---
title: 'V4.8.3(进行中)'
description: 'FastGPT V4.8.3 更新说明'
icon: 'upgrade'
draft: false
toc: true
weight: 821
---

## 升级指南

- fastgpt 镜像 tag 修改成 v4.8.3
- fastgpt-sandbox 镜像 tag 修改成 v4.8.3
- 商业版镜像 tag 修改成 v4.8.3

## V4.8.3 更新说明

1. 新增 - 支持 Milvus 数据库, 可参考最新的 [docker-compose-milvus.yml](https://github.com/labring/FastGPT/blob/main/files/docker/docker-compose-milvus.yml).
2. 新增 - 给 chat 接口 empty answer 增加 log,便于排查模型问题。
3. 新增 - ifelse判断器,字符串支持正则。
4. 新增 - 代码支持
5. 修复 - 变量更新在 Debug 模式下出错。
Loading

0 comments on commit a259d03

Please sign in to comment.