Skip to content

Commit

Permalink
4.8.19-feature (#3636)
Browse files Browse the repository at this point in the history
* feat: sync org from wecom, pref: member list pagination (#3549)

* feat: sync org

* chore: fe

* chore: loading

* chore: type

* pref: team member list change to pagination. Edit a sort of list apis.

* feat: member update avatar

* chore: user avatar move to tmb

* chore: init scripts move user avatar

* chore: sourceMember

* fix: list api sourceMember

* fix: member sync

* fix: pagination

* chore: adjust code

* chore: move changeOwner to pro

* chore: init v4819 script

* chore: adjust code

* chore: UserBox

* perf: scroll page code

* perf: list data

* docs:更新用户答疑 (#3576)

* docs: add custom uid docs (#3572)

* fix: pagination bug (#3577)

* 4.8.19 test (#3584)

* faet: dataset search filter

* fix: scroll page

* fix: collection list api old version (#3591)

* fix: collection list api format

* fix: type error of addSourceMemeber

* fix: scroll fetch (#3592)

* fix: yuque dataset file folder can enter (#3593)

* perf: load members;perf: yuque load;fix: workflow llm params cannot close (#3594)

* chat openapi doc

* feat: dataset openapi doc

* perf: load members

* perf: member load code

* perf: yuque load

* fix: workflow llm params cannot close

* fix: api dataset reference tag preview (#3600)

* perf: doc

* feat: chat page config

* fix: http parse (#3634)

* update doc

* fix: http parse

* fix code run node reset template (#3633)

Co-authored-by: Archer <[email protected]>

* docs:faq (#3627)

* docs:faq

* docsFix

* perf: sleep plugin

* fix: selector

---------

Co-authored-by: Finley Ge <[email protected]>
Co-authored-by: Jiangween <[email protected]>
Co-authored-by: heheer <[email protected]>
  • Loading branch information
4 people authored Jan 20, 2025
1 parent 9f33729 commit 3c97757
Show file tree
Hide file tree
Showing 170 changed files with 2,318 additions and 1,616 deletions.
Binary file added docSite/assets/imgs/dataset3.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docSite/assets/imgs/dataset4.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docSite/assets/imgs/faq1.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docSite/assets/imgs/faq2.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docSite/assets/imgs/faq3.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docSite/assets/imgs/other1.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docSite/assets/imgs/other2.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docSite/assets/imgs/other3.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docSite/assets/imgs/quizApp1.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added docSite/assets/imgs/quizApp2.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
47 changes: 47 additions & 0 deletions docSite/content/zh-cn/docs/development/faq.md
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,53 @@ images: []

## 二、通用问题

### 通过sealos部署的话,是否没有本地部署的一些限制?
![](/imgs/faq1.png)
这是索引模型的长度限制,通过任何方式部署都一样的,但不同索引模型的配置不一样,可以在后台修改参数。

### sealos怎么挂载 小程序配置文件

新增配置文件:/app/projects/app/public/xxxx.txt
如图
![](/imgs/faq2.png)

### 数据库3306端口被占用了,启动服务失败
![](/imgs/faq3.png)

mysql 只有 oneAPI 用到,外面一般不需要调用,所以可以
- 把 3306:3306 的映射去掉/或者直接改一个映射。

```yaml
# 在 docker-compose.yaml 文件内
# ...
mysql:
image: mysql:8.0.36
ports:
- 3306:3306 # 这个端口被占用了!
# - 3307:3306 # 直接改一个。。和外面的不冲突
# *empty* 或者直接删了,反正外面用不到
oneapi:
container_name: oneapi
image: ghcr.io/songquanpeng/one-api:latest
environment:
- SQL_DSN=root:oneapimmysql@tcp(mysql:3306)/oneapi # 这不用改,容器内外网络是隔离的
```
- 另一种做法是可以直接连现有的 mysql, 要改 oneAPI 的环境变量。
```yaml
# 在 docker-compose.yaml 文件内
# ...
# mysql: # 要连外面的,这个玩意用不到了
# image: mysql:8.0.36
# ports:
# - 3306:3306 # 这个端口被占用了!
oneapi:
container_name: oneapi
image: ghcr.io/songquanpeng/one-api:latest
environment:
- SQL_DSN=root:oneapimmysql@tcp(mysql:3306)/oneapi # 改成外面的链接字符串
```
### 本地部署的限制
具体内容参考https://fael3z0zfze.feishu.cn/wiki/OFpAw8XzAi36Guk8dfucrCKUnjg。
Expand Down
26 changes: 25 additions & 1 deletion docSite/content/zh-cn/docs/development/openapi/auth.md
Original file line number Diff line number Diff line change
Expand Up @@ -55,4 +55,28 @@ curl --location --request POST 'https://api.fastgpt.in/api/v1/chat/completions'
}
]
}'
```
```

## 自定义用户 ID

`v4.8.13`后支持传入自定义的用户 ID, 并且存入历史记录中。

```sh
curl --location --request POST 'https://api.fastgpt.in/api/v1/chat/completions' \
--header 'Authorization: Bearer fastgpt-xxxxxx' \
--header 'Content-Type: application/json' \
--data-raw '{
"chatId": "111",
"stream": false,
"detail": false,
"messages": [
{
"content": "导演是谁",
"role": "user"
}
],
"customUid": "xxxxxx"
}'
```

在历史记录中,该条记录的使用者会显示为 `xxxxxx`
2 changes: 1 addition & 1 deletion docSite/content/zh-cn/docs/development/openapi/chat.md
Original file line number Diff line number Diff line change
Expand Up @@ -686,7 +686,7 @@ curl --location --request POST 'http://localhost:3000/api/core/chat/getHistories
- appId - 应用 Id
- offset - 偏移量,即从第几条数据开始取
- pageSize - 记录数量
- source - 对话源
- source - 对话源。source=api,表示获取通过 API 创建的对话(不会获取到页面上的对话记录)
{{% /alert %}}

{{< /markdownify >}}
Expand Down
21 changes: 17 additions & 4 deletions docSite/content/zh-cn/docs/development/openapi/dataset.md
Original file line number Diff line number Diff line change
Expand Up @@ -733,6 +733,21 @@ data 为集合的 ID。
{{< tab tabName="请求示例" >}}
{{< markdownify >}}

**4.8.19+**
```bash
curl --location --request POST 'http://localhost:3000/api/core/dataset/collection/listv2' \
--header 'Authorization: Bearer {{authorization}}' \
--header 'Content-Type: application/json' \
--data-raw '{
"offset":0,
"pageSize": 10,
"datasetId":"6593e137231a2be9c5603ba7",
"parentId": null,
"searchText":""
}'
```

**4.8.19-(不再维护)**
```bash
curl --location --request POST 'http://localhost:3000/api/core/dataset/collection/list' \
--header 'Authorization: Bearer {{authorization}}' \
Expand All @@ -753,7 +768,7 @@ curl --location --request POST 'http://localhost:3000/api/core/dataset/collectio
{{< markdownify >}}

{{% alert icon=" " context="success" %}}
- pageNum: 页码(选填)
- offset: 偏移量
- pageSize: 每页数量,最大30(选填)
- datasetId: 知识库的ID(必填)
- parentId: 父级Id(选填)
Expand All @@ -773,9 +788,7 @@ curl --location --request POST 'http://localhost:3000/api/core/dataset/collectio
"statusText": "",
"message": "",
"data": {
"pageNum": 1,
"pageSize": 10,
"data": [
"list": [
{
"_id": "6593e137231a2be9c5603ba9",
"parentId": null,
Expand Down
22 changes: 22 additions & 0 deletions docSite/content/zh-cn/docs/development/upgrading/4819.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
---
title: 'V4.8.19(进行中)'
description: 'FastGPT V4.8.19 更新说明'
icon: 'upgrade'
draft: false
toc: true
weight: 806
---


## 完整更新内容

1. 新增 - 工作流知识库检索支持按知识库权限进行过滤。
2. 新增 - 飞书/语雀知识库查看原文。
3. 新增 - 流程等待插件,可以等待 n 毫秒后继续执行流程。
4. 优化 - 成员列表分页加载。
5. 优化 - 统一分页加载代码。
6. 优化 - 对话页面加载时,可配置是否为独立页面。
7. 修复 - 语雀文件库导入时,嵌套文件内容无法展开的问题。
8. 修复 - 工作流编排中,LLM 参数无法关闭问题。
9. 修复 - 工作流编排中,代码运行节点还原模板问题。
10. 修复 - HTTP 接口适配对象字符串解析。
42 changes: 42 additions & 0 deletions docSite/content/zh-cn/docs/faq/app.md
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,19 @@ weight: 908

定时执行会在应用发布后生效,会在后台生效。

## V4.8.18-FIX2中提到“ 1. 修复 HTTP 节点, {{}} 格式引用变量兼容问题。建议尽快替换 / 模式取变量, {{}} 语法已弃用。”替换{{}}引用格式是仅仅只有在http节点,还是所有节点的都会有影响?

只有 http 节点用到这个语法。

## 工作流类型的应用在运行预览可以正常提问返回,但是发布免登录窗口之后有问题。

一般是没正确发布,在工作流右上角点击【保存并发布】。

## 如何解决猜你想问使用中文回答显示

注意需要更新到V4.8.17及以上,把猜你想问的提示词改成中文。
![](/imgs/quizApp2.png)

## AI对话回答要求中的Markdown语法取消

修改知识库默认提示词, 默认用的是标准模板提示词,会要求按 Markdown 输出,可以去除该要求:
Expand All @@ -38,3 +51,32 @@ A: 通常是由于上下文不一致导致,可以在对话日志中,找到
| | | |
| --- | --- | --- |
| ![](/imgs/image-85.png) | ![](/imgs/image-86.png) | ![](/imgs/image-87.png) |
在针对知识库的回答要求里有, 要给它配置提示词,不然他就是默认的,默认的里面就有该语法。

## 工作流操作:一个工作流,以一个问题分类节点开始,根据不同的分类导入到不同的分支,访问相应的知识库和AI对话,AI对话返回内容后,怎么样不进入问题分类节点,而是将问题到知识库搜索,然后把历史记录一起作为背景再次AI查询。

做个判断器,如果是初次开始对话也就是历史记录为0,就走问题分类;不为零直接走知识库和ai。

## 实时对话,设置 fastgpt 定时,比如每隔 3000MS 去拿一次 webhook发送过来的消息到AI页面

定时执行没有这么高频率的去拿信息的,想要实现在企微里面的实时对话的机器人,
目前通过低代码的工作流构建应该是不行的,只能自己写代码,然后去调用 FastGPT 的 APIKey 回复。企业微信似乎没有提供「自动监听」群聊消息的接口(或是通过 at 机器人这种触发消息推送)。应该只能发消息给应用,接收这个 https://developer.work.weixin.qq.com/document/path/90238 文档中的消息推送实现实时对话。或者是定时去拿群聊消息,通过这个文档所示的接口https://developer.work.weixin.qq.com/document/path/98914,然后用这个接口 https://developer.work.weixin.qq.com/document/path/90248 去推送消息。

## 工作流连接数据库

工作流提供该连接数据库功能,用这个数据库连接的 plugin 可以实现 text2SQL,但是相对危险,不建议做写入等操作。

![](/imgs/quizApp1.png)

## 关于循环体,协助理解循环体的循环条件和终止条件、循环的方式,循环体内参数调用后、在循环体内属于是局部作用域的参数还是全局作用域的参数

可理解为 for 函数,传一个数组,每个数据都执行一次。

## 公式无法正常显示

添加相关提示词,引导模型按 Markdown 输出公式

```bash
Latex inline: \(x^2\)
Latex block: $$e=mc^2$$
```
23 changes: 21 additions & 2 deletions docSite/content/zh-cn/docs/faq/dataset.md
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,25 @@ weight: 910
* **文件处理模型**:用于数据处理的【增强处理】和【问答拆分】。在【增强处理】中,生成相关问题和摘要,在【问答拆分】中执行问答对生成。
* **索引模型**:用于向量化,即通过对文本数据进行处理和组织,构建出一个能够快速查询的数据结构。

## 知识库支持Excel类文件的导入

xlsx等都可以上传的,不止支持CSV。

## 知识库tokens的计算方式

统一按gpt3.5标准。

## 误删除重排模型后,重排模型怎么加入到fastgpt

![](/imgs/dataset3.png)

config.json文件里面配置后就可以勾选重排模型

## 线上平台上创建了应用和知识库,到期之后如果短期内不续费,数据是否会被清理。

免费版是三十天不登录后清空知识库,应用不会动。其他付费套餐到期后自动切免费版。
![](/imgs/dataset4.png)

## 基于知识库的查询,但是问题相关的答案过多。ai回答到一半就不继续回答。

FastGPT回复长度计算公式:
Expand All @@ -37,7 +56,7 @@ FastGPT回复长度计算公式:

![](/imgs/dataset2.png)

1. 私有化部署的时候,后台配模型参数,可以在配置最大上文时候,预留一些空间,比如 128000 的模型,可以只配置 120000, 剩余的空间后续会被安排给输出
另外私有化部署的时候,后台配模型参数,可以在配置最大上文时,预留一些空间,比如 128000 的模型,可以只配置 120000, 剩余的空间后续会被安排给输出


## 受到模型上下文的限制,有时候达不到聊天记录的轮次,连续对话字数过多就会报上下文不够的错误。
Expand All @@ -61,4 +80,4 @@ FastGPT回复长度计算公式:

![](/imgs/dataset2.png)

1. 私有化部署的时候,后台配模型参数,可以在配置最大上文时候,预留一些空间,比如 128000 的模型,可以只配置 120000, 剩余的空间后续会被安排给输出
另外,私有化部署的时候,后台配模型参数,可以在配置最大上文时,预留一些空间,比如 128000 的模型,可以只配置 120000, 剩余的空间后续会被安排给输出
12 changes: 11 additions & 1 deletion docSite/content/zh-cn/docs/faq/other.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,4 +8,14 @@ weight: 918

## oneapi 官网是哪个

只有开源的 README,没官网,GitHub: https://github.com/songquanpeng/one-api
只有开源的 README,没官网,GitHub: https://github.com/songquanpeng/one-api

## 想做多用户和多chat key

![](/imgs/other1.png)
![](/imgs/other2.png)

多用户问题:只能采取二开或者商业版

多chat key问题:1. 私有化部署情况下,oneapi解决。2. Saas或者商业版中,可以为每个团队设置单独的key。
![](/imgs/other3.png)
Original file line number Diff line number Diff line change
Expand Up @@ -22,10 +22,11 @@ FastGPT v4.8.16 版本开始,商业版用户支持飞书知识库导入,用

## 2. 配置应用权限

创建应用后,进入应用可以配置相关权限,这里需要增加两个权限
创建应用后,进入应用可以配置相关权限,这里需要增加**3个权限**

1. 获取云空间文件夹下的云文档清单
2. 查看新版文档
3. 查看、评论、编辑和管理云空间中所有文件

![alt text](/imgs/image-41.png)

Expand Down
30 changes: 15 additions & 15 deletions docSite/content/zh-cn/docs/guide/workbench/workflow/loop.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
---
title: "循环执行"
description: "FastGPT 循环运行节点介绍和使用"
title: "批量运行"
description: "FastGPT 批量运行节点介绍和使用"
icon: "input"
draft: false
toc: true
Expand All @@ -9,15 +9,15 @@ weight: 260

## 节点概述

**循环运行**】节点是 FastGPT V4.8.11 版本新增的一个重要功能模块。它允许工作流对数组类型的输入数据进行迭代处理,每次处理数组中的一个元素,并自动执行后续节点,直到完成整个数组的处理。
**批量运行**】节点是 FastGPT V4.8.11 版本新增的一个重要功能模块。它允许工作流对数组类型的输入数据进行迭代处理,每次处理数组中的一个元素,并自动执行后续节点,直到完成整个数组的处理。

这个节点的设计灵感来自编程语言中的循环结构,但以可视化的方式呈现。

![循环运行节点](/imgs/fastgpt-loop-node.png)
![批量运行节点](/imgs/fastgpt-loop-node.png)

> 在程序中,节点可以理解为一个个 Function 或者接口。可以理解为它就是一个**步骤**。将多个节点一个个拼接起来,即可一步步的去实现最终的 AI 输出。
**循环运行**】节点本质上也是一个 Function,它的主要职责是自动化地重复执行特定的工作流程。
**批量运行**】节点本质上也是一个 Function,它的主要职责是自动化地重复执行特定的工作流程。

## 核心特性

Expand All @@ -41,9 +41,9 @@ weight: 260

## 应用场景

**循环运行**】节点的主要作用是通过自动化的方式扩展工作流的处理能力,使 FastGPT 能够更好地处理批量任务和复杂的数据处理流程。特别是在处理大规模数据或需要多轮迭代的场景下,循环运行节点能显著提升工作流的效率和自动化程度
**批量运行**】节点的主要作用是通过自动化的方式扩展工作流的处理能力,使 FastGPT 能够更好地处理批量任务和复杂的数据处理流程。特别是在处理大规模数据或需要多轮迭代的场景下,批量运行节点能显著提升工作流的效率和自动化程度

**循环运行**】节点特别适合以下场景:
**批量运行**】节点特别适合以下场景:

1. **批量数据处理**
- 批量翻译文本
Expand All @@ -64,7 +64,7 @@ weight: 260

### 输入参数设置

**循环运行**】节点需要配置两个核心输入参数:
**批量运行**】节点需要配置两个核心输入参数:

1. **数组 (必填)**:接收一个数组类型的输入,可以是:
- 字符串数组 (`Array<string>`)
Expand Down Expand Up @@ -95,7 +95,7 @@ weight: 260

### 批量处理数组

假设我们有一个包含多个文本的数组,需要对每个文本进行 AI 处理。这是循环运行节点最基础也最常见的应用场景
假设我们有一个包含多个文本的数组,需要对每个文本进行 AI 处理。这是批量运行节点最基础也最常见的应用场景

#### 实现步骤

Expand All @@ -114,9 +114,9 @@ weight: 260
return { textArray: texts };
```

2. 配置循环运行节点
2. 配置批量运行节点

![配置循环运行节点](/imgs/fastgpt-loop-node-example-2.png)
![配置批量运行节点](/imgs/fastgpt-loop-node-example-2.png)

- 数组输入:选择上一步代码运行节点的输出变量 `textArray`
- 循环体内添加一个【AI 对话】节点,用于处理每个文本。这里我们输入的 prompt 为:`请将这段文本翻译成英文`
Expand All @@ -128,7 +128,7 @@ weight: 260
![运行流程](/imgs/fastgpt-loop-node-example-3.png)

1. 【代码运行】节点执行,生成测试数组
2.循环运行】节点接收数组,开始遍历
2.批量运行】节点接收数组,开始遍历
3. 对每个数组元素:
- 【AI 对话】节点处理当前元素
- 【指定回复】节点输出翻译后的文本
Expand All @@ -144,7 +144,7 @@ weight: 260
- 需要维护上下文的连贯性
- 翻译质量需要多轮优化

**循环运行**】节点可以很好地解决这些问题。
**批量运行**】节点可以很好地解决这些问题。

#### 实现步骤

Expand Down Expand Up @@ -281,9 +281,9 @@ weight: 260

这里我们用到了 [Jina AI 开源的一个强大的正则表达式](https://x.com/JinaAI_/status/1823756993108304135),它能利用所有可能的边界线索和启发式方法来精确切分文本。

2. 配置循环运行节点
2. 配置批量运行节点

![配置循环运行节点](/imgs/fastgpt-loop-node-example-5.png)
![配置批量运行节点](/imgs/fastgpt-loop-node-example-5.png)

- 数组输入:选择上一步代码运行节点的输出变量 `chunks`
- 循环体内添加一个【代码运行】节点,对源文本进行格式化。
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -212,7 +212,7 @@ export default async function (ctx: FunctionContext): Promise<IResponse>{

![](/imgs/translate13.png)

## 循环执行
## 批量运行

长文反思翻译比较关键的一个部分,就是对多个文本块进行循环反思翻译

Expand Down
Loading

0 comments on commit 3c97757

Please sign in to comment.