Compare commits
54 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
4723a08d98 | ||
|
|
3d9c1d5472 | ||
|
|
a75036b626 | ||
|
|
cf1a90c596 | ||
|
|
8aa6b53760 | ||
|
|
7e1d31b5a9 | ||
|
|
bc79d46d4b | ||
|
|
dfd2fed033 | ||
|
|
51559bc821 | ||
|
|
c7681342f7 | ||
|
|
0f4870a7a5 | ||
|
|
763b41b385 | ||
|
|
019bf67e2d | ||
|
|
9b2c3b242a | ||
|
|
4f55025906 | ||
|
|
489bb076a3 | ||
|
|
a9db5b57c5 | ||
|
|
fdb3720b41 | ||
|
|
00641a8652 | ||
|
|
5c56b375c7 | ||
|
|
d8d9b936c4 | ||
|
|
b237a3ec55 | ||
|
|
af894680cb | ||
|
|
58745f8c35 | ||
|
|
f699061dea | ||
|
|
3f72f88591 | ||
|
|
be59c2f6a7 | ||
|
|
795904a357 | ||
|
|
e8824987fa | ||
|
|
b6d650adfb | ||
|
|
710fa37847 | ||
|
|
e22031ca6c | ||
|
|
0c9e10dd2b | ||
|
|
0472dc2967 | ||
|
|
98d4a6ee75 | ||
|
|
c12159bfb4 | ||
|
|
abce1e9cf6 | ||
|
|
c3cc51c9a0 | ||
|
|
519b519458 | ||
|
|
e9d52ada73 | ||
|
|
e1f5483432 | ||
|
|
2c5f88b85f | ||
|
|
2e1bf66d3d | ||
|
|
952771e34d | ||
|
|
49bee95b12 | ||
|
|
0645b274da | ||
|
|
cf8786b194 | ||
|
|
be6269688b | ||
|
|
912b264a47 | ||
|
|
7ef1821557 | ||
|
|
4061b11922 | ||
|
|
bc171db945 | ||
|
|
eb365fef44 | ||
|
|
2e7047cb3b |
2
.github/workflows/build-sandbox-image.yml
vendored
@@ -1,4 +1,4 @@
|
||||
name: Build fastgpt-sandbox images and copy image to docker hub
|
||||
name: Build fastgpt-sandbox images
|
||||
on:
|
||||
workflow_dispatch:
|
||||
push:
|
||||
|
||||
85
.github/workflows/fastgpt-image.yml
vendored
@@ -1,4 +1,4 @@
|
||||
name: Build FastGPT images and copy image to docker hub
|
||||
name: Build FastGPT images
|
||||
on:
|
||||
workflow_dispatch:
|
||||
push:
|
||||
@@ -90,3 +90,86 @@ jobs:
|
||||
-t ${Docker_Hub_Tag} \
|
||||
-t ${Docker_Hub_Latest} \
|
||||
.
|
||||
build-fastgpt-images-sub-route:
|
||||
runs-on: ubuntu-20.04
|
||||
steps:
|
||||
# install env
|
||||
- name: Checkout
|
||||
uses: actions/checkout@v3
|
||||
with:
|
||||
fetch-depth: 1
|
||||
- name: Install Dependencies
|
||||
run: |
|
||||
sudo apt update && sudo apt install -y nodejs npm
|
||||
- name: Set up QEMU (optional)
|
||||
uses: docker/setup-qemu-action@v2
|
||||
- name: Set up Docker Buildx
|
||||
uses: docker/setup-buildx-action@v2
|
||||
with:
|
||||
driver-opts: network=host
|
||||
- name: Cache Docker layers
|
||||
uses: actions/cache@v2
|
||||
with:
|
||||
path: /tmp/.buildx-cache
|
||||
key: ${{ runner.os }}-buildx-${{ github.sha }}
|
||||
restore-keys: |
|
||||
${{ runner.os }}-buildx-
|
||||
|
||||
# login docker
|
||||
- name: Login to GitHub Container Registry
|
||||
uses: docker/login-action@v2
|
||||
with:
|
||||
registry: ghcr.io
|
||||
username: ${{ github.repository_owner }}
|
||||
password: ${{ secrets.GH_PAT }}
|
||||
- name: Login to Ali Hub
|
||||
uses: docker/login-action@v2
|
||||
with:
|
||||
registry: registry.cn-hangzhou.aliyuncs.com
|
||||
username: ${{ secrets.ALI_HUB_USERNAME }}
|
||||
password: ${{ secrets.ALI_HUB_PASSWORD }}
|
||||
- name: Login to Docker Hub
|
||||
uses: docker/login-action@v2
|
||||
with:
|
||||
username: ${{ secrets.DOCKER_HUB_NAME }}
|
||||
password: ${{ secrets.DOCKER_HUB_PASSWORD }}
|
||||
|
||||
# Set tag
|
||||
- name: Set image name and tag
|
||||
run: |
|
||||
if [[ "${{ github.ref_name }}" == "main" ]]; then
|
||||
echo "Git_Tag=ghcr.io/${{ github.repository_owner }}/fastgpt-sub-route:latest" >> $GITHUB_ENV
|
||||
echo "Git_Latest=ghcr.io/${{ github.repository_owner }}/fastgpt-sub-route:latest" >> $GITHUB_ENV
|
||||
echo "Ali_Tag=${{ secrets.ALI_IMAGE_NAME }}/fastgpt-sub-route:latest" >> $GITHUB_ENV
|
||||
echo "Ali_Latest=${{ secrets.ALI_IMAGE_NAME }}/fastgpt-sub-route:latest" >> $GITHUB_ENV
|
||||
echo "Docker_Hub_Tag=${{ secrets.DOCKER_IMAGE_NAME }}/fastgpt-sub-route:latest" >> $GITHUB_ENV
|
||||
echo "Docker_Hub_Latest=${{ secrets.DOCKER_IMAGE_NAME }}/fastgpt-sub-route:latest" >> $GITHUB_ENV
|
||||
else
|
||||
echo "Git_Tag=ghcr.io/${{ github.repository_owner }}/fastgpt-sub-route:${{ github.ref_name }}" >> $GITHUB_ENV
|
||||
echo "Git_Latest=ghcr.io/${{ github.repository_owner }}/fastgpt-sub-route:latest" >> $GITHUB_ENV
|
||||
echo "Ali_Tag=${{ secrets.ALI_IMAGE_NAME }}/fastgpt-sub-route:${{ github.ref_name }}" >> $GITHUB_ENV
|
||||
echo "Ali_Latest=${{ secrets.ALI_IMAGE_NAME }}/fastgpt-sub-route:latest" >> $GITHUB_ENV
|
||||
echo "Docker_Hub_Tag=${{ secrets.DOCKER_IMAGE_NAME }}/fastgpt-sub-route:${{ github.ref_name }}" >> $GITHUB_ENV
|
||||
echo "Docker_Hub_Latest=${{ secrets.DOCKER_IMAGE_NAME }}/fastgpt-sub-route:latest" >> $GITHUB_ENV
|
||||
fi
|
||||
|
||||
- name: Build and publish image for main branch or tag push event
|
||||
env:
|
||||
DOCKER_REPO_TAGGED: ${{ env.DOCKER_REPO_TAGGED }}
|
||||
run: |
|
||||
docker buildx build \
|
||||
-f projects/app/Dockerfile \
|
||||
--platform linux/amd64,linux/arm64 \
|
||||
--build-arg base_url=/fastai \
|
||||
--label "org.opencontainers.image.source=https://github.com/${{ github.repository_owner }}/FastGPT" \
|
||||
--label "org.opencontainers.image.description=fastgpt image" \
|
||||
--push \
|
||||
--cache-from=type=local,src=/tmp/.buildx-cache \
|
||||
--cache-to=type=local,dest=/tmp/.buildx-cache \
|
||||
-t ${Git_Tag} \
|
||||
-t ${Git_Latest} \
|
||||
-t ${Ali_Tag} \
|
||||
-t ${Ali_Latest} \
|
||||
-t ${Docker_Hub_Tag} \
|
||||
-t ${Docker_Hub_Latest} \
|
||||
.
|
||||
|
||||
4
.vscode/settings.json
vendored
@@ -16,8 +16,8 @@
|
||||
"i18n-ally.keystyle": "flat",
|
||||
"i18n-ally.sortKeys": true,
|
||||
"i18n-ally.keepFulfilled": false,
|
||||
"i18n-ally.sourceLanguage": "zh", // 根据此语言文件翻译其他语言文件的变量和内容
|
||||
"i18n-ally.displayLanguage": "zh", // 显示语言
|
||||
"i18n-ally.sourceLanguage": "zh-CN", // 根据此语言文件翻译其他语言文件的变量和内容
|
||||
"i18n-ally.displayLanguage": "zh-CN", // 显示语言
|
||||
"i18n-ally.namespace": true,
|
||||
"i18n-ally.pathMatcher": "{locale}/{namespaces}.json",
|
||||
"i18n-ally.extract.targetPickingStrategy": "most-similar-by-key",
|
||||
|
||||
BIN
docSite/assets/imgs/bing_search_plugin1.png
Normal file
|
After Width: | Height: | Size: 101 KiB |
BIN
docSite/assets/imgs/bing_search_plugin2.png
Normal file
|
After Width: | Height: | Size: 222 KiB |
BIN
docSite/assets/imgs/bing_search_plugin3.png
Normal file
|
After Width: | Height: | Size: 146 KiB |
BIN
docSite/assets/imgs/bing_search_plugin4.png
Normal file
|
After Width: | Height: | Size: 91 KiB |
BIN
docSite/assets/imgs/bing_search_plugin5.png
Normal file
|
After Width: | Height: | Size: 54 KiB |
BIN
docSite/assets/imgs/doc2x_plugin1.png
Normal file
|
After Width: | Height: | Size: 104 KiB |
BIN
docSite/assets/imgs/doc2x_plugin2.png
Normal file
|
After Width: | Height: | Size: 92 KiB |
BIN
docSite/assets/imgs/doc2x_plugin3.png
Normal file
|
After Width: | Height: | Size: 122 KiB |
BIN
docSite/assets/imgs/doc2x_plugin4.png
Normal file
|
After Width: | Height: | Size: 62 KiB |
BIN
docSite/assets/imgs/document_analysis1.png
Normal file
|
After Width: | Height: | Size: 38 KiB |
BIN
docSite/assets/imgs/document_analysis2.png
Normal file
|
After Width: | Height: | Size: 26 KiB |
BIN
docSite/assets/imgs/fastgpt-loop-node-config.png
Normal file
|
After Width: | Height: | Size: 369 KiB |
BIN
docSite/assets/imgs/fastgpt-loop-node-example-1.png
Normal file
|
After Width: | Height: | Size: 68 KiB |
BIN
docSite/assets/imgs/fastgpt-loop-node-example-2.png
Normal file
|
After Width: | Height: | Size: 249 KiB |
BIN
docSite/assets/imgs/fastgpt-loop-node-example-3.png
Normal file
|
After Width: | Height: | Size: 62 KiB |
BIN
docSite/assets/imgs/fastgpt-loop-node-example-4.png
Normal file
|
After Width: | Height: | Size: 145 KiB |
BIN
docSite/assets/imgs/fastgpt-loop-node-example-5.png
Normal file
|
After Width: | Height: | Size: 288 KiB |
BIN
docSite/assets/imgs/fastgpt-loop-node.png
Normal file
|
After Width: | Height: | Size: 162 KiB |
|
Before Width: | Height: | Size: 151 KiB |
|
Before Width: | Height: | Size: 171 KiB |
|
Before Width: | Height: | Size: 65 KiB After Width: | Height: | Size: 54 KiB |
|
Before Width: | Height: | Size: 34 KiB After Width: | Height: | Size: 71 KiB |
|
Before Width: | Height: | Size: 144 KiB After Width: | Height: | Size: 164 KiB |
|
Before Width: | Height: | Size: 138 KiB After Width: | Height: | Size: 152 KiB |
BIN
docSite/assets/imgs/flow-tool5.png
Normal file
|
After Width: | Height: | Size: 338 KiB |
BIN
docSite/assets/imgs/flow-tool6.png
Normal file
|
After Width: | Height: | Size: 16 KiB |
BIN
docSite/assets/imgs/flow-tool7.png
Normal file
|
After Width: | Height: | Size: 37 KiB |
BIN
docSite/assets/imgs/form_input1.png
Normal file
|
After Width: | Height: | Size: 52 KiB |
BIN
docSite/assets/imgs/form_input2.png
Normal file
|
After Width: | Height: | Size: 148 KiB |
BIN
docSite/assets/imgs/form_input3.png
Normal file
|
After Width: | Height: | Size: 174 KiB |
BIN
docSite/assets/imgs/google_search_plugin1.png
Normal file
|
After Width: | Height: | Size: 51 KiB |
BIN
docSite/assets/imgs/google_search_plugin2.png
Normal file
|
After Width: | Height: | Size: 84 KiB |
BIN
docSite/assets/imgs/google_search_plugin3.png
Normal file
|
After Width: | Height: | Size: 207 KiB |
BIN
docSite/assets/imgs/google_search_plugin4.png
Normal file
|
After Width: | Height: | Size: 50 KiB |
BIN
docSite/assets/imgs/image-5.png
Normal file
|
After Width: | Height: | Size: 372 KiB |
BIN
docSite/assets/imgs/image-6.png
Normal file
|
After Width: | Height: | Size: 471 KiB |
BIN
docSite/assets/imgs/image-7.png
Normal file
|
After Width: | Height: | Size: 416 KiB |
BIN
docSite/assets/imgs/image-8.png
Normal file
|
After Width: | Height: | Size: 117 KiB |
BIN
docSite/assets/imgs/image-9.png
Normal file
|
After Width: | Height: | Size: 83 KiB |
BIN
docSite/assets/imgs/integration1.png
Normal file
|
After Width: | Height: | Size: 2.1 KiB |
BIN
docSite/assets/imgs/knowledge_merge1.png
Normal file
|
After Width: | Height: | Size: 26 KiB |
BIN
docSite/assets/imgs/knowledge_merge2.png
Normal file
|
After Width: | Height: | Size: 124 KiB |
BIN
docSite/assets/imgs/knowledge_merge3.png
Normal file
|
After Width: | Height: | Size: 179 KiB |
BIN
docSite/assets/imgs/plugin_submission1.png
Normal file
|
After Width: | Height: | Size: 210 KiB |
BIN
docSite/assets/imgs/plugin_submission2.png
Normal file
|
After Width: | Height: | Size: 275 KiB |
BIN
docSite/assets/imgs/plugin_submission3.png
Normal file
|
After Width: | Height: | Size: 183 KiB |
BIN
docSite/assets/imgs/plugin_submission4.png
Normal file
|
After Width: | Height: | Size: 156 KiB |
BIN
docSite/assets/imgs/plugin_submission5.png
Normal file
|
After Width: | Height: | Size: 189 KiB |
BIN
docSite/assets/imgs/plugin_submission6.png
Normal file
|
After Width: | Height: | Size: 134 KiB |
BIN
docSite/assets/imgs/plugin_submission7.png
Normal file
|
After Width: | Height: | Size: 181 KiB |
BIN
docSite/assets/imgs/points1.png
Normal file
|
After Width: | Height: | Size: 146 KiB |
BIN
docSite/assets/imgs/spellcheck1.png
Normal file
|
After Width: | Height: | Size: 63 KiB |
BIN
docSite/assets/imgs/spellcheck2.png
Normal file
|
After Width: | Height: | Size: 128 KiB |
BIN
docSite/assets/imgs/spellcheck3.png
Normal file
|
After Width: | Height: | Size: 48 KiB |
BIN
docSite/assets/imgs/spellcheck4.png
Normal file
|
After Width: | Height: | Size: 154 KiB |
BIN
docSite/assets/imgs/spellcheck5.png
Normal file
|
After Width: | Height: | Size: 37 KiB |
BIN
docSite/assets/imgs/template_submission1.png
Normal file
|
After Width: | Height: | Size: 178 KiB |
BIN
docSite/assets/imgs/template_submission2.png
Normal file
|
After Width: | Height: | Size: 46 KiB |
BIN
docSite/assets/imgs/template_submission3.png
Normal file
|
After Width: | Height: | Size: 283 KiB |
BIN
docSite/assets/imgs/template_submission4.png
Normal file
|
After Width: | Height: | Size: 155 KiB |
BIN
docSite/assets/imgs/translate1.png
Normal file
|
After Width: | Height: | Size: 261 KiB |
BIN
docSite/assets/imgs/translate10.png
Normal file
|
After Width: | Height: | Size: 84 KiB |
BIN
docSite/assets/imgs/translate11.png
Normal file
|
After Width: | Height: | Size: 238 KiB |
BIN
docSite/assets/imgs/translate12.png
Normal file
|
After Width: | Height: | Size: 176 KiB |
BIN
docSite/assets/imgs/translate13.png
Normal file
|
After Width: | Height: | Size: 257 KiB |
BIN
docSite/assets/imgs/translate14.png
Normal file
|
After Width: | Height: | Size: 216 KiB |
BIN
docSite/assets/imgs/translate15.png
Normal file
|
After Width: | Height: | Size: 126 KiB |
BIN
docSite/assets/imgs/translate16.png
Normal file
|
After Width: | Height: | Size: 88 KiB |
BIN
docSite/assets/imgs/translate17.png
Normal file
|
After Width: | Height: | Size: 284 KiB |
BIN
docSite/assets/imgs/translate18.png
Normal file
|
After Width: | Height: | Size: 442 KiB |
BIN
docSite/assets/imgs/translate19.png
Normal file
|
After Width: | Height: | Size: 465 KiB |
BIN
docSite/assets/imgs/translate2.png
Normal file
|
After Width: | Height: | Size: 316 KiB |
BIN
docSite/assets/imgs/translate20.png
Normal file
|
After Width: | Height: | Size: 434 KiB |
BIN
docSite/assets/imgs/translate21.png
Normal file
|
After Width: | Height: | Size: 66 KiB |
BIN
docSite/assets/imgs/translate3.png
Normal file
|
After Width: | Height: | Size: 341 KiB |
BIN
docSite/assets/imgs/translate4.png
Normal file
|
After Width: | Height: | Size: 175 KiB |
BIN
docSite/assets/imgs/translate5.png
Normal file
|
After Width: | Height: | Size: 463 KiB |
BIN
docSite/assets/imgs/translate61.png
Normal file
|
After Width: | Height: | Size: 591 KiB |
BIN
docSite/assets/imgs/translate7.png
Normal file
|
After Width: | Height: | Size: 238 KiB |
BIN
docSite/assets/imgs/translate8.png
Normal file
|
After Width: | Height: | Size: 69 KiB |
BIN
docSite/assets/imgs/translate9.png
Normal file
|
After Width: | Height: | Size: 106 KiB |
BIN
docSite/assets/imgs/user-selection1.png
Normal file
|
After Width: | Height: | Size: 60 KiB |
BIN
docSite/assets/imgs/user-selection2.png
Normal file
|
After Width: | Height: | Size: 162 KiB |
BIN
docSite/assets/imgs/user-selection3.png
Normal file
|
After Width: | Height: | Size: 180 KiB |
BIN
docSite/assets/imgs/variable_update1.png
Normal file
|
After Width: | Height: | Size: 20 KiB |
BIN
docSite/assets/imgs/variable_update2.png
Normal file
|
After Width: | Height: | Size: 179 KiB |
BIN
docSite/assets/imgs/variable_update3.png
Normal file
|
After Width: | Height: | Size: 190 KiB |
BIN
docSite/assets/imgs/variable_update4.png
Normal file
|
After Width: | Height: | Size: 175 KiB |
BIN
docSite/assets/imgs/variable_update5.png
Normal file
|
After Width: | Height: | Size: 186 KiB |
@@ -23,6 +23,7 @@ weight: 708
|
||||
"systemEnv": {
|
||||
"vectorMaxProcess": 15,
|
||||
"qaMaxProcess": 15,
|
||||
"tokenWorkers": 50, // Token 计算线程保持数,会持续占用内存,不能设置太大。
|
||||
"pgHNSWEfSearch": 100 // 向量搜索参数。越大,搜索越精确,但是速度越慢。设置为100,有99%+精度。
|
||||
},
|
||||
"llmModels": [
|
||||
|
||||
@@ -35,9 +35,7 @@ weight: 707
|
||||
|
||||
### Milvus版本
|
||||
|
||||
暂不推荐,部分系统存在精度丢失,等待修复。
|
||||
|
||||
对于千万级以上向量性能更优秀。
|
||||
生产部署首选,对于千万级以上向量性能更优秀。
|
||||
|
||||
[点击查看 Milvus 官方推荐配置](https://milvus.io/docs/prerequisite-docker.md)
|
||||
|
||||
@@ -51,9 +49,7 @@ weight: 707
|
||||
|
||||
### zilliz cloud版本
|
||||
|
||||
暂不推荐,部分系统存在精度丢失,等待修复。
|
||||
|
||||
亿级以上向量首选。
|
||||
Milvus 的全托管服务,性能优于 Milvus 并提供 SLA,点击使用 [Zilliz Cloud](https://zilliz.com.cn/)。
|
||||
|
||||
由于向量库使用了 Cloud,无需占用本地资源,无需太关注。
|
||||
|
||||
@@ -138,14 +134,16 @@ curl -o docker-compose.yml https://raw.githubusercontent.com/labring/FastGPT/mai
|
||||
# curl -o docker-compose.yml https://raw.githubusercontent.com/labring/FastGPT/main/files/docker/docker-compose-zilliz.yml
|
||||
```
|
||||
|
||||
### 2. 修改 docker-compose.yml 环境变量
|
||||
### 2. 修改环境变量
|
||||
|
||||
找到 yml 文件中,fastgpt 容器的环境变量进行下面操作:
|
||||
|
||||
{{< tabs tabTotal="3" >}}
|
||||
{{< tab tabName="PgVector版本" >}}
|
||||
{{< markdownify >}}
|
||||
|
||||
```
|
||||
无需操作
|
||||
FE_DOMAIN=你的前端你访问地址,例如 http://192.168.0.1:3000;https://cloud.fastgpt.cn
|
||||
```
|
||||
|
||||
{{< /markdownify >}}
|
||||
@@ -154,7 +152,7 @@ curl -o docker-compose.yml https://raw.githubusercontent.com/labring/FastGPT/mai
|
||||
{{< markdownify >}}
|
||||
|
||||
```
|
||||
无需操作
|
||||
FE_DOMAIN=你的前端你访问地址,例如 http://192.168.0.1:3000;https://cloud.fastgpt.cn
|
||||
```
|
||||
|
||||
{{< /markdownify >}}
|
||||
@@ -162,11 +160,14 @@ curl -o docker-compose.yml https://raw.githubusercontent.com/labring/FastGPT/mai
|
||||
{{< tab tabName="Zilliz版本" >}}
|
||||
{{< markdownify >}}
|
||||
|
||||
打开 [Zilliz Cloud](https://zilliz.com.cn/), 创建实例并获取相关秘钥。
|
||||
|
||||

|
||||
|
||||
{{% alert icon="🤖" context="success" %}}
|
||||
|
||||
修改`MILVUS_ADDRESS`和`MILVUS_TOKEN`链接参数,分别对应 `zilliz` 的 `Public Endpoint` 和 `Api key`,记得把自己ip加入白名单。
|
||||
1. 修改`MILVUS_ADDRESS`和`MILVUS_TOKEN`链接参数,分别对应 `zilliz` 的 `Public Endpoint` 和 `Api key`,记得把自己ip加入白名单。
|
||||
2. 修改FE_DOMAIN=你的前端你访问地址,例如 http://192.168.0.1:3000;https://cloud.fastgpt.cn
|
||||
|
||||
{{% /alert %}}
|
||||
|
||||
|
||||
@@ -25,7 +25,7 @@ FastGPT 的 API Key **有 2 类**,一类是全局通用的 key (无法直接
|
||||
|
||||
| 通用key | 应用特定 key |
|
||||
| --------------------- | --------------------- |
|
||||
|  |  |
|
||||
|  |  |
|
||||
|
||||
## 基本配置
|
||||
|
||||
|
||||
@@ -35,9 +35,10 @@ curl --location --request POST 'http://localhost:3000/api/v1/chat/completions' \
|
||||
--header 'Authorization: Bearer fastgpt-xxxxxx' \
|
||||
--header 'Content-Type: application/json' \
|
||||
--data-raw '{
|
||||
"chatId": "abcd",
|
||||
"chatId": "my_chatId",
|
||||
"stream": false,
|
||||
"detail": false,
|
||||
"responseChatItemId": "my_responseChatItemId",
|
||||
"variables": {
|
||||
"uid": "asdfadsfasfd2323",
|
||||
"name": "张三"
|
||||
@@ -104,6 +105,7 @@ curl --location --request POST 'http://localhost:3000/api/v1/chat/completions' \
|
||||
- 为 `undefined` 时(不传入),不使用 FastGpt 提供的上下文功能,完全通过传入的 messages 构建上下文。 不会将你的记录存储到数据库中,你也无法在记录汇总中查阅到。
|
||||
- 为`非空字符串`时,意味着使用 chatId 进行对话,自动从 FastGpt 数据库取历史记录,并使用 messages 数组最后一个内容作为用户问题。请自行确保 chatId 唯一,长度小于250,通常可以是自己系统的对话框ID。
|
||||
- messages: 结构与 [GPT接口](https://platform.openai.com/docs/api-reference/chat/object) chat模式一致。
|
||||
- responseChatItemId: string | undefined 。如果传入,则会将该值作为本次对话的响应消息的 ID,FastGPT 会自动将该 ID 存入数据库。请确保,在当前`chatId`下,`responseChatItemId`是唯一的。
|
||||
- detail: 是否返回中间值(模块状态,响应的完整结果等),`stream模式`下会通过`event`进行区分,`非stream模式`结果保存在`responseData`中。
|
||||
- variables: 模块变量,一个对象,会替换模块中,输入框内容里的`{{key}}`
|
||||
{{% /alert %}}
|
||||
@@ -312,6 +314,149 @@ event取值:
|
||||
{{< /tabs >}}
|
||||
|
||||
|
||||
### 交互节点响应
|
||||
|
||||
如果工作流中包含交互节点,依然是调用该 API 接口,需要设置`detail=true`,并可以从`event=interactive`的数据中获取交互节点的配置信息。如果是`stream=false`,则可以从 choice 中获取`type=interactive`的元素,获取交互节点的选择信息。
|
||||
|
||||
当你调用一个带交互节点的工作流时,如果工作流遇到了交互节点,那么会直接返回,你可以得到下面的信息:
|
||||
|
||||
{{< tabs tabTotal="2" >}}
|
||||
{{< tab tabName="用户选择" >}}
|
||||
{{< markdownify >}}
|
||||
|
||||
```json
|
||||
{
|
||||
"interactive": {
|
||||
"type": "userSelect",
|
||||
"params": {
|
||||
"description": "测试",
|
||||
"userSelectOptions": [
|
||||
{
|
||||
"value": "Confirm",
|
||||
"key": "option1"
|
||||
},
|
||||
{
|
||||
"value": "Cancel",
|
||||
"key": "option2"
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
{{< /markdownify >}}
|
||||
{{< /tab >}}
|
||||
|
||||
{{< tab tabName="表单输入" >}}
|
||||
{{< markdownify >}}
|
||||
|
||||
```json
|
||||
{
|
||||
"interactive": {
|
||||
"type": "userInput",
|
||||
"params": {
|
||||
"description": "测试",
|
||||
"inputForm": [
|
||||
{
|
||||
"type": "input",
|
||||
"key": "测试 1",
|
||||
"label": "测试 1",
|
||||
"description": "",
|
||||
"value": "",
|
||||
"defaultValue": "",
|
||||
"valueType": "string",
|
||||
"required": false,
|
||||
"list": [
|
||||
{
|
||||
"label": "",
|
||||
"value": ""
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"type": "numberInput",
|
||||
"key": "测试 2",
|
||||
"label": "测试 2",
|
||||
"description": "",
|
||||
"value": "",
|
||||
"defaultValue": "",
|
||||
"valueType": "number",
|
||||
"required": false,
|
||||
"list": [
|
||||
{
|
||||
"label": "",
|
||||
"value": ""
|
||||
}
|
||||
]
|
||||
}
|
||||
]
|
||||
}
|
||||
}
|
||||
}
|
||||
```
|
||||
|
||||
{{< /markdownify >}}
|
||||
{{< /tab >}}
|
||||
{{< /tabs >}}
|
||||
|
||||
### 交互节点继续运行
|
||||
|
||||
紧接着上一节,当你接收到交互节点信息后,可以根据这些数据进行 UI 渲染,引导用户输入或选择相关信息。然后需要再次发起对话,来继续工作流。调用的接口与仍是该接口,你需要按以下格式来发起请求:
|
||||
|
||||
{{< tabs tabTotal="2" >}}
|
||||
{{< tab tabName="用户选择" >}}
|
||||
{{< markdownify >}}
|
||||
|
||||
对于用户选择,你只需要直接传递一个选择的结果给 messages 即可。
|
||||
|
||||
```bash
|
||||
curl --location --request POST 'https://api.fastgpt.in/api/v1/chat/completions' \
|
||||
--header 'Authorization: Bearer fastgpt-xxx' \
|
||||
--header 'Content-Type: application/json' \
|
||||
--data-raw '{
|
||||
"stream": true,
|
||||
"detail": true,
|
||||
"chatId":"22222231",
|
||||
"messages": [
|
||||
{
|
||||
"role": "user",
|
||||
"content": "Confirm"
|
||||
}
|
||||
]
|
||||
}'
|
||||
```
|
||||
|
||||
{{< /markdownify >}}
|
||||
{{< /tab >}}
|
||||
|
||||
{{< tab tabName="表单输入" >}}
|
||||
{{< markdownify >}}
|
||||
|
||||
表单输入稍微麻烦一点,需要将输入的内容,以对象形式并序列化成字符串,作为`messages`的值。对象的 key 对应表单的 key,value 为用户输入的值。务必确保`chatId`是一致的。
|
||||
|
||||
```bash
|
||||
curl --location --request POST 'https://api.fastgpt.in/api/v1/chat/completions' \
|
||||
--header 'Authorization: Bearer fastgpt-xxxx' \
|
||||
--header 'Content-Type: application/json' \
|
||||
--data-raw '{
|
||||
"stream": true,
|
||||
"detail": true,
|
||||
"chatId":"22231",
|
||||
"messages": [
|
||||
{
|
||||
"role": "user",
|
||||
"content": "{\"测试 1\":\"这是输入框的内容\",\"测试 2\":666}"
|
||||
}
|
||||
]
|
||||
}'
|
||||
```
|
||||
|
||||
{{< /markdownify >}}
|
||||
{{< /tab >}}
|
||||
{{< /tabs >}}
|
||||
|
||||
|
||||
## 请求插件
|
||||
|
||||
插件的接口与对话接口一致,仅请求参数略有区别,有以下规定:
|
||||
|
||||
@@ -31,17 +31,6 @@ curl --location --request POST 'http://localhost:3000/api/support/wallet/usage/c
|
||||
}'
|
||||
```
|
||||
|
||||
**x例子**
|
||||
|
||||
```bash
|
||||
curl --location --request POST 'http://localhost:3000/api/support/wallet/bill/createTrainingBill' \
|
||||
--header 'Authorization: Bearer {{apikey}}' \
|
||||
--header 'Content-Type: application/json' \
|
||||
--data-raw '{
|
||||
"name": "可选,自定义订单名称,例如:文档训练-fastgpt.docx"
|
||||
}'
|
||||
```
|
||||
|
||||
{{< /markdownify >}}
|
||||
{{< /tab >}}
|
||||
|
||||
|
||||
@@ -32,7 +32,7 @@ curl --location --request POST 'https://{{host}}/api/admin/initv464' \
|
||||
4. 优化 - 历史记录模块。弃用旧的历史记录模块,直接在对应地方填写数值即可。
|
||||
5. 调整 - 知识库搜索模块 topk 逻辑,采用 MaxToken 计算,兼容不同长度的文本块
|
||||
6. 调整鉴权顺序,提高 apikey 的优先级,避免cookie抢占 apikey 的鉴权。
|
||||
7. 链接读取支持多选择器。参考[Web 站点同步用法](/docs/course/websync)
|
||||
7. 链接读取支持多选择器。参考[Web 站点同步用法](/docs/guide/knowledge_base/websync/)
|
||||
8. 修复 - 分享链接图片上传鉴权问题
|
||||
9. 修复 - Mongo 连接池未释放问题。
|
||||
10. 修复 - Dataset Intro 无法更新
|
||||
|
||||
@@ -21,10 +21,10 @@ weight: 831
|
||||
|
||||
## V4.6.5 功能介绍
|
||||
|
||||
1. 新增 - [问题优化模块](/docs/workflow/modules/coreferenceresolution/)
|
||||
2. 新增 - [文本编辑模块](/docs/workflow/modules/text_editor/)
|
||||
3. 新增 - [判断器模块](/docs/workflow/modules/tfswitch/)
|
||||
4. 新增 - [自定义反馈模块](/docs/workflow/modules/custom_feedback/)
|
||||
1. 新增 - [问题优化模块](/docs/guide/workbench/workflow/coreferenceresolution/)
|
||||
2. 新增 - [文本编辑模块](/docs/guide/workbench/workflow/text_editor/)
|
||||
3. 新增 - [判断器模块](/docs/guide/workbench/workflow/tfswitch//)
|
||||
4. 新增 - [自定义反馈模块](/docs/guide/workbench/workflow/custom_feedback/)
|
||||
5. 新增 - 【内容提取】模块支持选择模型,以及字段枚举
|
||||
6. 优化 - docx读取,兼容表格(表格转markdown)
|
||||
7. 优化 - 高级编排连接线交互
|
||||
|
||||