Commit d0357238 by Archer Committed by GitHub

Doc (#6880)

* doc

* doc

* doc

* doc style
parent f252bc73
...@@ -4,9 +4,6 @@ node_modules/ ...@@ -4,9 +4,6 @@ node_modules/
.next/ .next/
.turbo/ .turbo/
out/ out/
# production
build/
.astro/
# misc # misc
.DS_Store .DS_Store
......
...@@ -21,7 +21,7 @@ FastGPT 是一个 AI Agent 构建平台,提供开箱即用的数据处理、 ...@@ -21,7 +21,7 @@ FastGPT 是一个 AI Agent 构建平台,提供开箱即用的数据处理、
<a href="https://fastgpt.io/"> <a href="https://fastgpt.io/">
<img height="21" src="https://img.shields.io/badge/在线使用-d4eaf7?style=flat-square&logo=spoj&logoColor=7d09f1" alt="cloud"> <img height="21" src="https://img.shields.io/badge/在线使用-d4eaf7?style=flat-square&logo=spoj&logoColor=7d09f1" alt="cloud">
</a> </a>
<a href="https://doc.fastgpt.io/introduction"> <a href="https://doc.fastgpt.io/guide/getting-started">
<img height="21" src="https://img.shields.io/badge/相关文档-7d09f1?style=flat-square" alt="document"> <img height="21" src="https://img.shields.io/badge/相关文档-7d09f1?style=flat-square" alt="document">
</a> </a>
<a href="https://doc.fastgpt.io/self-host/dev"> <a href="https://doc.fastgpt.io/self-host/dev">
...@@ -58,7 +58,7 @@ docker compose up -d ...@@ -58,7 +58,7 @@ docker compose up -d
可以使用[Docker](https://doc.fastgpt.io/self-host/deploy/docker)快速部署,也可以使用[Sealos Cloud](https://doc.fastgpt.io/self-host/deploy/sealos) 来一键部署FastGPT。 可以使用[Docker](https://doc.fastgpt.io/self-host/deploy/docker)快速部署,也可以使用[Sealos Cloud](https://doc.fastgpt.io/self-host/deploy/sealos) 来一键部署FastGPT。
- **商业版** - **商业版**
如果你需要更完整的功能,或深度的服务支持,可以选择我们的[商业版](https://doc.fastgpt.io/introduction/commercial)。我们除了提供完整的软件外,还提供相应的场景落地辅导,具体可提交[商业咨询](https://fael3z0zfze.feishu.cn/share/base/form/shrcnjJWtKqjOI9NbQTzhNyzljc) 如果你需要更完整的功能,或深度的服务支持,可以选择我们的[商业版](https://doc.fastgpt.io/guide/version/commercial)。我们除了提供完整的软件外,还提供相应的场景落地辅导,具体可提交[商业咨询](https://fael3z0zfze.feishu.cn/share/base/form/shrcnjJWtKqjOI9NbQTzhNyzljc)
## 💡 核心功能 ## 💡 核心功能
...@@ -203,4 +203,4 @@ docker compose up -d ...@@ -203,4 +203,4 @@ docker compose up -d
1. 允许作为后台服务直接商用,但不允许提供 SaaS 服务。 1. 允许作为后台服务直接商用,但不允许提供 SaaS 服务。
2. 未经商业授权,任何形式的商用服务均需保留相关版权信息。 2. 未经商业授权,任何形式的商用服务均需保留相关版权信息。
3. 完整请查看 [FastGPT Open Source License](./LICENSE) 3. 完整请查看 [FastGPT Open Source License](./LICENSE)
4. 联系方式:Dennis@sealos.io,[点击查看商业版定价策略](https://doc.fastgpt.io/introduction/commercial/) 4. 联系方式:Dennis@sealos.io,[点击查看商业版定价策略](https://doc.fastgpt.io/guide/version/commercial)
...@@ -21,7 +21,7 @@ FastGPT is an AI Agent building platform that provides out-of-the-box capabiliti ...@@ -21,7 +21,7 @@ FastGPT is an AI Agent building platform that provides out-of-the-box capabiliti
<a href="https://fastgpt.io/"> <a href="https://fastgpt.io/">
<img height="21" src="https://img.shields.io/badge/Online_Usage-d4eaf7?style=flat-square&logo=spoj&logoColor=7d09f1" alt="cloud"> <img height="21" src="https://img.shields.io/badge/Online_Usage-d4eaf7?style=flat-square&logo=spoj&logoColor=7d09f1" alt="cloud">
</a> </a>
<a href="https://doc.fastgpt.io/introduction"> <a href="https://doc.fastgpt.io/guide/getting-started">
<img height="21" src="https://img.shields.io/badge/Documentation-7d09f1?style=flat-square" alt="document"> <img height="21" src="https://img.shields.io/badge/Documentation-7d09f1?style=flat-square" alt="document">
</a> </a>
<a href="https://doc.fastgpt.io/self-host/dev"> <a href="https://doc.fastgpt.io/self-host/dev">
...@@ -58,7 +58,7 @@ If you encounter any issues, you can [view the complete Docker deployment tutori ...@@ -58,7 +58,7 @@ If you encounter any issues, you can [view the complete Docker deployment tutori
You can quickly deploy using [Docker](https://doc.fastgpt.io/self-host/deploy/docker) or use [Sealos Cloud](https://doc.fastgpt.io/self-host/deploy/sealos) to deploy FastGPT with one click. You can quickly deploy using [Docker](https://doc.fastgpt.io/self-host/deploy/docker) or use [Sealos Cloud](https://doc.fastgpt.io/self-host/deploy/sealos) to deploy FastGPT with one click.
- **Commercial Version** - **Commercial Version**
If you need more complete features or in-depth service support, you can choose our [Commercial Version](https://doc.fastgpt.io/introduction/commercial). In addition to providing complete software, we also offer implementation guidance for specific scenarios. You can submit a [commercial consultation](https://fael3z0zfze.feishu.cn/share/base/form/shrcnjJWtKqjOI9NbQTzhNyzljc). If you need more complete features or in-depth service support, you can choose our [Commercial Version](https://doc.fastgpt.io/guide/version/commercial). In addition to providing complete software, we also offer implementation guidance for specific scenarios. You can submit a [commercial consultation](https://fael3z0zfze.feishu.cn/share/base/form/shrcnjJWtKqjOI9NbQTzhNyzljc).
## 💡 Core Features ## 💡 Core Features
...@@ -203,4 +203,4 @@ This repository follows the [FastGPT Open Source License](./LICENSE). ...@@ -203,4 +203,4 @@ This repository follows the [FastGPT Open Source License](./LICENSE).
1. Commercial use as backend services is allowed, but SaaS services are not permitted. 1. Commercial use as backend services is allowed, but SaaS services are not permitted.
2. Any commercial services without commercial authorization must retain the relevant copyright information. 2. Any commercial services without commercial authorization must retain the relevant copyright information.
3. Please see [FastGPT Open Source License](./LICENSE) for full details. 3. Please see [FastGPT Open Source License](./LICENSE) for full details.
4. Contact: Dennis@sealos.io, [View Commercial Pricing](https://doc.fastgpt.io/introduction/commercial/) 4. Contact: Dennis@sealos.io, [View Commercial Pricing](https://doc.fastgpt.io/guide/version/commercial)
...@@ -21,7 +21,7 @@ FastGPT adalah platform pembangunan AI Agent yang menyediakan kemampuan siap pak ...@@ -21,7 +21,7 @@ FastGPT adalah platform pembangunan AI Agent yang menyediakan kemampuan siap pak
<a href="https://fastgpt.io/"> <a href="https://fastgpt.io/">
<img height="21" src="https://img.shields.io/badge/Penggunaan_Online-d4eaf7?style=flat-square&logo=spoj&logoColor=7d09f1" alt="cloud"> <img height="21" src="https://img.shields.io/badge/Penggunaan_Online-d4eaf7?style=flat-square&logo=spoj&logoColor=7d09f1" alt="cloud">
</a> </a>
<a href="https://doc.fastgpt.io/introduction"> <a href="https://doc.fastgpt.io/guide/getting-started">
<img height="21" src="https://img.shields.io/badge/Dokumentasi-7d09f1?style=flat-square" alt="document"> <img height="21" src="https://img.shields.io/badge/Dokumentasi-7d09f1?style=flat-square" alt="document">
</a> </a>
<a href="https://doc.fastgpt.io/self-host/dev"> <a href="https://doc.fastgpt.io/self-host/dev">
...@@ -58,7 +58,7 @@ Jika Anda menghadapi masalah, Anda dapat [melihat tutorial penyebaran Docker len ...@@ -58,7 +58,7 @@ Jika Anda menghadapi masalah, Anda dapat [melihat tutorial penyebaran Docker len
Anda dapat menyebarkan dengan cepat menggunakan [Docker](https://doc.fastgpt.io/self-host/deploy/docker) atau menggunakan [Sealos Cloud](https://doc.fastgpt.io/self-host/deploy/sealos) untuk menyebarkan FastGPT dengan satu klik. Anda dapat menyebarkan dengan cepat menggunakan [Docker](https://doc.fastgpt.io/self-host/deploy/docker) atau menggunakan [Sealos Cloud](https://doc.fastgpt.io/self-host/deploy/sealos) untuk menyebarkan FastGPT dengan satu klik.
- **Versi Komersial** - **Versi Komersial**
Jika Anda membutuhkan fitur yang lebih lengkap atau dukungan layanan mendalam, Anda dapat memilih [Versi Komersial](https://doc.fastgpt.io/introduction/commercial). Selain menyediakan perangkat lunak lengkap, kami juga menyediakan panduan implementasi untuk skenario tertentu. Anda dapat mengirimkan [konsultasi komersial](https://fael3z0zfze.feishu.cn/share/base/form/shrcnjJWtKqjOI9NbQTzhNyzljc). Jika Anda membutuhkan fitur yang lebih lengkap atau dukungan layanan mendalam, Anda dapat memilih [Versi Komersial](https://doc.fastgpt.io/guide/version/commercial). Selain menyediakan perangkat lunak lengkap, kami juga menyediakan panduan implementasi untuk skenario tertentu. Anda dapat mengirimkan [konsultasi komersial](https://fael3z0zfze.feishu.cn/share/base/form/shrcnjJWtKqjOI9NbQTzhNyzljc).
## 💡 Fitur Inti ## 💡 Fitur Inti
...@@ -203,4 +203,4 @@ Repositori ini mengikuti [FastGPT Open Source License](./LICENSE). ...@@ -203,4 +203,4 @@ Repositori ini mengikuti [FastGPT Open Source License](./LICENSE).
1. Penggunaan komersial sebagai layanan backend diperbolehkan, tetapi layanan SaaS tidak diperbolehkan. 1. Penggunaan komersial sebagai layanan backend diperbolehkan, tetapi layanan SaaS tidak diperbolehkan.
2. Setiap layanan komersial tanpa otorisasi komersial harus mempertahankan informasi hak cipta yang relevan. 2. Setiap layanan komersial tanpa otorisasi komersial harus mempertahankan informasi hak cipta yang relevan.
3. Silakan lihat [FastGPT Open Source License](./LICENSE) untuk detail lengkap. 3. Silakan lihat [FastGPT Open Source License](./LICENSE) untuk detail lengkap.
4. Kontak: Dennis@sealos.io, [Lihat Harga Komersial](https://doc.fastgpt.io/introduction/commercial/) 4. Kontak: Dennis@sealos.io, [Lihat Harga Komersial](https://doc.fastgpt.io/guide/version/commercial)
...@@ -21,7 +21,7 @@ FastGPT 縺ッ AI Agent 讒狗ッ峨繝ゥ繝ヨ繝輔か繝シ繝縺ァ縺ゅj縲√☆縺舌↓菴ソ縺医 ...@@ -21,7 +21,7 @@ FastGPT 縺ッ AI Agent 讒狗ッ峨繝ゥ繝ヨ繝輔か繝シ繝縺ァ縺ゅj縲√☆縺舌↓菴ソ縺医
<a href="https://fastgpt.io/"> <a href="https://fastgpt.io/">
<img height="21" src="https://img.shields.io/badge/オンライン利用-d4eaf7?style=flat-square&logo=spoj&logoColor=7d09f1" alt="cloud"> <img height="21" src="https://img.shields.io/badge/オンライン利用-d4eaf7?style=flat-square&logo=spoj&logoColor=7d09f1" alt="cloud">
</a> </a>
<a href="https://doc.fastgpt.io/introduction"> <a href="https://doc.fastgpt.io/guide/getting-started">
<img height="21" src="https://img.shields.io/badge/ドキュメント-7d09f1?style=flat-square" alt="document"> <img height="21" src="https://img.shields.io/badge/ドキュメント-7d09f1?style=flat-square" alt="document">
</a> </a>
<a href="https://doc.fastgpt.io/self-host/dev"> <a href="https://doc.fastgpt.io/self-host/dev">
...@@ -58,7 +58,7 @@ docker compose up -d ...@@ -58,7 +58,7 @@ docker compose up -d
[Docker](https://doc.fastgpt.io/self-host/deploy/docker) で素早くデプロイするか、[Sealos Cloud](https://doc.fastgpt.io/self-host/deploy/sealos) でワンクリックデプロイが可能です。 [Docker](https://doc.fastgpt.io/self-host/deploy/docker) で素早くデプロイするか、[Sealos Cloud](https://doc.fastgpt.io/self-host/deploy/sealos) でワンクリックデプロイが可能です。
- **商用版** - **商用版**
より完全な機能や深いサービスサポートが必要な場合は、[商用版](https://doc.fastgpt.io/introduction/commercial)をお選びいただけます。完全なソフトウェアの提供に加え、シナリオに応じた導入ガイダンスも提供しています。[商用相談](https://fael3z0zfze.feishu.cn/share/base/form/shrcnjJWtKqjOI9NbQTzhNyzljc)からお問い合わせください。 より完全な機能や深いサービスサポートが必要な場合は、[商用版](https://doc.fastgpt.io/guide/version/commercial)をお選びいただけます。完全なソフトウェアの提供に加え、シナリオに応じた導入ガイダンスも提供しています。[商用相談](https://fael3z0zfze.feishu.cn/share/base/form/shrcnjJWtKqjOI9NbQTzhNyzljc)からお問い合わせください。
## 💡 コア機能 ## 💡 コア機能
...@@ -203,4 +203,4 @@ Feishu 繧ー繝ォ繝シ繝励↓蜿ょ刈 ...@@ -203,4 +203,4 @@ Feishu 繧ー繝ォ繝シ繝励↓蜿ょ刈
1. バックエンドサービスとしての商用利用は許可されていますが、SaaS サービスの提供は許可されていません。 1. バックエンドサービスとしての商用利用は許可されていますが、SaaS サービスの提供は許可されていません。
2. 商用ライセンスなしの商用サービスは、関連する著作権情報を保持する必要があります。 2. 商用ライセンスなしの商用サービスは、関連する著作権情報を保持する必要があります。
3. 詳細は [FastGPT Open Source License](./LICENSE) をご覧ください。 3. 詳細は [FastGPT Open Source License](./LICENSE) をご覧ください。
4. お問い合わせ:Dennis@sealos.io、[商用版の価格を見る](https://doc.fastgpt.io/introduction/commercial/) 4. お問い合わせ:Dennis@sealos.io、[商用版の価格を見る](https://doc.fastgpt.io/guide/version/commercial)
...@@ -21,7 +21,7 @@ FastGPT เป็นแพลตฟอร์มสำหรับสร้าง ...@@ -21,7 +21,7 @@ FastGPT เป็นแพลตฟอร์มสำหรับสร้าง
<a href="https://fastgpt.io/"> <a href="https://fastgpt.io/">
<img height="21" src="https://img.shields.io/badge/ใช้งานออนไลน์-d4eaf7?style=flat-square&logo=spoj&logoColor=7d09f1" alt="cloud"> <img height="21" src="https://img.shields.io/badge/ใช้งานออนไลน์-d4eaf7?style=flat-square&logo=spoj&logoColor=7d09f1" alt="cloud">
</a> </a>
<a href="https://doc.fastgpt.io/introduction"> <a href="https://doc.fastgpt.io/guide/getting-started">
<img height="21" src="https://img.shields.io/badge/เอกสาร-7d09f1?style=flat-square" alt="document"> <img height="21" src="https://img.shields.io/badge/เอกสาร-7d09f1?style=flat-square" alt="document">
</a> </a>
<a href="https://doc.fastgpt.io/self-host/dev"> <a href="https://doc.fastgpt.io/self-host/dev">
...@@ -58,7 +58,7 @@ docker compose up -d ...@@ -58,7 +58,7 @@ docker compose up -d
คุณสามารถติดตั้งได้อย่างรวดเร็วโดยใช้ [Docker](https://doc.fastgpt.io/self-host/deploy/docker) หรือใช้ [Sealos Cloud](https://doc.fastgpt.io/self-host/deploy/sealos) เพื่อติดตั้ง FastGPT ด้วยคลิกเดียว คุณสามารถติดตั้งได้อย่างรวดเร็วโดยใช้ [Docker](https://doc.fastgpt.io/self-host/deploy/docker) หรือใช้ [Sealos Cloud](https://doc.fastgpt.io/self-host/deploy/sealos) เพื่อติดตั้ง FastGPT ด้วยคลิกเดียว
- **เวอร์ชันพาณิชย์** - **เวอร์ชันพาณิชย์**
หากคุณต้องการคุณสมบัติที่สมบูรณ์มากขึ้นหรือการสนับสนุนบริการเชิงลึก คุณสามารถเลือก [เวอร์ชันพาณิชย์](https://doc.fastgpt.io/introduction/commercial) นอกจากการให้ซอฟต์แวร์ที่สมบูรณ์ เรายังให้คำแนะนำการนำไปใช้สำหรับสถานการณ์เฉพาะ คุณสามารถส่ง[ปรึกษาธุรกิจ](https://fael3z0zfze.feishu.cn/share/base/form/shrcnjJWtKqjOI9NbQTzhNyzljc) หากคุณต้องการคุณสมบัติที่สมบูรณ์มากขึ้นหรือการสนับสนุนบริการเชิงลึก คุณสามารถเลือก [เวอร์ชันพาณิชย์](https://doc.fastgpt.io/guide/version/commercial) นอกจากการให้ซอฟต์แวร์ที่สมบูรณ์ เรายังให้คำแนะนำการนำไปใช้สำหรับสถานการณ์เฉพาะ คุณสามารถส่ง[ปรึกษาธุรกิจ](https://fael3z0zfze.feishu.cn/share/base/form/shrcnjJWtKqjOI9NbQTzhNyzljc)
## 💡 คุณสมบัติหลัก ## 💡 คุณสมบัติหลัก
...@@ -203,4 +203,4 @@ docker compose up -d ...@@ -203,4 +203,4 @@ docker compose up -d
1. อนุญาตให้ใช้เชิงพาณิชย์เป็นบริการแบ็กเอนด์ แต่ไม่อนุญาตให้ให้บริการ SaaS 1. อนุญาตให้ใช้เชิงพาณิชย์เป็นบริการแบ็กเอนด์ แต่ไม่อนุญาตให้ให้บริการ SaaS
2. บริการเชิงพาณิชย์ใดๆ ที่ไม่มีการอนุญาตเชิงพาณิชย์ต้องเก็บข้อมูลลิขสิทธิ์ที่เกี่ยวข้องไว้ 2. บริการเชิงพาณิชย์ใดๆ ที่ไม่มีการอนุญาตเชิงพาณิชย์ต้องเก็บข้อมูลลิขสิทธิ์ที่เกี่ยวข้องไว้
3. โปรดดู [FastGPT Open Source License](./LICENSE) สำหรับรายละเอียดฉบับเต็ม 3. โปรดดู [FastGPT Open Source License](./LICENSE) สำหรับรายละเอียดฉบับเต็ม
4. ติดต่อ: Dennis@sealos.io, [ดูราคาพาณิชย์](https://doc.fastgpt.io/introduction/commercial/) 4. ติดต่อ: Dennis@sealos.io, [ดูราคาพาณิชย์](https://doc.fastgpt.io/guide/version/commercial)
...@@ -21,7 +21,7 @@ FastGPT là nền tảng xây dựng AI Agent cung cấp khả năng sẵn sàng ...@@ -21,7 +21,7 @@ FastGPT là nền tảng xây dựng AI Agent cung cấp khả năng sẵn sàng
<a href="https://fastgpt.io/"> <a href="https://fastgpt.io/">
<img height="21" src="https://img.shields.io/badge/Sử_Dụng_Online-d4eaf7?style=flat-square&logo=spoj&logoColor=7d09f1" alt="cloud"> <img height="21" src="https://img.shields.io/badge/Sử_Dụng_Online-d4eaf7?style=flat-square&logo=spoj&logoColor=7d09f1" alt="cloud">
</a> </a>
<a href="https://doc.fastgpt.io/introduction"> <a href="https://doc.fastgpt.io/guide/getting-started">
<img height="21" src="https://img.shields.io/badge/Tài_Liệu-7d09f1?style=flat-square" alt="document"> <img height="21" src="https://img.shields.io/badge/Tài_Liệu-7d09f1?style=flat-square" alt="document">
</a> </a>
<a href="https://doc.fastgpt.io/self-host/dev"> <a href="https://doc.fastgpt.io/self-host/dev">
...@@ -58,7 +58,7 @@ Nếu bạn gặp vấn đề, bạn có thể [xem hướng dẫn triển khai ...@@ -58,7 +58,7 @@ Nếu bạn gặp vấn đề, bạn có thể [xem hướng dẫn triển khai
Bạn có thể triển khai nhanh chóng bằng [Docker](https://doc.fastgpt.io/self-host/deploy/docker) hoặc sử dụng [Sealos Cloud](https://doc.fastgpt.io/self-host/deploy/sealos) để triển khai FastGPT bằng một cú nhấp chuột. Bạn có thể triển khai nhanh chóng bằng [Docker](https://doc.fastgpt.io/self-host/deploy/docker) hoặc sử dụng [Sealos Cloud](https://doc.fastgpt.io/self-host/deploy/sealos) để triển khai FastGPT bằng một cú nhấp chuột.
- **Phiên Bản Thương Mại** - **Phiên Bản Thương Mại**
Nếu bạn cần các tính năng đầy đủ hơn hoặc hỗ trợ dịch vụ chuyên sâu, bạn có thể chọn [Phiên Bản Thương Mại](https://doc.fastgpt.io/introduction/commercial). Ngoài việc cung cấp phần mềm đầy đủ, chúng tôi còn cung cấp hướng dẫn triển khai cho các kịch bản cụ thể. Bạn có thể gửi [tư vấn thương mại](https://fael3z0zfze.feishu.cn/share/base/form/shrcnjJWtKqjOI9NbQTzhNyzljc). Nếu bạn cần các tính năng đầy đủ hơn hoặc hỗ trợ dịch vụ chuyên sâu, bạn có thể chọn [Phiên Bản Thương Mại](https://doc.fastgpt.io/guide/version/commercial). Ngoài việc cung cấp phần mềm đầy đủ, chúng tôi còn cung cấp hướng dẫn triển khai cho các kịch bản cụ thể. Bạn có thể gửi [tư vấn thương mại](https://fael3z0zfze.feishu.cn/share/base/form/shrcnjJWtKqjOI9NbQTzhNyzljc).
## 💡 Tính Năng Cốt Lõi ## 💡 Tính Năng Cốt Lõi
...@@ -203,4 +203,4 @@ Kho này tuân thủ [FastGPT Open Source License](./LICENSE). ...@@ -203,4 +203,4 @@ Kho này tuân thủ [FastGPT Open Source License](./LICENSE).
1. Cho phép sử dụng thương mại như dịch vụ backend, nhưng không cho phép cung cấp dịch vụ SaaS. 1. Cho phép sử dụng thương mại như dịch vụ backend, nhưng không cho phép cung cấp dịch vụ SaaS.
2. Bất kỳ dịch vụ thương mại nào không có giấy phép thương mại phải giữ lại thông tin bản quyền liên quan. 2. Bất kỳ dịch vụ thương mại nào không có giấy phép thương mại phải giữ lại thông tin bản quyền liên quan.
3. Xem [FastGPT Open Source License](./LICENSE) để biết đầy đủ chi tiết. 3. Xem [FastGPT Open Source License](./LICENSE) để biết đầy đủ chi tiết.
4. Liên hệ: Dennis@sealos.io, [Xem Giá Thương Mại](https://doc.fastgpt.io/introduction/commercial/) 4. Liên hệ: Dennis@sealos.io, [Xem Giá Thương Mại](https://doc.fastgpt.io/guide/version/commercial)
...@@ -28,8 +28,9 @@ ENV NEXT_PUBLIC_DOC_TRACK_SRC=$DOC_TRACK_SRC ...@@ -28,8 +28,9 @@ ENV NEXT_PUBLIC_DOC_TRACK_SRC=$DOC_TRACK_SRC
ENV NEXT_PUBLIC_DOC_TRACK_SITE_ID=$DOC_TRACK_SITE_ID ENV NEXT_PUBLIC_DOC_TRACK_SITE_ID=$DOC_TRACK_SITE_ID
COPY . . COPY . .
RUN npm install RUN corepack enable
RUN npm run build RUN pnpm install
RUN pnpm build
FROM base AS runner FROM base AS runner
......
...@@ -12,8 +12,8 @@ FASTGPT_HOME_DOMAIN = #要跳转的FastGPT项目的域名,默认海外版 ...@@ -12,8 +12,8 @@ FASTGPT_HOME_DOMAIN = #要跳转的FastGPT项目的域名,默认海外版
你可以在FastGPT项目根目录下执行以下命令来运行文档。 你可以在FastGPT项目根目录下执行以下命令来运行文档。
```bash ```bash
npm install # 只能 npm install,不能 pnpm pnpm install
npm run dev pnpm dev
``` ```
项目会默认跑在`http:localhost:3000`端口 项目会默认跑在`http:localhost:3000`端口
...@@ -75,4 +75,4 @@ import FastGPTLink from '@/components/docs/linkFastGPT'; #FastGPT跳转链接组 ...@@ -75,4 +75,4 @@ import FastGPTLink from '@/components/docs/linkFastGPT'; #FastGPT跳转链接组
### 重定向 ### 重定向
`FastGPT/document/components/docs/not-found.tsx`文件中新增重定向规则。 `FastGPT/document/components/docs/not-found.tsx`文件中新增重定向规则。
\ No newline at end of file
...@@ -11,6 +11,7 @@ import { SidebarKeepOpen } from '@/components/sidebarKeepOpen'; ...@@ -11,6 +11,7 @@ import { SidebarKeepOpen } from '@/components/sidebarKeepOpen';
import { SidebarScrollFix } from '@/components/sidebarScrollFix'; import { SidebarScrollFix } from '@/components/sidebarScrollFix';
import { CategorySwitcher } from '@/components/docs/categorySwitcher'; import { CategorySwitcher } from '@/components/docs/categorySwitcher';
import { LanguageSwitcher } from '@/components/docs/languageSwitcher'; import { LanguageSwitcher } from '@/components/docs/languageSwitcher';
import { normalizePageTreeSections } from '@/lib/page-tree';
import { BookOpen, Code, Lightbulb, CircleHelp, Server } from 'lucide-react'; import { BookOpen, Code, Lightbulb, CircleHelp, Server } from 'lucide-react';
export default async function Layout({ export default async function Layout({
...@@ -26,8 +27,8 @@ export default async function Layout({ ...@@ -26,8 +27,8 @@ export default async function Layout({
const tab = [ const tab = [
{ {
icon: <BookOpen className={iconClass} />, icon: <BookOpen className={iconClass} />,
title: t('common:introduction', lang), title: t('common:guide', lang),
url: getLocalizedPath('/introduction', lang) url: getLocalizedPath('/guide', lang)
}, },
{ {
icon: <Lightbulb className={iconClass} />, icon: <Lightbulb className={iconClass} />,
...@@ -54,11 +55,14 @@ export default async function Layout({ ...@@ -54,11 +55,14 @@ export default async function Layout({
const tabUrls = tab.map((t) => t.url); const tabUrls = tab.map((t) => t.url);
const base = baseOptions(lang); const base = baseOptions(lang);
const tree = normalizePageTreeSections(
source.pageTree[lang] || source.pageTree[i18n.defaultLanguage]
);
return ( return (
<DocsLayout <DocsLayout
{...base} {...base}
tree={source.pageTree[lang] || source.pageTree[i18n.defaultLanguage]} tree={tree}
i18n={false} i18n={false}
searchToggle={{ searchToggle={{
enabled: true, enabled: true,
......
import { redirect } from 'next/navigation'; import { redirect } from 'next/navigation';
import { getLocalizedPath } from '@/lib/i18n'; import { defaultHomePath, getLocalizedPath } from '@/lib/i18n';
export default async function HomePage({ export default async function HomePage({
params params
...@@ -7,5 +7,5 @@ export default async function HomePage({ ...@@ -7,5 +7,5 @@ export default async function HomePage({
params: Promise<{ lang: string }>; params: Promise<{ lang: string }>;
}) { }) {
const { lang } = await params; const { lang } = await params;
redirect(getLocalizedPath('/introduction', lang)); redirect(getLocalizedPath(defaultHomePath, lang));
} }
'use client'; 'use client';
import { useEffect } from 'react'; import { useEffect } from 'react';
import { useCurrentLang } from '@/lib/localized-navigation'; import { useCurrentLang } from '@/lib/localized-navigation';
import { getLocalizedPath } from '@/lib/i18n'; import { defaultHomePath, getLocalizedPath } from '@/lib/i18n';
/** /**
* Fallback for pages not found * Fallback for pages not found
* Redirects to introduction page to avoid 404 * Redirects to getting started page to avoid 404
*/ */
export default function NotFound() { export default function NotFound() {
const lang = useCurrentLang(); const lang = useCurrentLang();
useEffect(() => { useEffect(() => {
// Redirect to introduction page // Redirect to getting started page
window.location.replace(getLocalizedPath('/introduction', lang)); window.location.replace(getLocalizedPath(defaultHomePath, lang));
}, [lang]); }, [lang]);
return null; return null;
......
...@@ -42,7 +42,7 @@ export function SwitcherDropdown({ ...@@ -42,7 +42,7 @@ export function SwitcherDropdown({
keepSidebarOpenOnSelect = false keepSidebarOpenOnSelect = false
}: SwitcherDropdownProps) { }: SwitcherDropdownProps) {
const [open, setOpen] = useState(false); const [open, setOpen] = useState(false);
const { closeOnRedirect } = useSidebar(); const closeOnRedirect = useSidebar().closeOnRedirect as { current: boolean };
const selected = options.find((item) => item.active) ?? options[0]; const selected = options.find((item) => item.active) ?? options[0];
const selectItem = (item: SwitcherDropdownOption) => { const selectItem = (item: SwitcherDropdownOption) => {
......
'use client'; 'use client';
import { usePathname } from 'next/navigation'; import { usePathname } from 'next/navigation';
import { createContext, useContext, useEffect, type FC, type ReactNode } from 'react'; import {
createContext,
useContext,
useEffect,
type FC,
type ReactNode
} from 'react';
import { import {
SidebarItem, SidebarItem,
SidebarFolder, SidebarFolder,
...@@ -10,9 +16,19 @@ import { ...@@ -10,9 +16,19 @@ import {
} from 'fumadocs-ui/components/layout/sidebar'; } from 'fumadocs-ui/components/layout/sidebar';
import { type SidebarComponents } from 'fumadocs-ui/components/layout/sidebar'; import { type SidebarComponents } from 'fumadocs-ui/components/layout/sidebar';
import { type PageTree } from 'fumadocs-core/server'; import { type PageTree } from 'fumadocs-core/server';
import { ExternalLink } from 'lucide-react';
import { cn } from '@/lib/cn';
const VIRTUAL_SECTION_ID_SUFFIX = '#virtual-section';
const NestingLevelContext = createContext(0); const NestingLevelContext = createContext(0);
type TaggedPageTreeItem = PageTree.Item & {
sidebarTag?: string;
};
const getSidebarItemTag = (item: PageTree.Item) => (item as TaggedPageTreeItem).sidebarTag;
const isInFolder = (folder: PageTree.Folder, pathname: string): boolean => { const isInFolder = (folder: PageTree.Folder, pathname: string): boolean => {
const check = (item: PageTree.Item | PageTree.Folder): boolean => { const check = (item: PageTree.Item | PageTree.Folder): boolean => {
if ('children' in item) { if ('children' in item) {
...@@ -29,7 +45,9 @@ const isInFolder = (folder: PageTree.Folder, pathname: string): boolean => { ...@@ -29,7 +45,9 @@ const isInFolder = (folder: PageTree.Folder, pathname: string): boolean => {
const CustomItem: FC<{ item: PageTree.Item }> = ({ item }) => { const CustomItem: FC<{ item: PageTree.Item }> = ({ item }) => {
const pathname = usePathname(); const pathname = usePathname();
const level = useContext(NestingLevelContext);
const isActive = pathname === item.url; const isActive = pathname === item.url;
const tag = getSidebarItemTag(item);
useEffect(() => { useEffect(() => {
if (isActive) { if (isActive) {
...@@ -45,30 +63,73 @@ const CustomItem: FC<{ item: PageTree.Item }> = ({ item }) => { ...@@ -45,30 +63,73 @@ const CustomItem: FC<{ item: PageTree.Item }> = ({ item }) => {
return ( return (
<SidebarItem <SidebarItem
href={item.url} href={item.url}
className={`rounded-lg hover:cursor-pointer ${isActive && 'bg-blue-50 font-bold text-[#3370FF] dark:bg-[rgba(104,143,232,0.1)] dark:text-blue-400'} className={cn(
`} 'group/sidebar-item min-h-8 w-full min-w-0 max-w-full rounded-lg px-2 text-sm hover:cursor-pointer',
!isActive && 'text-fd-muted-foreground hover:text-fd-accent-foreground',
level === 0 && 'font-medium',
isActive &&
'bg-blue-50 font-bold text-[#3370FF] hover:bg-blue-50 hover:text-[#3370FF] dark:bg-[rgba(104,143,232,0.1)] dark:text-blue-400 dark:hover:bg-[rgba(104,143,232,0.1)] dark:hover:text-blue-400'
)}
> >
{item.icon} {item.icon}
{item.name} <span className="inline-flex min-w-0 flex-1 flex-wrap items-center gap-1.5">
<span className="min-w-0 break-words leading-5">{item.name}</span>
{tag && (
<span
className={cn(
'shrink-0 rounded-md px-1.5 py-0.5 text-[10px] font-semibold leading-none',
isActive
? 'bg-[#3370FF] text-white dark:bg-blue-400 dark:text-slate-950'
: 'bg-blue-50 text-[#3370FF] dark:bg-blue-400/10 dark:text-blue-300'
)}
>
{tag}
</span>
)}
{item.external && (
<ExternalLink
aria-label="外部链接"
className="!size-2.5 shrink-0 text-fd-muted-foreground/60 opacity-0 transition-opacity group-hover/sidebar-item:opacity-100 group-focus-visible/sidebar-item:opacity-100"
/>
)}
</span>
</SidebarItem> </SidebarItem>
); );
}; };
const CustomFolder: FC<{ item: PageTree.Folder; level: number; children: ReactNode }> = ({ const CustomFolder: FC<{ item: PageTree.Folder; level: number; children: ReactNode }> = ({
item, item,
level,
children children
}) => { }) => {
const pathname = usePathname(); const pathname = usePathname();
const level = useContext(NestingLevelContext);
const isSectionFolder = level === 0;
const isVirtualSection = item.$id?.endsWith(VIRTUAL_SECTION_ID_SUFFIX);
const shouldExpand = isInFolder(item, pathname); const shouldExpand = isInFolder(item, pathname);
return ( return (
<NestingLevelContext.Provider value={level + 1}> <NestingLevelContext.Provider value={level + 1}>
<SidebarFolder defaultOpen={shouldExpand} className="bg-blue hover:cursor-pointer"> <SidebarFolder
<SidebarFolderTrigger className="hover:cursor-pointer">{item.name}</SidebarFolderTrigger> defaultOpen={isSectionFolder || item.defaultOpen || shouldExpand}
<SidebarFolderContent className="bg-blue hover:cursor-pointer"> className={cn(isSectionFolder && 'mt-5 first:mt-1')}
{children} >
</SidebarFolderContent> {isSectionFolder ? (
<div
className={cn(
'px-2 pb-1 text-sm font-semibold text-fd-foreground',
isVirtualSection && 'text-fd-card-foreground'
)}
>
{item.name}
</div>
) : (
<SidebarFolderTrigger
className="min-h-8 min-w-0 max-w-full rounded-lg px-2 text-sm text-fd-muted-foreground hover:cursor-pointer hover:text-fd-accent-foreground data-[state=open]:text-fd-foreground [&>svg[data-icon]]:shrink-0"
>
<span className="min-w-0 flex-1 break-words text-left leading-5">{item.name}</span>
</SidebarFolderTrigger>
)}
<SidebarFolderContent>{children}</SidebarFolderContent>
</SidebarFolder> </SidebarFolder>
</NestingLevelContext.Provider> </NestingLevelContext.Provider>
); );
...@@ -78,7 +139,11 @@ const CustomSeparator: FC<{ item: PageTree.Separator }> = ({ item }) => { ...@@ -78,7 +139,11 @@ const CustomSeparator: FC<{ item: PageTree.Separator }> = ({ item }) => {
const level = useContext(NestingLevelContext); const level = useContext(NestingLevelContext);
return ( return (
<div <div
className={`text-sm font-semibold ${level > 0 ? 'pl-6' : 'px-2'} pr-2 py-1.5 mt-1 mb-1 first:mt-0`} className={cn(
'text-sm font-semibold',
level > 0 ? 'pl-6' : 'px-2',
'pr-2 pb-2 pt-5 first:pt-1'
)}
> >
{item.name} {item.name}
</div> </div>
......
...@@ -17,7 +17,7 @@ const getCategoryKey = (path: string): string => { ...@@ -17,7 +17,7 @@ const getCategoryKey = (path: string): string => {
export function SidebarKeepOpen({ tabUrls }: { tabUrls: string[] }) { export function SidebarKeepOpen({ tabUrls }: { tabUrls: string[] }) {
const pathname = usePathname(); const pathname = usePathname();
const prevPathname = useRef(pathname); const prevPathname = useRef(pathname);
const { closeOnRedirect } = useSidebar(); const closeOnRedirect = useSidebar().closeOnRedirect as { current: boolean };
if (prevPathname.current !== pathname) { if (prevPathname.current !== pathname) {
const prev = prevPathname.current; const prev = prevPathname.current;
......
{ {
"title": "Commercial Admin", "title": "Admin Console",
"description": "Commercial admin usage tutorial", "root": false,
"pages": [ "pages": [
"sso", "sso",
"teamMode" "teamMode"
......
{
"title": "管理员后台",
"root": false,
"pages": [
"sso",
"teamMode"
]
}
...@@ -22,7 +22,7 @@ FastGPT-pro includes a standard set of SSO and member sync interfaces. The syste ...@@ -22,7 +22,7 @@ FastGPT-pro includes a standard set of SSO and member sync interfaces. The syste
FastGPT-SSO-Service aggregates SSO and member sync interfaces from different sources and converts them into the format recognized by fastgpt-pro. FastGPT-SSO-Service aggregates SSO and member sync interfaces from different sources and converts them into the format recognized by fastgpt-pro.
![](../../../../public/imgs/sso2.png) ![](/imgs/sso2.png)
## System Configuration Tutorial ## System Configuration Tutorial
...@@ -106,9 +106,9 @@ env: ...@@ -106,9 +106,9 @@ env:
</thead> </thead>
<tbody> <tbody>
<tr> <tr>
<td>![WeCom](../../../../public/imgs/sso15.png)</td> <td>![WeCom](/imgs/sso15.png)</td>
<td>![DingTalk](../../../../public/imgs/sso16.png)</td> <td>![DingTalk](/imgs/sso16.png)</td>
<td>![Lark](../../../../public/imgs/sso17.png)</td> <td>![Lark](/imgs/sso17.png)</td>
</tr> </tr>
</tbody> </tbody>
</table> </table>
...@@ -117,7 +117,7 @@ env: ...@@ -117,7 +117,7 @@ env:
If you need to sync members from an external system, you can enable member sync. For team mode details, see: [Team Mode Documentation](./teamMode.en.mdx) If you need to sync members from an external system, you can enable member sync. For team mode details, see: [Team Mode Documentation](./teamMode.en.mdx)
![](../../../../public/imgs/sso1.png) ![](/imgs/sso1.png)
#### 4. Optional Configuration #### 4. Optional Configuration
...@@ -140,13 +140,13 @@ env: ...@@ -140,13 +140,13 @@ env:
Go to the developer console, click on your enterprise self-built app, and view the app credentials on the Credentials & Basic Info page. Go to the developer console, click on your enterprise self-built app, and view the app credentials on the Credentials & Basic Info page.
![](../../../../public/imgs/sso3.png) ![](/imgs/sso3.png)
#### 2. Permission Configuration #### 2. Permission Configuration
Go to the developer console, click on your enterprise self-built app, and enable permissions on the Permission Management page under Development Configuration. Go to the developer console, click on your enterprise self-built app, and enable permissions on the Permission Management page under Development Configuration.
![](../../../../public/imgs/sso4.png) ![](/imgs/sso4.png)
You can use the **Batch Import/Export Permissions** feature to import the following permission configuration: You can use the **Batch Import/Export Permissions** feature to import the following permission configuration:
...@@ -174,7 +174,7 @@ Note: The accessible data scope must be set to visible to all members. ...@@ -174,7 +174,7 @@ Note: The accessible data scope must be set to visible to all members.
Go to the developer console, click on your enterprise self-built app, and set the redirect URL in Security Settings under Development Configuration. Go to the developer console, click on your enterprise self-built app, and set the redirect URL in Security Settings under Development Configuration.
The redirect URL should follow the format `https://www.fastgpt.cn/login/provider` — replace the domain with your publicly accessible FastGPT domain. The redirect URL should follow the format `https://www.fastgpt.cn/login/provider` — replace the domain with your publicly accessible FastGPT domain.
![](../../../../public/imgs/sso5.png) ![](/imgs/sso5.png)
#### 4. yml Configuration Example #### 4. yml Configuration Example
...@@ -209,7 +209,7 @@ fastgpt-sso: ...@@ -209,7 +209,7 @@ fastgpt-sso:
CLIENT_ID and CLIENT_SECRET CLIENT_ID and CLIENT_SECRET
Go to the DingTalk Open Platform, click App Development, select your app, and record the Client ID and Client Secret on the Credentials & Basic Info page. Go to the DingTalk Open Platform, click App Development, select your app, and record the Client ID and Client Secret on the Credentials & Basic Info page.
![](../../../../public/imgs/sso6.png) ![](/imgs/sso6.png)
#### 2. Permission Configuration #### 2. Permission Configuration
...@@ -261,7 +261,7 @@ fastgpt-sso: ...@@ -261,7 +261,7 @@ fastgpt-sso:
b. Go to the "My Enterprise" page and find the Enterprise ID b. Go to the "My Enterprise" page and find the Enterprise ID
![](../../../../public/imgs/sso7.png) ![](/imgs/sso7.png)
2. Create an internal app for FastGPT: 2. Create an internal app for FastGPT:
...@@ -269,10 +269,10 @@ fastgpt-sso: ...@@ -269,10 +269,10 @@ fastgpt-sso:
b. Ensure the app's visibility scope is set to all (i.e., root department) b. Ensure the app's visibility scope is set to all (i.e., root department)
![](../../../../public/imgs/sso8.png) ![](/imgs/sso8.png)
![](../../../../public/imgs/sso9.png) ![](/imgs/sso9.png)
3. A domain name with the following requirements: 3. A domain name with the following requirements:
...@@ -284,11 +284,11 @@ fastgpt-sso: ...@@ -284,11 +284,11 @@ fastgpt-sso:
d. You can set "Hide app in workbench" at the bottom of the WeCom Authorization Login page d. You can set "Hide app in workbench" at the bottom of the WeCom Authorization Login page
![](../../../../public/imgs/sso10.png) ![](/imgs/sso10.png)
![](../../../../public/imgs/sso11.png) ![](/imgs/sso11.png)
![](../../../../public/imgs/sso12.png) ![](/imgs/sso12.png)
4. Get the "Contact Sync Assistant" secret 4. Get the "Contact Sync Assistant" secret
...@@ -296,7 +296,7 @@ fastgpt-sso: ...@@ -296,7 +296,7 @@ fastgpt-sso:
Security & Management -- Management Tools -- Contact Sync Security & Management -- Management Tools -- Contact Sync
![](../../../../public/imgs/sso13.png) ![](/imgs/sso13.png)
5. Enable interface sync 5. Enable interface sync
...@@ -304,7 +304,7 @@ fastgpt-sso: ...@@ -304,7 +304,7 @@ fastgpt-sso:
7. Configure enterprise trusted IPs 7. Configure enterprise trusted IPs
![](../../../../public/imgs/sso14.png) ![](/imgs/sso14.png)
#### 2. yml Configuration Example #### 2. yml Configuration Example
...@@ -427,7 +427,7 @@ fastgpt-sso: ...@@ -427,7 +427,7 @@ fastgpt-sso:
Below is the standard interface documentation for SSO and member sync in FastGPT-pro. If you need to integrate with a non-standard system, refer to this section for development. Below is the standard interface documentation for SSO and member sync in FastGPT-pro. If you need to integrate with a non-standard system, refer to this section for development.
![](../../../../public/imgs/sso18.png) ![](/imgs/sso18.png)
FastGPT provides the following standard interfaces: FastGPT provides the following standard interfaces:
......
...@@ -22,7 +22,7 @@ FastGPT-pro 中,有一套标准的SSO 和成员同步接口,系统会根据 ...@@ -22,7 +22,7 @@ FastGPT-pro 中,有一套标准的SSO 和成员同步接口,系统会根据
FastGPT-SSO-Service 是为了聚合不同来源的 SSO 和成员同步接口,将他们转成 fastgpt-pro 可识别的接口。 FastGPT-SSO-Service 是为了聚合不同来源的 SSO 和成员同步接口,将他们转成 fastgpt-pro 可识别的接口。
![](../../../../public/imgs/sso2.png) ![](/imgs/sso2.png)
## 系统配置教程 ## 系统配置教程
...@@ -106,9 +106,9 @@ env: ...@@ -106,9 +106,9 @@ env:
</thead> </thead>
<tbody> <tbody>
<tr> <tr>
<td>![企业微信](../../../../public/imgs/sso15.png)</td> <td>![企业微信](/imgs/sso15.png)</td>
<td>![钉钉](../../../../public/imgs/sso16.png)</td> <td>![钉钉](/imgs/sso16.png)</td>
<td>![飞书](../../../../public/imgs/sso17.png)</td> <td>![飞书](/imgs/sso17.png)</td>
</tr> </tr>
</tbody> </tbody>
</table> </table>
...@@ -117,7 +117,7 @@ env: ...@@ -117,7 +117,7 @@ env:
如果需要同步外部系统的成员,可以选择开启成员同步。团队模式具体可参考:[团队模式说明文档](./teamMode.mdx) 如果需要同步外部系统的成员,可以选择开启成员同步。团队模式具体可参考:[团队模式说明文档](./teamMode.mdx)
![](../../../../public/imgs/sso1.png) ![](/imgs/sso1.png)
#### 4. 可选配置 #### 4. 可选配置
...@@ -140,13 +140,13 @@ env: ...@@ -140,13 +140,13 @@ env:
进入开发者后台,点击企业自建应用,在凭证与基础信息页面查看应用凭证。 进入开发者后台,点击企业自建应用,在凭证与基础信息页面查看应用凭证。
![](../../../../public/imgs/sso3.png) ![](/imgs/sso3.png)
#### 2. 权限配置 #### 2. 权限配置
进入开发者后台,点击企业自建应用,在开发配置的权限管理页面开通权限。 进入开发者后台,点击企业自建应用,在开发配置的权限管理页面开通权限。
![](../../../../public/imgs/sso4.png) ![](/imgs/sso4.png)
可以使用**批量导入/导出权限** 功能,导入如下权限配置: 可以使用**批量导入/导出权限** 功能,导入如下权限配置:
...@@ -174,7 +174,7 @@ env: ...@@ -174,7 +174,7 @@ env:
进入开发者后台,点击企业自建应用,在开发配置的安全设置中设置重定向URL, 进入开发者后台,点击企业自建应用,在开发配置的安全设置中设置重定向URL,
重定向 URL 形如 `https://www.fastgpt.cn/login/provider` 前面的域名修改为部署后公开可访问的 fastgpt 的域名 重定向 URL 形如 `https://www.fastgpt.cn/login/provider` 前面的域名修改为部署后公开可访问的 fastgpt 的域名
![](../../../../public/imgs/sso5.png) ![](/imgs/sso5.png)
#### 4. yml 配置示例 #### 4. yml 配置示例
...@@ -209,7 +209,7 @@ fastgpt-sso: ...@@ -209,7 +209,7 @@ fastgpt-sso:
CLIENT_ID 与 CLIENT_SECRET CLIENT_ID 与 CLIENT_SECRET
进入钉钉开放平台,点击应用开发,选择自己的应用进入,记录在凭证与基础信息页面下的Client ID与Client secret。 进入钉钉开放平台,点击应用开发,选择自己的应用进入,记录在凭证与基础信息页面下的Client ID与Client secret。
![](../../../../public/imgs/sso6.png) ![](/imgs/sso6.png)
#### 2. 权限配置 #### 2. 权限配置
...@@ -261,7 +261,7 @@ fastgpt-sso: ...@@ -261,7 +261,7 @@ fastgpt-sso:
b. 点击 【我的企业】 页面,查看企业的 **企业ID** b. 点击 【我的企业】 页面,查看企业的 **企业ID**
![](../../../../public/imgs/sso7.png) ![](/imgs/sso7.png)
2. 创建一个供 FastGPT 使用的内部应用: 2. 创建一个供 FastGPT 使用的内部应用:
...@@ -269,10 +269,10 @@ fastgpt-sso: ...@@ -269,10 +269,10 @@ fastgpt-sso:
b. 保证这个应用的可见范围为全部(也就是根部门) b. 保证这个应用的可见范围为全部(也就是根部门)
![](../../../../public/imgs/sso8.png) ![](/imgs/sso8.png)
![](../../../../public/imgs/sso9.png) ![](/imgs/sso9.png)
3. 一个域名。并且要求: 3. 一个域名。并且要求:
...@@ -284,11 +284,11 @@ fastgpt-sso: ...@@ -284,11 +284,11 @@ fastgpt-sso:
d. 可以在【企业微信授权登陆】页面下方设置"在工作台隐藏应用" d. 可以在【企业微信授权登陆】页面下方设置"在工作台隐藏应用"
![](../../../../public/imgs/sso10.png) ![](/imgs/sso10.png)
![](../../../../public/imgs/sso11.png) ![](/imgs/sso11.png)
![](../../../../public/imgs/sso12.png) ![](/imgs/sso12.png)
4. 获取 "通讯录同步助手" secret 4. 获取 "通讯录同步助手" secret
...@@ -296,7 +296,7 @@ fastgpt-sso: ...@@ -296,7 +296,7 @@ fastgpt-sso:
【安全与管理】-- 【管理工具】 -- 【通讯录同步】 【安全与管理】-- 【管理工具】 -- 【通讯录同步】
![](../../../../public/imgs/sso13.png) ![](/imgs/sso13.png)
5. 开启接口同步 5. 开启接口同步
...@@ -304,7 +304,7 @@ fastgpt-sso: ...@@ -304,7 +304,7 @@ fastgpt-sso:
7. 配置企业可信 IP 7. 配置企业可信 IP
![](../../../../public/imgs/sso14.png) ![](/imgs/sso14.png)
#### 2. yml 配置示例 #### 2. yml 配置示例
...@@ -427,7 +427,7 @@ fastgpt-sso: ...@@ -427,7 +427,7 @@ fastgpt-sso:
以下是 FastGPT-pro 中,SSO 和成员同步的标准接口文档,如果需要对接非标准系统,可以参考该章节进行开发。 以下是 FastGPT-pro 中,SSO 和成员同步的标准接口文档,如果需要对接非标准系统,可以参考该章节进行开发。
![](../../../../public/imgs/sso18.png) ![](/imgs/sso18.png)
FastGPT 提供如下标准接口支持: FastGPT 提供如下标准接口支持:
......
...@@ -78,4 +78,4 @@ For specific sync methods and rules, see [SSO & External Member Sync](./sso.en.m ...@@ -78,4 +78,4 @@ For specific sync methods and rules, see [SSO & External Member Sync](./sso.en.m
In `fastgpt-pro`'s System Configuration - Member Configuration, you can configure the team mode. In `fastgpt-pro`'s System Configuration - Member Configuration, you can configure the team mode.
![](../../../../public/imgs/teammode.png) ![](/imgs/teammode.png)
...@@ -78,4 +78,4 @@ description: FastGPT 团队模式说明文档 ...@@ -78,4 +78,4 @@ description: FastGPT 团队模式说明文档
在 `fastgpt-pro` 的`系统配置-成员配置`中,可以配置团队模式。 在 `fastgpt-pro` 的`系统配置-成员配置`中,可以配置团队模式。
![](../../../../public/imgs/teammode.png) ![](/imgs/teammode.png)
...@@ -11,13 +11,13 @@ The system supports three evaluation metrics: answer accuracy, question relevanc ...@@ -11,13 +11,13 @@ The system supports three evaluation metrics: answer accuracy, question relevanc
### Go to the Evaluation Page ### Go to the Evaluation Page
![Create app evaluation](../../../../public/imgs/evaluation1.png) ![Create app evaluation](/imgs/evaluation1.png)
Navigate to the App Evaluation section under Workspace and click the "Create Task" button in the upper right corner. Navigate to the App Evaluation section under Workspace and click the "Create Task" button in the upper right corner.
### Fill in Evaluation Details ### Fill in Evaluation Details
![Create app evaluation](../../../../public/imgs/evaluation2.png) ![Create app evaluation](/imgs/evaluation2.png)
On the task creation page, provide the following: On the task creation page, provide the following:
...@@ -27,7 +27,7 @@ On the task creation page, provide the following: ...@@ -27,7 +27,7 @@ On the task creation page, provide the following:
### Prepare Evaluation Data ### Prepare Evaluation Data
![Create app evaluation](../../../../public/imgs/evaluation2.png) ![Create app evaluation](/imgs/evaluation2.png)
After selecting the target app, a button appears to download the CSV template. The template includes these fields: After selecting the target app, a button appears to download the CSV template. The template includes these fields:
...@@ -47,7 +47,7 @@ Upload the completed file and click "Start Evaluation" to create the task. ...@@ -47,7 +47,7 @@ Upload the completed file and click "Start Evaluation" to create the task.
### Evaluation List ### Evaluation List
![View app evaluation](../../../../public/imgs/evaluation4.png) ![View app evaluation](/imgs/evaluation4.png)
The evaluation list shows all tasks with key information: The evaluation list shows all tasks with key information:
...@@ -61,7 +61,7 @@ Use this to compare results across iterations as you improve your app. ...@@ -61,7 +61,7 @@ Use this to compare results across iterations as you improve your app.
### Evaluation Details ### Evaluation Details
![View app evaluation](../../../../public/imgs/evaluation5.png) ![View app evaluation](/imgs/evaluation5.png)
Click "View Details" to open the detail page: Click "View Details" to open the detail page:
......
...@@ -11,13 +11,13 @@ FastGPT v4.11.0 撘憪憭 ...@@ -11,13 +11,13 @@ FastGPT v4.11.0 撘憪憭
### 进入评测页面 ### 进入评测页面
![创建应用评测](../../../../public/imgs/evaluation1.png) ![创建应用评测](/imgs/evaluation1.png)
进入工作台下的应用评测目录,点击右上角的"创建任务"按钮。 进入工作台下的应用评测目录,点击右上角的"创建任务"按钮。
### 填写评测信息 ### 填写评测信息
![创建应用评测](../../../../public/imgs/evaluation2.png) ![创建应用评测](/imgs/evaluation2.png)
在创建任务页面中,需要填写以下信息: 在创建任务页面中,需要填写以下信息:
...@@ -27,7 +27,7 @@ FastGPT v4.11.0 撘憪憭 ...@@ -27,7 +27,7 @@ FastGPT v4.11.0 撘憪憭
### 准备评测数据 ### 准备评测数据
![创建应用评测](../../../../public/imgs/evaluation2.png) ![创建应用评测](/imgs/evaluation2.png)
选择评测应用后,系统会弹出下载CSV模板的按钮。模板包含以下字段: 选择评测应用后,系统会弹出下载CSV模板的按钮。模板包含以下字段:
...@@ -47,7 +47,7 @@ FastGPT v4.11.0 撘憪憭 ...@@ -47,7 +47,7 @@ FastGPT v4.11.0 撘憪憭
### 评测列表 ### 评测列表
![查看应用评测](../../../../public/imgs/evaluation4.png) ![查看应用评测](/imgs/evaluation4.png)
评测列表页面显示所有评测任务,包含以下关键信息: 评测列表页面显示所有评测任务,包含以下关键信息:
...@@ -61,7 +61,7 @@ FastGPT v4.11.0 撘憪憭 ...@@ -61,7 +61,7 @@ FastGPT v4.11.0 撘憪憭
### 评测详情 ### 评测详情
![查看应用评测](../../../../public/imgs/evaluation5.png) ![查看应用评测](/imgs/evaluation5.png)
点击"查看详情"可进入评测任务的详情页面: 点击"查看详情"可进入评测任务的详情页面:
......
---
title: AI Configuration Parameters
description: FastGPT AI configuration parameters explained
---
import { Alert } from '@/components/docs/Alert';
The AI Chat module in FastGPT includes an advanced configuration section with various model parameters. This guide explains what each setting does.
| | | |
| --- | --- | --- |
| ![alt text](/imgs/image-51.png) | ![alt text](/imgs/image-52.png) | ![alt text](/imgs/image-53.png) |
## Stream Response (Workflow AI Chat only)
Previously called "Return AI Content," now renamed to "Stream Response."
This is a toggle. When enabled, the AI Chat module streams its output to the browser (API response) in real time. When disabled, the model is called in non-streaming mode and the output is not sent to the browser. However, the generated content can still be accessed via the [AI Reply] output and connected to other modules for further use.
### Max Context
The maximum number of tokens the model can handle.
### Function Calling
Models that support function calling are more accurate when using tools.
### Temperature
Lower values produce more focused, deterministic responses (in practice, the difference is subtle).
### Max Output Tokens
The maximum number of tokens in the response. Note: this is the response token limit, not the context token limit.
Typically: max output = min(model's max output limit, max context - used context)
Because of this, you generally don't set max context to the model's actual maximum — instead, reserve space for the response. For example, a 128k model might use max_context=115000.
### System Prompt
Placed at the beginning of the context array with role `system` to guide the model's behavior.
### Memory Rounds (Basic Mode only)
Configures how many conversation rounds the model retains. If the context exceeds the model's limit, the system automatically truncates to stay within bounds.
So even if you set 30 rounds, the actual number at runtime may be fewer.
\ No newline at end of file
---
title: AI 相关参数配置说明
description: FastGPT AI 相关参数配置说明
---
import { Alert } from '@/components/docs/Alert';
在 FastGPT 的 AI 对话模块中,有一个 AI 高级配置,里面包含了 AI 模型的参数配置,本文详细介绍这些配置的含义。
| | | |
| --- | --- | --- |
| ![alt text](/imgs/image-51.png) | ![alt text](/imgs/image-52.png) | ![alt text](/imgs/image-53.png) |
## 流响应(高级编排 AI 对话 特有)
旧版名字叫做:返回 AI 内容;新版改名:流响应。
这是一个开关,打开的时候,当 AI 对话模块运行时,会将其输出的内容返回到浏览器(API响应);
如果关闭,会强制使用非流模式调用模型,并且 AI 输出的内容不会返回到浏览器,但是生成的内容仍可以通过【AI回复】进行输出。你可以将【AI回复】连接到其他模块中进行二次使用。
### 最大上下文
代表模型最多容纳的文字数量。
### 函数调用
支持函数调用的模型,在使用工具时更加准确。
### 温度
越低回答越严谨,少废话(实测下来,感觉差别不大)
### 回复上限
最大回复 token 数量。注意,是回复的Tokens!不是上下文 tokens。
通常,回复上限=min(模型允许的最大回复上限, 最大上下文-已用上下文)
所以,一般配置模型时,不会把最大上下文配置成模型实际最大上下文,而是预留预定空间给回答,例如 128k 模型,可以配置 max_context=115000
### 系统提示词
被放置在上下文数组的最前面,role 为 system,用于引导模型。
### 记忆轮数(仅简易模式)
可以配置模型支持的记忆轮数,如果模型的超出上下文,系统会自动截断,尽可能保证不超模型上下文。
所以尽管配置 30 轮对话,实际运行时候,不一定会达到 30 轮。
...@@ -3,7 +3,7 @@ title: Chat Input Guide ...@@ -3,7 +3,7 @@ title: Chat Input Guide
description: FastGPT chat input guide description: FastGPT chat input guide
--- ---
![](../../../../public/imgs/questionGuide.png) ![](/imgs/questionGuide.png)
## What is Custom Question Guidance? ## What is Custom Question Guidance?
......
...@@ -3,7 +3,7 @@ title: 对话问题引导 ...@@ -3,7 +3,7 @@ title: 对话问题引导
description: FastGPT 对话问题引导 description: FastGPT 对话问题引导
--- ---
![](../../../../public/imgs/questionGuide.png) ![](/imgs/questionGuide.png)
## 什么是自定义问题引导 ## 什么是自定义问题引导
......
...@@ -12,11 +12,11 @@ When file upload is enabled in Basic Mode, it uses tool-calling mode — the mod ...@@ -12,11 +12,11 @@ When file upload is enabled in Basic Mode, it uses tool-calling mode — the mod
Find the file upload option on the left panel and click the `Enable`/`Disable` toggle to open the configuration dialog. Find the file upload option on the left panel and click the `Enable`/`Disable` toggle to open the configuration dialog.
![Enable file upload](../../../../public/imgs/fileinpu-1.png) ![Enable file upload](/imgs/fileinpu-1.png)
Once enabled, a file selection icon appears in the chat input area. Click it to select files for upload. Once enabled, a file selection icon appears in the chat input area. Click it to select files for upload.
![Enable file upload](../../../../public/imgs/fileinpu-2.png) ![Enable file upload](/imgs/fileinpu-2.png)
**Behavior** **Behavior**
...@@ -26,17 +26,17 @@ Starting from version 4.8.13, Basic Mode forces file parsing and injects the con ...@@ -26,17 +26,17 @@ Starting from version 4.8.13, Basic Mode forces file parsing and injects the con
In Workflows, find the `File Input` option in the system configuration panel and click the `Enable`/`Disable` toggle to open the configuration dialog. In Workflows, find the `File Input` option in the system configuration panel and click the `Enable`/`Disable` toggle to open the configuration dialog.
![Enable file upload](../../../../public/imgs/fileinpu-4.jpg) ![Enable file upload](/imgs/fileinpu-4.jpg)
There are many ways to use files in Workflows. The simplest approach, shown below, connects document parsing via tool calling — achieving the same result as Basic Mode. There are many ways to use files in Workflows. The simplest approach, shown below, connects document parsing via tool calling — achieving the same result as Basic Mode.
| | | | | |
| --------------------- | --------------------- | | --------------------- | --------------------- |
| ![](../../../../public/imgs/image-5.png) | ![](../../../../public/imgs/image-6.png) | | ![](/imgs/image-5.png) | ![](/imgs/image-6.png) |
You can also use Workflows to extract or analyze document content, then pass the results to HTTP requests or other modules to build a document processing pipeline. You can also use Workflows to extract or analyze document content, then pass the results to HTTP requests or other modules to build a document processing pipeline.
![Document parsing](../../../../public/imgs/image-7.png) ![Document parsing](/imgs/image-7.png)
## How Document Parsing Works ## How Document Parsing Works
......
{
"title": "General Configuration",
"description": "Model, file upload, input guide, and basic app configuration.",
"pages": ["ai_settings", "fileInput", "chat_input_guide"]
}
{
"title": "通用配置",
"description": "应用构建中的模型、文件上传、输入引导和基础配置。",
"pages": ["ai_settings", "fileInput", "chat_input_guide"]
}
{
"title": "App Building",
"root": false,
"pages": [
"general",
"workflow",
"tools",
"publish",
"evaluation"
]
}
{
"title": "应用构建",
"root": false,
"pages": [
"general",
"workflow",
"tools",
"publish",
"evaluation"
]
}
...@@ -9,11 +9,11 @@ Starting from version 4.8.16, FastGPT commercial edition supports direct DingTal ...@@ -9,11 +9,11 @@ Starting from version 4.8.16, FastGPT commercial edition supports direct DingTal
1. Create an internal enterprise app in the [DingTalk Developer Console](https://open-dev.dingtalk.com/fe/app). 1. Create an internal enterprise app in the [DingTalk Developer Console](https://open-dev.dingtalk.com/fe/app).
![Image 1](../../../public/imgs/dingtalk-bot-1.png) ![Image 1](/imgs/dingtalk-bot-1.png)
2. Obtain the **Client ID** and **Client Secret**. 2. Obtain the **Client ID** and **Client Secret**.
![Image 2](../../../public/imgs/dingtalk-bot-2.png) ![Image 2](/imgs/dingtalk-bot-2.png)
## 2. Add a Publishing Channel in FastGPT ## 2. Add a Publishing Channel in FastGPT
...@@ -21,7 +21,7 @@ In FastGPT, select the app you want to integrate. On the **Publishing Channels** ...@@ -21,7 +21,7 @@ In FastGPT, select the app you want to integrate. On the **Publishing Channels**
Enter the **Client ID** and **Client Secret** obtained earlier into the configuration dialog. Enter the **Client ID** and **Client Secret** obtained earlier into the configuration dialog.
![Image 3](../../../public/imgs/dingtalk-bot-3.png) ![Image 3](/imgs/dingtalk-bot-3.png)
After creation, click the **Request URL** button and copy the callback address. After creation, click the **Request URL** button and copy the callback address.
...@@ -29,13 +29,13 @@ After creation, click the **Request URL** button and copy the callback address. ...@@ -29,13 +29,13 @@ After creation, click the **Request URL** button and copy the callback address.
In the DingTalk Developer Console, click **Add App Capability** on the left sidebar, and add the **Bot** capability to the internal enterprise app you just created. In the DingTalk Developer Console, click **Add App Capability** on the left sidebar, and add the **Bot** capability to the internal enterprise app you just created.
![Image 4](../../../public/imgs/dingtalk-bot-4.png) ![Image 4](/imgs/dingtalk-bot-4.png)
## 4. Configure Bot Callback Address ## 4. Configure Bot Callback Address
Click the **Bot** capability on the left sidebar, then set the **Message Receiving Mode** at the bottom to **HTTP Mode**, and paste the FastGPT callback address you copied earlier as the message receiving address. Click the **Bot** capability on the left sidebar, then set the **Message Receiving Mode** at the bottom to **HTTP Mode**, and paste the FastGPT callback address you copied earlier as the message receiving address.
![Image 5](../../../public/imgs/dingtalk-bot-5.png) ![Image 5](/imgs/dingtalk-bot-5.png)
After debugging, click **Publish**. After debugging, click **Publish**.
...@@ -43,15 +43,15 @@ After debugging, click **Publish**. ...@@ -43,15 +43,15 @@ After debugging, click **Publish**.
After the bot is published, you still need to publish the app version on the **Version Management and Publishing** page. After the bot is published, you still need to publish the app version on the **Version Management and Publishing** page.
![Image 6](../../../public/imgs/dingtalk-bot-6.png) ![Image 6](/imgs/dingtalk-bot-6.png)
Click **Create New Version**, set the version number and description, then click save to publish. Click **Create New Version**, set the version number and description, then click save to publish.
![Image 7](../../../public/imgs/dingtalk-bot-7.png) ![Image 7](/imgs/dingtalk-bot-7.png)
Once the app is published, you can use the bot within your DingTalk enterprise. You can chat with the bot privately, or add the bot to a group and `@mention the bot` to start a conversation. Once the app is published, you can use the bot within your DingTalk enterprise. You can chat with the bot privately, or add the bot to a group and `@mention the bot` to start a conversation.
![Image 8](../../../public/imgs/dingtalk-bot-8.png) ![Image 8](/imgs/dingtalk-bot-8.png)
## FAQ ## FAQ
......
...@@ -9,11 +9,11 @@ description: FastGPT 接入钉钉机器人教程 ...@@ -9,11 +9,11 @@ description: FastGPT 接入钉钉机器人教程
1. 在[钉钉开发者后台](https://open-dev.dingtalk.com/fe/app)创建企业内部应用。 1. 在[钉钉开发者后台](https://open-dev.dingtalk.com/fe/app)创建企业内部应用。
![图片1](../../../public/imgs/dingtalk-bot-1.png) ![图片1](/imgs/dingtalk-bot-1.png)
2. 获取**Client ID**和**Client Secret**。 2. 获取**Client ID**和**Client Secret**。
![图片2](../../../public/imgs/dingtalk-bot-2.png) ![图片2](/imgs/dingtalk-bot-2.png)
## 2. 为 FastGPT 添加发布渠道 ## 2. 为 FastGPT 添加发布渠道
...@@ -21,7 +21,7 @@ description: FastGPT 接入钉钉机器人教程 ...@@ -21,7 +21,7 @@ description: FastGPT 接入钉钉机器人教程
将前面拿到的 **Client ID** 和 **Client Secret** 填入配置弹窗中。 将前面拿到的 **Client ID** 和 **Client Secret** 填入配置弹窗中。
![图片3](../../../public/imgs/dingtalk-bot-3.png) ![图片3](/imgs/dingtalk-bot-3.png)
创建完成后,点击**请求地址**按钮,然后复制回调地址。 创建完成后,点击**请求地址**按钮,然后复制回调地址。
...@@ -29,28 +29,28 @@ description: FastGPT 接入钉钉机器人教程 ...@@ -29,28 +29,28 @@ description: FastGPT 接入钉钉机器人教程
在钉钉开发者后台,点击左侧**添加应用能力**,为刚刚创建的企业内部应用添加 **机器人** 应用能力。 在钉钉开发者后台,点击左侧**添加应用能力**,为刚刚创建的企业内部应用添加 **机器人** 应用能力。
![图片4](../../../public/imgs/dingtalk-bot-4.png) ![图片4](/imgs/dingtalk-bot-4.png)
## 4. 配置机器人回调地址 ## 4. 配置机器人回调地址
点击左侧**机器人** 应用能力,然后将底部**消息接受模式**设置为**HTTP模式**,消息接收地址填入前面复制的 FastGPT 的回调地址。 点击左侧**机器人** 应用能力,然后将底部**消息接受模式**设置为**HTTP模式**,消息接收地址填入前面复制的 FastGPT 的回调地址。
![图片5](../../../public/imgs/dingtalk-bot-5.png) ![图片5](/imgs/dingtalk-bot-5.png)
调试完成后,点击**发布**。 调试完成后,点击**发布**。
## 5. 发布应用 ## 5. 发布应用
机器人发布后,还需要在**版本管理与发布**页面发布应用版本。 机器人发布后,还需要在**版本管理与发布**页面发布应用版本。
![图片6](../../../public/imgs/dingtalk-bot-6.png) ![图片6](/imgs/dingtalk-bot-6.png)
点击**创建新版本**后,设置版本号和版本描述后点击保存发布即可。 点击**创建新版本**后,设置版本号和版本描述后点击保存发布即可。
![图片7](../../../public/imgs/dingtalk-bot-7.png) ![图片7](/imgs/dingtalk-bot-7.png)
应用发布后,即可在钉钉企业中使用机器人功能,可对机器人私聊。或者在群组添加机器人后`@机器人`,触发对话。 应用发布后,即可在钉钉企业中使用机器人功能,可对机器人私聊。或者在群组添加机器人后`@机器人`,触发对话。
![图片8](../../../public/imgs/dingtalk-bot-8.png) ![图片8](/imgs/dingtalk-bot-8.png)
## FAQ ## FAQ
......
...@@ -11,7 +11,7 @@ Creating a free test enterprise makes debugging easier. ...@@ -11,7 +11,7 @@ Creating a free test enterprise makes debugging easier.
1. Create a custom enterprise app in the [Lark Open Platform](https://open.feishu.cn/app) developer console. 1. Create a custom enterprise app in the [Lark Open Platform](https://open.feishu.cn/app) developer console.
![Image](../../../public/imgs/feishu-bot-1.png) ![Image](/imgs/feishu-bot-1.png)
Add a **Bot** capability to the app. Add a **Bot** capability to the app.
...@@ -19,21 +19,21 @@ Add a **Bot** capability to the app. ...@@ -19,21 +19,21 @@ Add a **Bot** capability to the app.
In FastGPT, select the app you want to integrate. On the Publishing Channels page, create a new Lark bot publishing channel and fill in the basic information. In FastGPT, select the app you want to integrate. On the Publishing Channels page, create a new Lark bot publishing channel and fill in the basic information.
![Image](../../../public/imgs/feishu-bot-2.png) ![Image](/imgs/feishu-bot-2.png)
## 3. Get App ID and App Secret ## 3. Get App ID and App Secret
In the Lark Open Platform developer console, find the App ID and App Secret for the custom enterprise app you just created, and enter them in the FastGPT publishing channel dialog. In the Lark Open Platform developer console, find the App ID and App Secret for the custom enterprise app you just created, and enter them in the FastGPT publishing channel dialog.
![Image](../../../public/imgs/feishu-bot-3.png) ![Image](/imgs/feishu-bot-3.png)
Enter both parameters in the FastGPT configuration dialog. Enter both parameters in the FastGPT configuration dialog.
![Image](../../../public/imgs/feishu-bot-4.png) ![Image](/imgs/feishu-bot-4.png)
(Optional) In the Lark Open Platform developer console, go to Events & Callbacks -> Encryption Strategy to get the Encrypt Key, and enter it in the Lark bot integration dialog. (Optional) In the Lark Open Platform developer console, go to Events & Callbacks -> Encryption Strategy to get the Encrypt Key, and enter it in the Lark bot integration dialog.
![Image](../../../public/imgs/feishu-bot-5.png) ![Image](/imgs/feishu-bot-5.png)
The Encrypt Key encrypts communication between Lark servers and FastGPT. The Encrypt Key encrypts communication between Lark servers and FastGPT.
If using HTTPS, the Encrypt Key is not needed. If using HTTP, the Encrypt Key is recommended. If using HTTPS, the Encrypt Key is not needed. If using HTTP, the Encrypt Key is recommended.
...@@ -47,7 +47,7 @@ In the Lark console, click `Events & Callbacks` on the left sidebar, click the e ...@@ -47,7 +47,7 @@ In the Lark console, click `Events & Callbacks` on the left sidebar, click the e
| | | | | | | |
| --- | --- | --- | | --- | --- | --- |
| ![Image](../../../public/imgs/feishu-bot-10.jpg) | ![Image](../../../public/imgs/feishu-bot-11.jpg) | ![Image](../../../public/imgs/feishu-bot-6.png) | | ![Image](/imgs/feishu-bot-10.jpg) | ![Image](/imgs/feishu-bot-11.jpg) | ![Image](/imgs/feishu-bot-6.png) |
## 5. Configure Bot Callback Events and Permissions ## 5. Configure Bot Callback Events and Permissions
...@@ -61,7 +61,7 @@ After adding the event, add two permissions: click the corresponding permission, ...@@ -61,7 +61,7 @@ After adding the event, add two permissions: click the corresponding permission,
| | | | | |
| --- | --- | | --- | --- |
| ![Image](../../../public/imgs/feishu-bot-7.png) | ![Image](../../../public/imgs/feishu-bot-8.png) | | ![Image](/imgs/feishu-bot-7.png) | ![Image](/imgs/feishu-bot-8.png) |
It is not recommended to enable the two "legacy versions" shown above -- use the new version permissions instead. It is not recommended to enable the two "legacy versions" shown above -- use the new version permissions instead.
- If "Read messages users send to the bot in private chats" is enabled, private messages sent to the bot will be forwarded to FastGPT - If "Read messages users send to the bot in private chats" is enabled, private messages sent to the bot will be forwarded to FastGPT
...@@ -72,17 +72,17 @@ It is not recommended to enable the two "legacy versions" shown above -- use the ...@@ -72,17 +72,17 @@ It is not recommended to enable the two "legacy versions" shown above -- use the
In the Lark console, click `Permission Management` on the left sidebar, enter `send message` in the search box, find the `Send messages as the app` permission, and enable it. In the Lark console, click `Permission Management` on the left sidebar, enter `send message` in the search box, find the `Send messages as the app` permission, and enable it.
![](../../../public/imgs/feishu-bot-13.jpg) ![](/imgs/feishu-bot-13.jpg)
## 7. Publish the Bot ## 7. Publish the Bot
Click `Version Management & Publishing` on the left side of the Lark console to publish the bot. Click `Version Management & Publishing` on the left side of the Lark console to publish the bot.
![](../../../public/imgs/feishu-bot-12.jpg) ![](/imgs/feishu-bot-12.jpg)
You can then find your bot in the workspace. Next, add the bot to a group or chat with it privately. You can then find your bot in the workspace. Next, add the bot to a group or chat with it privately.
![Image](../../../public/imgs/feishu-bot-9.png) ![Image](/imgs/feishu-bot-9.png)
## FAQ ## FAQ
......
...@@ -11,7 +11,7 @@ description: FastGPT 接入飞书机器人教程 ...@@ -11,7 +11,7 @@ description: FastGPT 接入飞书机器人教程
1. 在[飞书开放平台](https://open.feishu.cn/app)的开发者后台申请企业自建应用。 1. 在[飞书开放平台](https://open.feishu.cn/app)的开发者后台申请企业自建应用。
![图片](../../../public/imgs/feishu-bot-1.png) ![图片](/imgs/feishu-bot-1.png)
添加一个**机器人**应用。 添加一个**机器人**应用。
...@@ -19,21 +19,21 @@ description: FastGPT 接入飞书机器人教程 ...@@ -19,21 +19,21 @@ description: FastGPT 接入飞书机器人教程
在fastgpt中选择想要接入的应用,在 发布渠道 页面,新建一个接入飞书机器人的发布渠道,填写好基础信息。 在fastgpt中选择想要接入的应用,在 发布渠道 页面,新建一个接入飞书机器人的发布渠道,填写好基础信息。
![图片](../../../public/imgs/feishu-bot-2.png) ![图片](/imgs/feishu-bot-2.png)
## 3. 获取应用的 App ID, App Secret 两个凭证 ## 3. 获取应用的 App ID, App Secret 两个凭证
在飞书开放平台开发者后台,刚刚创建的企业自建应用中,找到 App ID 和 App Secret,填入 FastGPT 新建发布渠道的对话框里面。 在飞书开放平台开发者后台,刚刚创建的企业自建应用中,找到 App ID 和 App Secret,填入 FastGPT 新建发布渠道的对话框里面。
![图片](../../../public/imgs/feishu-bot-3.png) ![图片](/imgs/feishu-bot-3.png)
填入两个参数到 FastGPT 配置弹窗中。 填入两个参数到 FastGPT 配置弹窗中。
![图片](../../../public/imgs/feishu-bot-4.png) ![图片](/imgs/feishu-bot-4.png)
(可选)在飞书开放平台开发者后台,点击事件与回调 -> 加密策略 获取 Encrypt Key,并填入飞书机器人接入的对话框里面 (可选)在飞书开放平台开发者后台,点击事件与回调 -> 加密策略 获取 Encrypt Key,并填入飞书机器人接入的对话框里面
![图片](../../../public/imgs/feishu-bot-5.png) ![图片](/imgs/feishu-bot-5.png)
Encrypt Key 用于加密飞书服务器与 FastGPT 之间通信。 Encrypt Key 用于加密飞书服务器与 FastGPT 之间通信。
建议如果使用 Https 协议,则不需要 Encrypt Key。如果使用 Http 协议通信,则建议使用 Encrypt Key 建议如果使用 Https 协议,则不需要 Encrypt Key。如果使用 Http 协议通信,则建议使用 Encrypt Key
...@@ -46,7 +46,7 @@ Verification Token 默认生成的这个 Token 用于校验来源。但我们使 ...@@ -46,7 +46,7 @@ Verification Token 默认生成的这个 Token 用于校验来源。但我们使
| | | | | | | |
| --- | --- | --- | | --- | --- | --- |
| ![图片](../../../public/imgs/feishu-bot-10.jpg) | ![图片](../../../public/imgs/feishu-bot-11.jpg) | ![图片](../../../public/imgs/feishu-bot-6.png) | | ![图片](/imgs/feishu-bot-10.jpg) | ![图片](/imgs/feishu-bot-11.jpg) | ![图片](/imgs/feishu-bot-6.png) |
## 5. 配置机器人回调事件和权限 ## 5. 配置机器人回调事件和权限
...@@ -60,7 +60,7 @@ Verification Token 默认生成的这个 Token 用于校验来源。但我们使 ...@@ -60,7 +60,7 @@ Verification Token 默认生成的这个 Token 用于校验来源。但我们使
| | | | | |
| --- | --- | | --- | --- |
| ![图片](../../../public/imgs/feishu-bot-7.png) | ![图片](../../../public/imgs/feishu-bot-8.png) | | ![图片](/imgs/feishu-bot-7.png) | ![图片](/imgs/feishu-bot-8.png) |
不推荐启用上图中的两个“历史版本”,而是使用新版本的权限。 不推荐启用上图中的两个“历史版本”,而是使用新版本的权限。
- 若开启 “读取用户发给机器人的单聊消息”, 则单聊发送给机器人的消息将被送到 FastGPT - 若开启 “读取用户发给机器人的单聊消息”, 则单聊发送给机器人的消息将被送到 FastGPT
...@@ -71,17 +71,17 @@ Verification Token 默认生成的这个 Token 用于校验来源。但我们使 ...@@ -71,17 +71,17 @@ Verification Token 默认生成的这个 Token 用于校验来源。但我们使
在飞书控制台,点击左侧的 `权限管理` ,搜索框中输入`发消息`,找到`以应用的身份发消息`的权限,点击开通权限。 在飞书控制台,点击左侧的 `权限管理` ,搜索框中输入`发消息`,找到`以应用的身份发消息`的权限,点击开通权限。
![](../../../public/imgs/feishu-bot-13.jpg) ![](/imgs/feishu-bot-13.jpg)
## 7. 发布机器人 ## 7. 发布机器人
点击飞书控制台左侧的`版本管理与发布`,即可发布机器人。 点击飞书控制台左侧的`版本管理与发布`,即可发布机器人。
![](../../../public/imgs/feishu-bot-12.jpg) ![](/imgs/feishu-bot-12.jpg)
然后就可以在工作台里找到你的机器人啦。接下来就是把机器人拉进群组,或者单独与它对话。 然后就可以在工作台里找到你的机器人啦。接下来就是把机器人拉进群组,或者单独与它对话。
![图片](../../../public/imgs/feishu-bot-9.png) ![图片](/imgs/feishu-bot-9.png)
## FAQ ## FAQ
......
...@@ -19,13 +19,13 @@ Currently, FastGPT's MCP Server uses the SSE transport protocol, with plans to m ...@@ -19,13 +19,13 @@ Currently, FastGPT's MCP Server uses the SSE transport protocol, with plans to m
After logging into FastGPT, open `Workspace` and click `MCP Server` to access the management page. Here you can see all your MCP Servers and the number of applications each one manages. After logging into FastGPT, open `Workspace` and click `MCP Server` to access the management page. Here you can see all your MCP Servers and the number of applications each one manages.
![Create MCP server](../../../../public/imgs/mcp_server1.png) ![Create MCP server](/imgs/mcp_server1.png)
You can customize the MCP Server name and select which applications to associate. You can customize the MCP Server name and select which applications to associate.
| | | | | |
|---|---| |---|---|
| ![](../../../../public/imgs/mcp_server2.png) | ![](../../../../public/imgs/mcp_server3.png) | | ![](/imgs/mcp_server2.png) | ![](/imgs/mcp_server3.png) |
### 2. Get the MCP Server URL ### 2. Get the MCP Server URL
...@@ -33,7 +33,7 @@ After creating an MCP Server, click `Start Using` to get the access URL. ...@@ -33,7 +33,7 @@ After creating an MCP Server, click `Start Using` to get the access URL.
| | | | | |
|---|---| |---|---|
| ![](../../../../public/imgs/mcp_server4.png) | ![](../../../../public/imgs/mcp_server5.png) | | ![](/imgs/mcp_server4.png) | ![](/imgs/mcp_server5.png) |
#### 3. Use the MCP Server #### 3. Use the MCP Server
...@@ -45,7 +45,7 @@ Return to Cursor's MCP management page and you'll see your MCP Server listed. Ma ...@@ -45,7 +45,7 @@ Return to Cursor's MCP management page and you'll see your MCP Server listed. Ma
| | | | | | | |
|---|---|---| |---|---|---|
| ![](../../../../public/imgs/mcp_server6.png) | ![](../../../../public/imgs/mcp_server7.png) | ![](../../../../public/imgs/mcp_server8.png) | | ![](/imgs/mcp_server6.png) | ![](/imgs/mcp_server7.png) | ![](/imgs/mcp_server8.png) |
Open Cursor's chat panel and switch to `Agent` mode — only this mode triggers MCP Server calls. Open Cursor's chat panel and switch to `Agent` mode — only this mode triggers MCP Server calls.
...@@ -53,7 +53,7 @@ After sending a question about `fastgpt`, you'll see Cursor invoke an MCP tool ( ...@@ -53,7 +53,7 @@ After sending a question about `fastgpt`, you'll see Cursor invoke an MCP tool (
| | | | | |
|---|---| |---|---|
| ![](../../../../public/imgs/mcp_server9.png) | ![](../../../../public/imgs/mcp_server10.png) | | ![](/imgs/mcp_server9.png) | ![](/imgs/mcp_server10.png) |
## Self-Hosted MCP Server Setup ## Self-Hosted MCP Server Setup
......
--- ---
title: MCP 服务 title: MCP 发布
description: 快速了解 FastGPT MCP server description: 快速了解 FastGPT MCP server
--- ---
...@@ -19,13 +19,13 @@ FastGPT MCP Server 功能允许你选择`多个`在 FastGPT 上构建好的应 ...@@ -19,13 +19,13 @@ FastGPT MCP Server 功能允许你选择`多个`在 FastGPT 上构建好的应
登录 FastGPT 后,打开`工作台`,点击`MCP server`,即可进入管理页面,这里可以看到你创建的所有 MCP server,以及他们管理的应用数量。 登录 FastGPT 后,打开`工作台`,点击`MCP server`,即可进入管理页面,这里可以看到你创建的所有 MCP server,以及他们管理的应用数量。
![创建 MCP server](../../../../public/imgs/mcp_server1.png) ![创建 MCP server](/imgs/mcp_server1.png)
可以自定义 MCP server 名称和选择关联的应用 可以自定义 MCP server 名称和选择关联的应用
| | | | | |
|---|---| |---|---|
| ![](../../../../public/imgs/mcp_server2.png) | ![](../../../../public/imgs/mcp_server3.png) | | ![](/imgs/mcp_server2.png) | ![](/imgs/mcp_server3.png) |
### 2. 获取 MCP server 地址 ### 2. 获取 MCP server 地址
...@@ -33,7 +33,7 @@ FastGPT MCP Server 功能允许你选择`多个`在 FastGPT 上构建好的应 ...@@ -33,7 +33,7 @@ FastGPT MCP Server 功能允许你选择`多个`在 FastGPT 上构建好的应
| | | | | |
|---|---| |---|---|
| ![](../../../../public/imgs/mcp_server4.png) | ![](../../../../public/imgs/mcp_server5.png) | | ![](/imgs/mcp_server4.png) | ![](/imgs/mcp_server5.png) |
#### 3. 使用 MCP server #### 3. 使用 MCP server
...@@ -45,7 +45,7 @@ FastGPT MCP Server 功能允许你选择`多个`在 FastGPT 上构建好的应 ...@@ -45,7 +45,7 @@ FastGPT MCP Server 功能允许你选择`多个`在 FastGPT 上构建好的应
| | | | | | | |
|---|---|---| |---|---|---|
| ![](../../../../public/imgs/mcp_server6.png) | ![](../../../../public/imgs/mcp_server7.png) | ![](../../../../public/imgs/mcp_server8.png) | | ![](/imgs/mcp_server6.png) | ![](/imgs/mcp_server7.png) | ![](/imgs/mcp_server8.png) |
打开 Cursor 的对话框,切换成`Agent`模型,只有这个模型,cursor 才会调用 MCP server。 打开 Cursor 的对话框,切换成`Agent`模型,只有这个模型,cursor 才会调用 MCP server。
...@@ -53,7 +53,7 @@ FastGPT MCP Server 功能允许你选择`多个`在 FastGPT 上构建好的应 ...@@ -53,7 +53,7 @@ FastGPT MCP Server 功能允许你选择`多个`在 FastGPT 上构建好的应
| | | | | |
|---|---| |---|---|
| ![](../../../../public/imgs/mcp_server9.png) | ![](../../../../public/imgs/mcp_server10.png) | | ![](/imgs/mcp_server9.png) | ![](/imgs/mcp_server10.png) |
## 私有化部署 MCP server 问题 ## 私有化部署 MCP server 问题
......
{
"title": "App Publishing",
"description": "Publish FastGPT apps through MCP Server, OpenAPI, and third-party channels.",
"pages": ["mcp_server", "openapi", "feishu", "dingtalk", "wecom", "official_account", "wechat"]
}
{
"title": "应用发布",
"description": "通过 MCP 服务、OpenAPI 和第三方渠道发布 FastGPT 应用。",
"pages": ["mcp_server", "openapi", "feishu", "dingtalk", "wecom", "official_account", "wechat"]
}
...@@ -11,7 +11,7 @@ Starting from version 4.8.10, FastGPT commercial edition supports direct WeChat ...@@ -11,7 +11,7 @@ Starting from version 4.8.10, FastGPT commercial edition supports direct WeChat
In FastGPT, select the app you want to integrate. On the _Publishing Channels_ page, create a new WeChat Official Account publishing channel and fill in the basic information. In FastGPT, select the app you want to integrate. On the _Publishing Channels_ page, create a new WeChat Official Account publishing channel and fill in the basic information.
![Image](../../../public/imgs/offiaccount-1.png) ![Image](/imgs/offiaccount-1.png)
## 2. Get AppID, Secret, and Token ## 2. Get AppID, Secret, and Token
...@@ -23,15 +23,15 @@ Open the WeChat Official Account website: https://mp.weixin.qq.com ...@@ -23,15 +23,15 @@ Open the WeChat Official Account website: https://mp.weixin.qq.com
Developers can apply for a WeChat Official Account test account from this link for testing. Test accounts work normally but cannot configure AES Key. Developers can apply for a WeChat Official Account test account from this link for testing. Test accounts work normally but cannot configure AES Key.
![Image](../../../public/imgs/offiaccount-2.png) ![Image](/imgs/offiaccount-2.png)
### 2. Enter the 3 parameters into the FastGPT configuration dialog. ### 2. Enter the 3 parameters into the FastGPT configuration dialog.
![Image](../../../public/imgs/offiaccount-3.png) ![Image](/imgs/offiaccount-3.png)
## 3. Add FastGPT IP to IP Whitelist ## 3. Add FastGPT IP to IP Whitelist
![Image](../../../public/imgs/offiaccount-4.png) ![Image](/imgs/offiaccount-4.png)
Self-hosted users can check their own IP address. Self-hosted users can check their own IP address.
...@@ -95,9 +95,9 @@ China Mainland users (fastgpt.cn) can add the following IP whitelist: ...@@ -95,9 +95,9 @@ China Mainland users (fastgpt.cn) can add the following IP whitelist:
## 4. Get AES Key and Select Encryption Mode ## 4. Get AES Key and Select Encryption Mode
![Image](../../../public/imgs/offiaccount-5.png) ![Image](/imgs/offiaccount-5.png)
![Image](../../../public/imgs/offiaccount-6.png) ![Image](/imgs/offiaccount-6.png)
1. Randomly generate an AES Key and enter it into the FastGPT configuration dialog. 1. Randomly generate an AES Key and enter it into the FastGPT configuration dialog.
...@@ -107,15 +107,15 @@ China Mainland users (fastgpt.cn) can add the following IP whitelist: ...@@ -107,15 +107,15 @@ China Mainland users (fastgpt.cn) can add the following IP whitelist:
1. Confirm creation in FastGPT and get the URL. 1. Confirm creation in FastGPT and get the URL.
![Image](../../../public/imgs/offiaccount-7.png) ![Image](/imgs/offiaccount-7.png)
2. Enter it in the URL field on the WeChat Official Account Platform, then submit and save. 2. Enter it in the URL field on the WeChat Official Account Platform, then submit and save.
![Image](../../../public/imgs/offiaccount-8.png) ![Image](/imgs/offiaccount-8.png)
## 6. Enable Server Configuration (Skip if already auto-enabled) ## 6. Enable Server Configuration (Skip if already auto-enabled)
![Image](../../../public/imgs/offiaccount-9.png) ![Image](/imgs/offiaccount-9.png)
## 7. Start Using ## 7. Start Using
......
...@@ -11,7 +11,7 @@ description: FastGPT 接入微信公众号教程 ...@@ -11,7 +11,7 @@ description: FastGPT 接入微信公众号教程
在 FastGPT 中选择想要接入的应用,在 _发布渠道_ 页面,新建一个接入微信公众号的发布渠道,填写好基础信息。 在 FastGPT 中选择想要接入的应用,在 _发布渠道_ 页面,新建一个接入微信公众号的发布渠道,填写好基础信息。
![图片](../../../public/imgs/offiaccount-1.png) ![图片](/imgs/offiaccount-1.png)
## 2. 获取 AppID 、 Secret和Token ## 2. 获取 AppID 、 Secret和Token
...@@ -23,15 +23,15 @@ description: FastGPT 接入微信公众号教程 ...@@ -23,15 +23,15 @@ description: FastGPT 接入微信公众号教程
开发者可以从这个链接申请微信公众号的测试号进行测试,测试号可以正常使用,但不能配置 AES Key 开发者可以从这个链接申请微信公众号的测试号进行测试,测试号可以正常使用,但不能配置 AES Key
![图片](../../../public/imgs/offiaccount-2.png) ![图片](/imgs/offiaccount-2.png)
### 2. 把3个参数填入 FastGPT 配置弹窗中。 ### 2. 把3个参数填入 FastGPT 配置弹窗中。
![图片](../../../public/imgs/offiaccount-3.png) ![图片](/imgs/offiaccount-3.png)
## 3. 在 IP 白名单中加入 FastGPT 的 IP ## 3. 在 IP 白名单中加入 FastGPT 的 IP
![图片](../../../public/imgs/offiaccount-4.png) ![图片](/imgs/offiaccount-4.png)
私有部署的用户可自行查阅自己的 IP 地址。 私有部署的用户可自行查阅自己的 IP 地址。
...@@ -95,9 +95,9 @@ description: FastGPT 接入微信公众号教程 ...@@ -95,9 +95,9 @@ description: FastGPT 接入微信公众号教程
## 4. 获取AES Key,选择加密方式 ## 4. 获取AES Key,选择加密方式
![图片](../../../public/imgs/offiaccount-5.png) ![图片](/imgs/offiaccount-5.png)
![图片](../../../public/imgs/offiaccount-6.png) ![图片](/imgs/offiaccount-6.png)
1. 随机生成AESKey,填入 FastGPT 配置弹窗中。 1. 随机生成AESKey,填入 FastGPT 配置弹窗中。
...@@ -107,15 +107,15 @@ description: FastGPT 接入微信公众号教程 ...@@ -107,15 +107,15 @@ description: FastGPT 接入微信公众号教程
1. 在FastGPT确认创建,获取URL。 1. 在FastGPT确认创建,获取URL。
![图片](../../../public/imgs/offiaccount-7.png) ![图片](/imgs/offiaccount-7.png)
2. 填入微信公众平台的 URL 处,然后提交保存 2. 填入微信公众平台的 URL 处,然后提交保存
![图片](../../../public/imgs/offiaccount-8.png) ![图片](/imgs/offiaccount-8.png)
## 6. 启用服务器配置(如已自动启用,请忽略) ## 6. 启用服务器配置(如已自动启用,请忽略)
![图片](../../../public/imgs/offiaccount-9.png) ![图片](/imgs/offiaccount-9.png)
## 7. 开始使用 ## 7. 开始使用
......
...@@ -5,7 +5,7 @@ description: Access FastGPT app via API ...@@ -5,7 +5,7 @@ description: Access FastGPT app via API
import { Alert } from '@/components/docs/Alert'; import { Alert } from '@/components/docs/Alert';
In FastGPT, you can create multiple API keys for each app to access the app's API endpoints. Each key can only access one app. For complete endpoint documentation, [see the Chat API reference](../../openapi/intro.en.mdx). In FastGPT, you can create multiple API keys for each app to access the app's API endpoints. Each key can only access one app. For complete endpoint documentation, [see the Chat API reference](../../../openapi/intro.en.mdx).
## Get API Key ## Get API Key
...@@ -15,7 +15,7 @@ Go to App -> "API Access", then click "API Key" to create a key. ...@@ -15,7 +15,7 @@ Go to App -> "API Access", then click "API Key" to create a key.
Keep your key safe. Once the dialog is closed, you cannot copy the key again -- you can only create a new key and copy it. Keep your key safe. Once the dialog is closed, you cannot copy the key again -- you can only create a new key and copy it.
</Alert> </Alert>
![](../../../public/imgs/fastgpt-api1.jpg) ![](/imgs/fastgpt-api1.jpg)
<Alert icon="🍅" context="success"> <Alert icon="🍅" context="success">
Tip: For security, you can set a quota or expiration time to prevent key abuse. Tip: For security, you can set a quota or expiration time to prevent key abuse.
...@@ -30,8 +30,8 @@ OPENAI_API_KEY = the key obtained in the previous step ...@@ -30,8 +30,8 @@ OPENAI_API_KEY = the key obtained in the previous step
**[ChatGPT Next Web](https://github.com/Yidadaa/ChatGPT-Next-Web) Example:** **[ChatGPT Next Web](https://github.com/Yidadaa/ChatGPT-Next-Web) Example:**
![](../../../public/imgs/chatgptnext.png) ![](/imgs/chatgptnext.png)
**[ChatGPT Web](https://github.com/Chanzhaoyu/chatgpt-web) Example:** **[ChatGPT Web](https://github.com/Chanzhaoyu/chatgpt-web) Example:**
![](../../../public/imgs/chatgptweb.png) ![](/imgs/chatgptweb.png)
...@@ -5,7 +5,7 @@ description: 通过 API 访问 FastGPT 应用 ...@@ -5,7 +5,7 @@ description: 通过 API 访问 FastGPT 应用
import { Alert } from '@/components/docs/Alert'; import { Alert } from '@/components/docs/Alert';
在 FastGPT 中,你可以为每一个应用创建多个 API 密钥,用于访问应用的 API 接口。每个密钥仅能访问一个应用。完整的接口可以[查看应用对话接口](../../openapi/intro.mdx)。 在 FastGPT 中,你可以为每一个应用创建多个 API 密钥,用于访问应用的 API 接口。每个密钥仅能访问一个应用。完整的接口可以[查看应用对话接口](../../../openapi/intro.mdx)。
## 获取 API 密钥 ## 获取 API 密钥
...@@ -15,7 +15,7 @@ import { Alert } from '@/components/docs/Alert'; ...@@ -15,7 +15,7 @@ import { Alert } from '@/components/docs/Alert';
密钥需要自己保管好,一旦关闭就无法再复制密钥,只能创建新密钥再复制。 密钥需要自己保管好,一旦关闭就无法再复制密钥,只能创建新密钥再复制。
</Alert> </Alert>
![](../../../public/imgs/fastgpt-api1.jpg) ![](/imgs/fastgpt-api1.jpg)
<Alert icon="🍅" context="success"> <Alert icon="🍅" context="success">
Tips: 安全起见,你可以设置一个额度或者过期时间,防止 key 被滥用。 Tips: 安全起见,你可以设置一个额度或者过期时间,防止 key 被滥用。
...@@ -30,8 +30,8 @@ OPENAI_API_KEY = 上一步获取到的密钥 ...@@ -30,8 +30,8 @@ OPENAI_API_KEY = 上一步获取到的密钥
**[ChatGPT Next Web](https://github.com/Yidadaa/ChatGPT-Next-Web) 示例:** **[ChatGPT Next Web](https://github.com/Yidadaa/ChatGPT-Next-Web) 示例:**
![](../../../public/imgs/chatgptnext.png) ![](/imgs/chatgptnext.png)
**[ChatGPT Web](https://github.com/Chanzhaoyu/chatgpt-web) 示例:** **[ChatGPT Web](https://github.com/Chanzhaoyu/chatgpt-web) 示例:**
![](../../../public/imgs/chatgptweb.png) ![](/imgs/chatgptweb.png)
...@@ -7,7 +7,7 @@ description: How to integrate FastGPT with a WeChat personal account ...@@ -7,7 +7,7 @@ description: How to integrate FastGPT with a WeChat personal account
Open your FastGPT Agent, click the tab at the top to switch to **Publishing Channels**, select **WeChat Personal Account**, and click **Create**. Open your FastGPT Agent, click the tab at the top to switch to **Publishing Channels**, select **WeChat Personal Account**, and click **Create**.
![alt text](../../../public/imgs/image-3.png) ![alt text](/imgs/image-3.png)
You can fill in the form fields as needed. You can fill in the form fields as needed.
...@@ -15,19 +15,19 @@ You can fill in the form fields as needed. ...@@ -15,19 +15,19 @@ You can fill in the form fields as needed.
After creating the channel, a new entry will appear. For the first time, you need to scan a QR code to log in. Click **Scan QR Code to Log In** to display the login QR code. After creating the channel, a new entry will appear. For the first time, you need to scan a QR code to log in. Click **Scan QR Code to Log In** to display the login QR code.
![alt text](../../../public/imgs/image-4.png) ![alt text](/imgs/image-4.png)
![alt text](../../../public/imgs/image-17.png) ![alt text](/imgs/image-17.png)
## 3. Start Chatting ## 3. Start Chatting
Once connected via QR code, a **WeChat ClawBot** will appear in your contacts list. Once connected via QR code, a **WeChat ClawBot** will appear in your contacts list.
![alt text](../../../public/imgs/image-25.png) ![alt text](/imgs/image-25.png)
Click to open the conversation and start chatting! Click to open the conversation and start chatting!
![alt text](../../../public/imgs/image-26.png) ![alt text](/imgs/image-26.png)
## FAQ ## FAQ
......
...@@ -7,7 +7,7 @@ description: FastGPT 接入微信个人号教程 ...@@ -7,7 +7,7 @@ description: FastGPT 接入微信个人号教程
进入 FastGPT 搭建好的 Agent,点击顶部的 tab 切换到发布渠道,并选择`微信个人号`,点击新建。 进入 FastGPT 搭建好的 Agent,点击顶部的 tab 切换到发布渠道,并选择`微信个人号`,点击新建。
![alt text](../../../public/imgs/image-3.png) ![alt text](/imgs/image-3.png)
表单内容随便填写即可。 表单内容随便填写即可。
...@@ -15,21 +15,21 @@ description: FastGPT 接入微信个人号教程 ...@@ -15,21 +15,21 @@ description: FastGPT 接入微信个人号教程
确认创建渠道后,会多出一条记录,首次需要扫码登录,点击扫码登录,即可跳出登录二维码。 确认创建渠道后,会多出一条记录,首次需要扫码登录,点击扫码登录,即可跳出登录二维码。
![alt text](../../../public/imgs/image-4.png) ![alt text](/imgs/image-4.png)
![alt text](../../../public/imgs/image-17.png) ![alt text](/imgs/image-17.png)
## 3. 愉快玩耍 ## 3. 愉快玩耍
扫码连接后,好友列表就会多出一个`微信 ClawBot`的机器人可使用。 扫码连接后,好友列表就会多出一个`微信 ClawBot`的机器人可使用。
![alt text](../../../public/imgs/image-25.png) ![alt text](/imgs/image-25.png)
点击进入后,即可开始聊天啦! 点击进入后,即可开始聊天啦!
![alt text](../../../public/imgs/image-26.png) ![alt text](/imgs/image-26.png)
## FAQ ## FAQ
......
...@@ -10,7 +10,7 @@ description: FastGPT WeCom Bot Integration Tutorial ...@@ -10,7 +10,7 @@ description: FastGPT WeCom Bot Integration Tutorial
WeCom requires intelligent bot message push addresses to use the enterprise's primary domain, so cloud service edition users must configure a custom domain before using WeCom bots. WeCom requires intelligent bot message push addresses to use the enterprise's primary domain, so cloud service edition users must configure a custom domain before using WeCom bots.
- [Configure Custom Domain](../../introduction/guide/team_permissions/customDomain.en.mdx) - [Configure Custom Domain](../../workspace/customDomain.en.mdx)
If you are a commercial edition user, continue using your enterprise domain. If you are a commercial edition user, continue using your enterprise domain.
...@@ -24,43 +24,43 @@ If you are a commercial edition user, continue using your enterprise domain. ...@@ -24,43 +24,43 @@ If you are a commercial edition user, continue using your enterprise domain.
On the "Security & Management" - "Management Tools" page, click "Intelligent Bot" (Note: Only the enterprise creator or super admin has permission to see this entry) On the "Security & Management" - "Management Tools" page, click "Intelligent Bot" (Note: Only the enterprise creator or super admin has permission to see this entry)
![Image](../../../public/imgs/use-cases/external-integration/wecom/1.png) ![Image](/imgs/use-cases/external-integration/wecom/1.png)
### 2.3 Select "API Mode Creation" for the Intelligent Bot ### 2.3 Select "API Mode Creation" for the Intelligent Bot
On the create bot page, scroll down and click "API Mode Creation" On the create bot page, scroll down and click "API Mode Creation"
![Image](../../../public/imgs/use-cases/external-integration/wecom/2.png) ![Image](/imgs/use-cases/external-integration/wecom/2.png)
### 2.4 Get Key Credentials ### 2.4 Get Key Credentials
Randomly generate or manually enter Token and Encoding-AESKey, and record them Randomly generate or manually enter Token and Encoding-AESKey, and record them
![Image](../../../public/imgs/use-cases/external-integration/wecom/3.png) ![Image](/imgs/use-cases/external-integration/wecom/3.png)
### 2.5 Create WeCom Bot Publishing Channel ### 2.5 Create WeCom Bot Publishing Channel
In FastGPT, select the Agent you want to use. On the Publishing Channels page, select "WeCom Bot" and click "Create" In FastGPT, select the Agent you want to use. On the Publishing Channels page, select "WeCom Bot" and click "Create"
![Image](../../../public/imgs/use-cases/external-integration/wecom/4.png) ![Image](/imgs/use-cases/external-integration/wecom/4.png)
### 2.6 Configure Publishing Channel Information ### 2.6 Configure Publishing Channel Information
Configure the publishing channel information. You need to enter the Token and AESKey recorded in step 2.4 (Token and Encoding-AESKey) Configure the publishing channel information. You need to enter the Token and AESKey recorded in step 2.4 (Token and Encoding-AESKey)
![Image](../../../public/imgs/use-cases/external-integration/wecom/5.png) ![Image](/imgs/use-cases/external-integration/wecom/5.png)
### 2.7 Copy Callback URL ### 2.7 Copy Callback URL
After clicking "Confirm", select your configured custom domain, copy the callback URL, and paste it back into the WeCom intelligent bot configuration page. After clicking "Confirm", select your configured custom domain, copy the callback URL, and paste it back into the WeCom intelligent bot configuration page.
![Image](../../../public/imgs/use-cases/external-integration/wecom/6.png) ![Image](/imgs/use-cases/external-integration/wecom/6.png)
## 3. Use the Intelligent Bot ## 3. Use the Intelligent Bot
In the WeCom platform's "Contacts", you can find the created bot and start sending messages In the WeCom platform's "Contacts", you can find the created bot and start sending messages
![Image](../../../public/imgs/use-cases/external-integration/wecom/7.png) ![Image](/imgs/use-cases/external-integration/wecom/7.png)
## FAQ ## FAQ
......
...@@ -10,7 +10,7 @@ description: FastGPT 接入企微机器人教程 ...@@ -10,7 +10,7 @@ description: FastGPT 接入企微机器人教程
企微要求智能机器人消息推送地址必须使用企业主体域名,因此云服务版本用户必须先配置自定义域名才能使用企微机器人。 企微要求智能机器人消息推送地址必须使用企业主体域名,因此云服务版本用户必须先配置自定义域名才能使用企微机器人。
- [配置自定义域名](../../introduction/guide/team_permissions/customDomain.mdx) - [配置自定义域名](../../workspace/customDomain.mdx)
若您是商业版用户,请继续使用您企业的域名。 若您是商业版用户,请继续使用您企业的域名。
...@@ -24,43 +24,43 @@ description: FastGPT 接入企微机器人教程 ...@@ -24,43 +24,43 @@ description: FastGPT 接入企微机器人教程
在"安全与管理" - "管理工具"页面点击"智能机器人" ( 注意: 只有企业创建者或超级管理员才有权限看到这个入口 ) 在"安全与管理" - "管理工具"页面点击"智能机器人" ( 注意: 只有企业创建者或超级管理员才有权限看到这个入口 )
![图片](../../../public/imgs/use-cases/external-integration/wecom/1.png) ![图片](/imgs/use-cases/external-integration/wecom/1.png)
### 2.3 选择 “API模式创建” 智能机器人 ### 2.3 选择 “API模式创建” 智能机器人
在创建机器人页面, 下拉, 点击 "API模式创建" 在创建机器人页面, 下拉, 点击 "API模式创建"
![图片](../../../public/imgs/use-cases/external-integration/wecom/2.png) ![图片](/imgs/use-cases/external-integration/wecom/2.png)
### 2.4 获取关键密钥 ### 2.4 获取关键密钥
随机生成或者手动输入 Token 和 Encoding-AESKey,并且记录下来 随机生成或者手动输入 Token 和 Encoding-AESKey,并且记录下来
![图片](../../../public/imgs/use-cases/external-integration/wecom/3.png) ![图片](/imgs/use-cases/external-integration/wecom/3.png)
### 2.5 创建企微机器人发布渠道 ### 2.5 创建企微机器人发布渠道
在 FastGPT 中,选择要使用 Agent,在发布渠道页面,选择“企业微信机器人”,点击“创建” 在 FastGPT 中,选择要使用 Agent,在发布渠道页面,选择“企业微信机器人”,点击“创建”
![图片](../../../public/imgs/use-cases/external-integration/wecom/4.png) ![图片](/imgs/use-cases/external-integration/wecom/4.png)
### 2.6 配置发布渠道信息 ### 2.6 配置发布渠道信息
配置该发布渠道的信息,需要填入 Token 和 AESKey,也就是第四步中记录下来的 Token 和 Encoding-AESKey 配置该发布渠道的信息,需要填入 Token 和 AESKey,也就是第四步中记录下来的 Token 和 Encoding-AESKey
![图片](../../../public/imgs/use-cases/external-integration/wecom/5.png) ![图片](/imgs/use-cases/external-integration/wecom/5.png)
### 2.7 复制回调地址 ### 2.7 复制回调地址
点击“确认”后,选择您配置的自定义域名,复制回调地址,填回企微智能机器人配置页中。 点击“确认”后,选择您配置的自定义域名,复制回调地址,填回企微智能机器人配置页中。
![图片](../../../public/imgs/use-cases/external-integration/wecom/6.png) ![图片](/imgs/use-cases/external-integration/wecom/6.png)
## 3. 使用智能机器人 ## 3. 使用智能机器人
在企业微信平台的"通讯录",即可找到创建的机器人,就可以发送消息了 在企业微信平台的"通讯录",即可找到创建的机器人,就可以发送消息了
![图片](../../../public/imgs/use-cases/external-integration/wecom/7.png) ![图片](/imgs/use-cases/external-integration/wecom/7.png)
## FAQ ## FAQ
......
...@@ -11,7 +11,7 @@ First, select "New MCP Tools Collection." We'll use the Amap (Gaode Maps) MCP Se ...@@ -11,7 +11,7 @@ First, select "New MCP Tools Collection." We'll use the Amap (Gaode Maps) MCP Se
You'll need an MCP URL, e.g., https://mcp.amap.com/sse?key=xxx You'll need an MCP URL, e.g., https://mcp.amap.com/sse?key=xxx
![Create MCP tools](../../../../public/imgs/mcp_tools1.png) ![Create MCP tools](/imgs/mcp_tools1.png)
Enter the URL in the dialog and click Parse. The system will discover and list the available tools. Enter the URL in the dialog and click Parse. The system will discover and list the available tools.
...@@ -21,7 +21,7 @@ Click Create to finish setting up the MCP tools and collection. ...@@ -21,7 +21,7 @@ Click Create to finish setting up the MCP tools and collection.
Inside the MCP Tools collection, you can debug each tool individually. Inside the MCP Tools collection, you can debug each tool individually.
![Test MCP tools](../../../../public/imgs/mcp_tools3.png) ![Test MCP tools](/imgs/mcp_tools3.png)
For example, select the maps_weather tool and click Run to see the weather data for Hangzhou. For example, select the maps_weather tool and click Run to see the weather data for Hangzhou.
...@@ -30,13 +30,13 @@ For example, select the maps_weather tool and click Run to see the weather data ...@@ -30,13 +30,13 @@ For example, select the maps_weather tool and click Run to see the weather data
### Call Individual Tools ### Call Individual Tools
![Call individual tools](../../../../public/imgs/mcp_tools4.png) ![Call individual tools](/imgs/mcp_tools4.png)
Using maps_weather and maps_text_search as examples, ask the AI two different questions. The AI intelligently selects the appropriate tool, retrieves the needed information, and responds based on the results. Using maps_weather and maps_text_search as examples, ask the AI two different questions. The AI intelligently selects the appropriate tool, retrieves the needed information, and responds based on the results.
| | | | | |
|---|---| |---|---|
| ![](../../../../public/imgs/mcp_tools5.png) | ![](../../../../public/imgs/mcp_tools6.png) | | ![](/imgs/mcp_tools5.png) | ![](/imgs/mcp_tools6.png) |
### Call an Entire Tools Collection ### Call an Entire Tools Collection
...@@ -46,6 +46,6 @@ Click the MCP Tools collection to add a collection-type node, then connect it us ...@@ -46,6 +46,6 @@ Click the MCP Tools collection to add a collection-type node, then connect it us
| | | | | |
|---|---| |---|---|
| ![](../../../../public/imgs/mcp_tools7.png) | ![](../../../../public/imgs/mcp_tools8.png) | | ![](/imgs/mcp_tools7.png) | ![](/imgs/mcp_tools8.png) |
The AI similarly selects the appropriate tool, retrieves the needed information, and responds based on the results. The AI similarly selects the appropriate tool, retrieves the needed information, and responds based on the results.
...@@ -11,7 +11,7 @@ FastGPT v4.9.6 版本开始,新增了 MCP 工具集 这种新的应用类型 ...@@ -11,7 +11,7 @@ FastGPT v4.9.6 版本开始,新增了 MCP 工具集 这种新的应用类型
需要获取到一个 MCP 地址,例 https://mcp.amap.com/sse?key=xxx 需要获取到一个 MCP 地址,例 https://mcp.amap.com/sse?key=xxx
![创建 MCP tools](../../../../public/imgs/mcp_tools1.png) ![创建 MCP tools](/imgs/mcp_tools1.png)
然后填入到弹窗中的对应位置,点击后面的解析,会解析出对应的一系列工具 然后填入到弹窗中的对应位置,点击后面的解析,会解析出对应的一系列工具
...@@ -21,7 +21,7 @@ FastGPT v4.9.6 版本开始,新增了 MCP 工具集 这种新的应用类型 ...@@ -21,7 +21,7 @@ FastGPT v4.9.6 版本开始,新增了 MCP 工具集 这种新的应用类型
进入到 MCP 工具集内部,能够对每个单独的 MCP 工具进行调试 进入到 MCP 工具集内部,能够对每个单独的 MCP 工具进行调试
![测试 MCP tools](../../../../public/imgs/mcp_tools3.png) ![测试 MCP tools](/imgs/mcp_tools3.png)
以 maps_weather 这个查询天气的工具为例,点击运行,可以看到能够获得杭州的具体天气 以 maps_weather 这个查询天气的工具为例,点击运行,可以看到能够获得杭州的具体天气
...@@ -30,13 +30,13 @@ FastGPT v4.9.6 版本开始,新增了 MCP 工具集 这种新的应用类型 ...@@ -30,13 +30,13 @@ FastGPT v4.9.6 版本开始,新增了 MCP 工具集 这种新的应用类型
### 调用单个工具 ### 调用单个工具
![调用单个工具](../../../../public/imgs/mcp_tools4.png) ![调用单个工具](/imgs/mcp_tools4.png)
选中 maps_weather 和 maps_text_search 这两个工具为例,分别问 AI 两个问题,可以看到 AI 智能地调用了相应的工具获得了需要的信息,然后根据获得的信息回答 选中 maps_weather 和 maps_text_search 这两个工具为例,分别问 AI 两个问题,可以看到 AI 智能地调用了相应的工具获得了需要的信息,然后根据获得的信息回答
| | | | | |
|---|---| |---|---|
| ![](../../../../public/imgs/mcp_tools5.png) | ![](../../../../public/imgs/mcp_tools6.png) | | ![](/imgs/mcp_tools5.png) | ![](/imgs/mcp_tools6.png) |
### 调用工具集 ### 调用工具集
...@@ -46,6 +46,6 @@ FastGPT 也支持调用整个 MCP 工具集,AI 会自动选取需要的工具 ...@@ -46,6 +46,6 @@ FastGPT 也支持调用整个 MCP 工具集,AI 会自动选取需要的工具
| | | | | |
|---|---| |---|---|
| ![](../../../../public/imgs/mcp_tools7.png) | ![](../../../../public/imgs/mcp_tools8.png) | | ![](/imgs/mcp_tools7.png) | ![](/imgs/mcp_tools8.png) |
可以看到 AI 同样智能调用了相应的工具,获得了需要的信息,然后根据获得的信息回答 可以看到 AI 同样智能调用了相应的工具,获得了需要的信息,然后根据获得的信息回答
{
"title": "Tools",
"description": "MCP tools and system plugins for app building.",
"pages": ["mcp_tools", "system-plugins"]
}
{
"title": "工具",
"description": "应用构建中的 MCP 工具和系统插件。",
"pages": ["mcp_tools", "system-plugins"]
}
...@@ -7,7 +7,7 @@ description: Step-by-step guide for configuring the FastGPT Bing Search plugin ...@@ -7,7 +7,7 @@ description: Step-by-step guide for configuring the FastGPT Bing Search plugin
https://portal.azure.com/ https://portal.azure.com/
![](../../../../public/imgs/bing_search_plugin1.png) ![](/imgs/bing_search_plugin1.png)
2. # Create a Bing Web Search Resource 2. # Create a Bing Web Search Resource
...@@ -15,14 +15,14 @@ Search for Bing Search v7 and click Create. ...@@ -15,14 +15,14 @@ Search for Bing Search v7 and click Create.
https://portal.azure.com/#create/Microsoft.BingSearch https://portal.azure.com/#create/Microsoft.BingSearch
![](../../../../public/imgs/bing_search_plugin2.png) ![](/imgs/bing_search_plugin2.png)
3. # Go to the Resource Details and Click Manage Keys 3. # Go to the Resource Details and Click Manage Keys
![](../../../../public/imgs/bing_search_plugin3.png) ![](/imgs/bing_search_plugin3.png)
# 4. Copy Either Key and Paste It into the Plugin Input # 4. Copy Either Key and Paste It into the Plugin Input
![](../../../../public/imgs/bing_search_plugin4.png) ![](/imgs/bing_search_plugin4.png)
![](../../../../public/imgs/bing_search_plugin5.png) ![](/imgs/bing_search_plugin5.png)
...@@ -7,7 +7,7 @@ description: FastGPT Bing 搜索插件配置步骤详解 ...@@ -7,7 +7,7 @@ description: FastGPT Bing 搜索插件配置步骤详解
https://portal.azure.com/ https://portal.azure.com/
![](../../../../public/imgs/bing_search_plugin1.png) ![](/imgs/bing_search_plugin1.png)
1. # 创建bing web搜索资源 1. # 创建bing web搜索资源
...@@ -15,14 +15,14 @@ https://portal.azure.com/ ...@@ -15,14 +15,14 @@ https://portal.azure.com/
https://portal.azure.com/#create/Microsoft.BingSearch https://portal.azure.com/#create/Microsoft.BingSearch
![](../../../../public/imgs/bing_search_plugin2.png) ![](/imgs/bing_search_plugin2.png)
1. # 进入资源详情点击管理密钥 1. # 进入资源详情点击管理密钥
![](../../../../public/imgs/bing_search_plugin3.png) ![](/imgs/bing_search_plugin3.png)
# 4. 复制任意一个密钥填入插件输入 # 4. 复制任意一个密钥填入插件输入
![](../../../../public/imgs/bing_search_plugin4.png) ![](/imgs/bing_search_plugin4.png)
![](../../../../public/imgs/bing_search_plugin5.png) ![](/imgs/bing_search_plugin5.png)
...@@ -322,7 +322,7 @@ Simple tools may not need E2E testing. For complex tools, the review team may re ...@@ -322,7 +322,7 @@ Simple tools may not need E2E testing. For complex tools, the review team may re
### 6.1 Deploy the E2E Test Environment ### 6.1 Deploy the E2E Test Environment
1. Follow [Quick Start Local Development](../../../self-host/dev.en.mdx) to set up a local FastGPT development environment 1. Follow [Quick Start Local Development](../../../../self-host/dev.en.mdx) to set up a local FastGPT development environment
2. Run `cd runtime && cp .env.template .env.local` to copy the environment variable template, then connect to the Minio, Mongo, and Redis instances from step 1 2. Run `cd runtime && cp .env.template .env.local` to copy the environment variable template, then connect to the Minio, Mongo, and Redis instances from step 1
3. Run `bun run dev` to start the development environment, then update FastGPT's environment variables to connect to your fastgpt-plugin instance 3. Run `bun run dev` to start the development environment, then update FastGPT's environment variables to connect to your fastgpt-plugin instance
...@@ -332,11 +332,11 @@ Start the fastgpt-plugin development environment. ...@@ -332,11 +332,11 @@ Start the fastgpt-plugin development environment.
Open `http://localhost:PORT/openapi` in a browser to access the `fastgpt-plugin` OpenAPI page for API debugging. Replace PORT with your fastgpt-plugin port number. Open `http://localhost:PORT/openapi` in a browser to access the `fastgpt-plugin` OpenAPI page for API debugging. Replace PORT with your fastgpt-plugin port number.
![](../../../../public/imgs/plugin-openapi.png) ![](/imgs/plugin-openapi.png)
First, use the `/tool/list` endpoint to get the tool list and find the `toolId` of the tool you want to debug. Then use `/tool/runStream` to run the tool and get results. First, use the `/tool/list` endpoint to get the tool list and find the `toolId` of the tool you want to debug. Then use `/tool/runStream` to run the tool and get results.
![](../../../../public/imgs/plugin-openapi2.png) ![](/imgs/plugin-openapi2.png)
### 6.3 E2E Testing in Dev Mode (with Hot Reload) ### 6.3 E2E Testing in Dev Mode (with Hot Reload)
......
...@@ -323,7 +323,7 @@ FastGPT-plugin 使用 Vitest 作为单测框架。 ...@@ -323,7 +323,7 @@ FastGPT-plugin 使用 Vitest 作为单测框架。
### 6.1 部署 E2E 测试环境 ### 6.1 部署 E2E 测试环境
1. 参考 [快速开始本地开发](../../../self-host/dev.mdx),在本地部署一套 FastGPT 开发环境 1. 参考 [快速开始本地开发](../../../../self-host/dev.mdx),在本地部署一套 FastGPT 开发环境
2. `cd runtime && cp .env.template .env.local` 复制环境变量样例文件,连接到上一步部署的 Minio, Mongo, Redis 中 2. `cd runtime && cp .env.template .env.local` 复制环境变量样例文件,连接到上一步部署的 Minio, Mongo, Redis 中
3. `bun run dev` 运行开发环境,修改 FastGPT 的环境变量,连接到你刚刚启动的 fastgpt-plugin 3. `bun run dev` 运行开发环境,修改 FastGPT 的环境变量,连接到你刚刚启动的 fastgpt-plugin
...@@ -334,11 +334,11 @@ FastGPT-plugin 使用 Vitest 作为单测框架。 ...@@ -334,11 +334,11 @@ FastGPT-plugin 使用 Vitest 作为单测框架。
浏览器打开`http://localhost:PORT/openapi`可进入`fastgpt-plugin`的 OpenAPI 页面,进行 API 调试。 浏览器打开`http://localhost:PORT/openapi`可进入`fastgpt-plugin`的 OpenAPI 页面,进行 API 调试。
PORT 为你的 fastgpt-plugin 的端口 PORT 为你的 fastgpt-plugin 的端口
![](../../../../public/imgs/plugin-openapi.png) ![](/imgs/plugin-openapi.png)
可以先通过`/tool/list`接口,获取工具列表,找到需要调试的工具的`toolId`。紧接着,通过`/tool/runStream`来运行工具获取实际结果。 可以先通过`/tool/list`接口,获取工具列表,找到需要调试的工具的`toolId`。紧接着,通过`/tool/runStream`来运行工具获取实际结果。
![](../../../../public/imgs/plugin-openapi2.png) ![](/imgs/plugin-openapi2.png)
### 6.3 在开发环境下 e2e 测试(有热更新) ### 6.3 在开发环境下 e2e 测试(有热更新)
......
...@@ -7,16 +7,16 @@ description: How to configure and use the Doc2x plugin ...@@ -7,16 +7,16 @@ description: How to configure and use the Doc2x plugin
https://doc2x.noedgeai.com/ https://doc2x.noedgeai.com/
![](../../../../public/imgs/doc2x_plugin1.png) ![](/imgs/doc2x_plugin1.png)
![](../../../../public/imgs/doc2x_plugin2.png) ![](/imgs/doc2x_plugin2.png)
2. # Enter the API Key in FastGPT 2. # Enter the API Key in FastGPT
**In Workflow mode:** **In Workflow mode:**
![](../../../../public/imgs/doc2x_plugin3.png) ![](/imgs/doc2x_plugin3.png)
**In Simple mode:** **In Simple mode:**
![](../../../../public/imgs/doc2x_plugin4.png) ![](/imgs/doc2x_plugin4.png)
...@@ -7,16 +7,16 @@ description: 如何配置和使用 Doc2x 插件 ...@@ -7,16 +7,16 @@ description: 如何配置和使用 Doc2x 插件
https://doc2x.noedgeai.com/ https://doc2x.noedgeai.com/
![](../../../../public/imgs/doc2x_plugin1.png) ![](/imgs/doc2x_plugin1.png)
![](../../../../public/imgs/doc2x_plugin2.png) ![](/imgs/doc2x_plugin2.png)
1. # 填写apikey到fastgpt中 1. # 填写apikey到fastgpt中
**工作流****中:** **工作流****中:**
![](../../../../public/imgs/doc2x_plugin3.png) ![](/imgs/doc2x_plugin3.png)
**简易模式使用:** **简易模式使用:**
![](../../../../public/imgs/doc2x_plugin4.png) ![](/imgs/doc2x_plugin4.png)
...@@ -9,20 +9,20 @@ https://programmablesearchengine.google.com/ ...@@ -9,20 +9,20 @@ https://programmablesearchengine.google.com/
Go to the Custom Search Engine control panel and create a new Search Engine. Go to the Custom Search Engine control panel and create a new Search Engine.
![](../../../../public/imgs/google_search_plugin1.png) ![](/imgs/google_search_plugin1.png)
Get the Search Engine ID (cx). Get the Search Engine ID (cx).
![](../../../../public/imgs/google_search_plugin2.png) ![](/imgs/google_search_plugin2.png)
## 2. Get an API Key ## 2. Get an API Key
https://developers.google.com/custom-search/v1/overview https://developers.google.com/custom-search/v1/overview
![](../../../../public/imgs/google_search_plugin3.png) ![](/imgs/google_search_plugin3.png)
## 3. Fill in the Plugin Input Parameters ## 3. Fill in the Plugin Input Parameters
Enter the Search Engine ID in the cx field and the API key in the key field. Enter the Search Engine ID in the cx field and the API key in the key field.
![](../../../../public/imgs/google_search_plugin4.png) ![](/imgs/google_search_plugin4.png)
...@@ -9,20 +9,20 @@ https://programmablesearchengine.google.com/ ...@@ -9,20 +9,20 @@ https://programmablesearchengine.google.com/
我们连到Custom Search Engine control panel 建立Search Engine 我们连到Custom Search Engine control panel 建立Search Engine
![](../../../../public/imgs/google_search_plugin1.png) ![](/imgs/google_search_plugin1.png)
取得搜索引擎的ID,即cx 取得搜索引擎的ID,即cx
![](../../../../public/imgs/google_search_plugin2.png) ![](/imgs/google_search_plugin2.png)
1. # 获取api key 1. # 获取api key
https://developers.google.com/custom-search/v1/overview?hl=zh-cn https://developers.google.com/custom-search/v1/overview?hl=zh-cn
![](../../../../public/imgs/google_search_plugin3.png) ![](/imgs/google_search_plugin3.png)
1. # 填入插件输入参数 1. # 填入插件输入参数
将搜索引擎ID填入cx字段,api key填入key字段 将搜索引擎ID填入cx字段,api key填入key字段
![](../../../../public/imgs/google_search_plugin4.png) ![](/imgs/google_search_plugin4.png)
{ {
"title": "System Plugins", "title": "System Plugins",
"description": "Introduction to using and submitting system plugins, and filling instructions for each plugin", "description": "Guides for using, developing, and submitting system plugins.",
"pages": [ "pages": [
"dev_system_tool", "dev_system_tool",
"how_to_submit_system_plugin",
"upload_system_tool", "upload_system_tool",
"searxng_plugin_guide", "searxng_plugin_guide",
"google_search_plugin_guide", "google_search_plugin_guide",
"bing_search_plugin", "bing_search_plugin",
"doc2x_plugin_guide", "doc2x_plugin_guide"
"deepseek_plugin_guide"
] ]
} }
{ {
"title": "系统插件", "title": "系统插件",
"description": "介绍如何使用和提交系统插件,以及各插件的填写说明", "description": "系统插件的使用、开发与提交说明。",
"pages": [ "pages": [
"dev_system_tool", "dev_system_tool",
"how_to_submit_system_plugin",
"upload_system_tool", "upload_system_tool",
"searxng_plugin_guide", "searxng_plugin_guide",
"google_search_plugin_guide", "google_search_plugin_guide",
"bing_search_plugin", "bing_search_plugin",
"doc2x_plugin_guide", "doc2x_plugin_guide"
"deepseek_plugin_guide"
] ]
} }
...@@ -13,7 +13,7 @@ Open [Sealos Beijing Region](https://bja.sealos.run?uid=fnWRt09fZP), click App L ...@@ -13,7 +13,7 @@ Open [Sealos Beijing Region](https://bja.sealos.run?uid=fnWRt09fZP), click App L
| Open App Launchpad | Create New App | | Open App Launchpad | Create New App |
| --- | --- | | --- | --- |
| ![](../../../../public/imgs/searxng_plugin_guide1.png) | ![alt text](../../../../public/imgs/image-45.png) | | ![](/imgs/searxng_plugin_guide1.png) | ![alt text](/imgs/image-45.png) |
## 2. Deployment Configuration ## 2. Deployment Configuration
...@@ -26,7 +26,7 @@ Fill in the following parameters: ...@@ -26,7 +26,7 @@ Fill in the following parameters:
* Enable public access * Enable public access
* Click Advanced Configuration to add environment variables and config files * Click Advanced Configuration to add environment variables and config files
![alt text](../../../../public/imgs/image-50.png) ![alt text](/imgs/image-50.png)
**Environment Variables** **Environment Variables**
...@@ -144,7 +144,7 @@ Copy the public URL from your Sealos deployment and paste it into the SearXNG pl ...@@ -144,7 +144,7 @@ Copy the public URL from your Sealos deployment and paste it into the SearXNG pl
| Copy Public URL | Paste into URL | | Copy Public URL | Paste into URL |
| --- | --- | | --- | --- |
| ![alt text](../../../../public/imgs/image-48.png) | ![alt text](../../../../public/imgs/image-49.png) | | ![alt text](/imgs/image-48.png) | ![alt text](/imgs/image-49.png) |
## Response Format ## Response Format
......
...@@ -14,7 +14,7 @@ description: FastGPT SearXNG 搜索插件配置指南 ...@@ -14,7 +14,7 @@ description: FastGPT SearXNG 搜索插件配置指南
| 打开应用部署 | 点击新建应用 | | 打开应用部署 | 点击新建应用 |
| --- | --- | | --- | --- |
| ![](../../../../public/imgs/searxng_plugin_guide1.png) | ![alt text](../../../../public/imgs/image-45.png) | | ![](/imgs/searxng_plugin_guide1.png) | ![alt text](/imgs/image-45.png) |
## 2. 部署配置 ## 2. 部署配置
...@@ -27,7 +27,7 @@ description: FastGPT SearXNG 搜索插件配置指南 ...@@ -27,7 +27,7 @@ description: FastGPT SearXNG 搜索插件配置指南
* 开启公网访问 * 开启公网访问
* 点击高级配置,填写环境变量和配置文件 * 点击高级配置,填写环境变量和配置文件
![alt text](../../../../public/imgs/image-50.png) ![alt text](/imgs/image-50.png)
**环境变量** **环境变量**
...@@ -144,7 +144,7 @@ default_doi_resolver: 'oadoi.org' ...@@ -144,7 +144,7 @@ default_doi_resolver: 'oadoi.org'
| 复制公网地址| 填入 URL | | 复制公网地址| 填入 URL |
| --- | --- | | --- | --- |
| ![alt text](../../../../public/imgs/image-48.png) | ![alt text](../../../../public/imgs/image-49.png) | | ![alt text](/imgs/image-48.png) | ![alt text](/imgs/image-49.png) |
## 返回格式 ## 返回格式
......
...@@ -22,13 +22,13 @@ description: FastGPT System Tool Online Upload Guide ...@@ -22,13 +22,13 @@ description: FastGPT System Tool Online Upload Guide
### 1. Access the Configuration Page ### 1. Access the Configuration Page
![](../../../../public/imgs/plugins/entry.png) ![](/imgs/plugins/entry.png)
### 2. Prepare Tool Files ### 2. Prepare Tool Files
Before uploading, make sure your `.pkg` files are from the `dist/pkgs` folder, built by running `bun run build:pkg` in the fastgpt-plugin project. Before uploading, make sure your `.pkg` files are from the `dist/pkgs` folder, built by running `bun run build:pkg` in the fastgpt-plugin project.
![](../../../../public/imgs/plugins/files.png) ![](/imgs/plugins/files.png)
### 3. Upload ### 3. Upload
......
...@@ -22,13 +22,13 @@ description: FastGPT 系统工具在线上传指南 ...@@ -22,13 +22,13 @@ description: FastGPT 系统工具在线上传指南
### 1. 进入配置页面 ### 1. 进入配置页面
![](../../../../public/imgs/plugins/entry.png) ![](/imgs/plugins/entry.png)
### 2. 准备工具文件 ### 2. 准备工具文件
在上传之前,请确保您的 `.pkg` 文件是从 fastgpt-plugin 项目中通过 `bun run build:pkg` 命令打包后的 `dist/pkgs` 文件夹下得到的 在上传之前,请确保您的 `.pkg` 文件是从 fastgpt-plugin 项目中通过 `bun run build:pkg` 命令打包后的 `dist/pkgs` 文件夹下得到的
![](../../../../public/imgs/plugins/files.png) ![](/imgs/plugins/files.png)
### 3. 执行上传 ### 3. 执行上传
......
...@@ -7,7 +7,7 @@ Starting from V4.0, FastGPT adopted a new approach to building AI applications. ...@@ -7,7 +7,7 @@ Starting from V4.0, FastGPT adopted a new approach to building AI applications.
[Watch the video tutorial](https://www.bilibili.com/video/BV1is421u7bQ/) [Watch the video tutorial](https://www.bilibili.com/video/BV1is421u7bQ/)
![](../../../../public/imgs/flow-intro1.png) ![](/imgs/flow-intro1.png)
## What is a Node? ## What is a Node?
...@@ -15,7 +15,7 @@ In programming terms, a node is like a function or API endpoint — think of it ...@@ -15,7 +15,7 @@ In programming terms, a node is like a function or API endpoint — think of it
Below is the simplest AI conversation, consisting of a Workflow Start node and an AI Chat node. Below is the simplest AI conversation, consisting of a Workflow Start node and an AI Chat node.
![](../../../../public/imgs/flow-intro2.png) ![](/imgs/flow-intro2.png)
Execution flow: Execution flow:
1. The user inputs a question. The [Workflow Start] node executes and saves the user's question. 1. The user inputs a question. The [Workflow Start] node executes and saves the user's question.
...@@ -33,7 +33,7 @@ Functionally, nodes fall into 2 categories: ...@@ -33,7 +33,7 @@ Functionally, nodes fall into 2 categories:
Each node has 3 core parts: inputs, outputs, and triggers. Each node has 3 core parts: inputs, outputs, and triggers.
![](../../../../public/imgs/flow-intro3.png) ![](/imgs/flow-intro3.png)
- AI model, prompt, chat history, user question, and Knowledge Base citation are inputs. Inputs can be manual entries or variable references, which include "global variables" and outputs from any previous node. - AI model, prompt, chat history, user question, and Knowledge Base citation are inputs. Inputs can be manual entries or variable references, which include "global variables" and outputs from any previous node.
- New context and AI reply content are outputs. Outputs can be referenced by any subsequent node. - New context and AI reply content are outputs. Outputs can be referenced by any subsequent node.
...@@ -45,7 +45,7 @@ FastGPT Workflows start from the [Workflow Start] node, triggered when the user ...@@ -45,7 +45,7 @@ FastGPT Workflows start from the [Workflow Start] node, triggered when the user
Let's look at how workflows execute and when each node is triggered. Let's look at how workflows execute and when each node is triggered.
![](../../../../public/imgs/flow-intro1.png) ![](/imgs/flow-intro1.png)
As shown above, nodes can "be connected to" and "connect to other nodes." We call incoming connections "predecessor lines" and outgoing connections "successor lines." In the example, the [Knowledge Base Search] node has one predecessor line on the left and one successor line on the right. The [AI Chat] node only has a predecessor line on the left. As shown above, nodes can "be connected to" and "connect to other nodes." We call incoming connections "predecessor lines" and outgoing connections "successor lines." In the example, the [Knowledge Base Search] node has one predecessor line on the left and one successor line on the right. The [AI Chat] node only has a predecessor line on the left.
......
...@@ -7,7 +7,7 @@ FastGPT 莉 V4.0 迚域悽蠑蟋矩逕ィ譁ー逧コ、莠呈婿蠑乗擂譫サコ AI 蠎皮畑縲ゆスソ逕 ...@@ -7,7 +7,7 @@ FastGPT 莉 V4.0 迚域悽蠑蟋矩逕ィ譁ー逧コ、莠呈婿蠑乗擂譫サコ AI 蠎皮畑縲ゆスソ逕
[查看视频教程](https://www.bilibili.com/video/BV1is421u7bQ/) [查看视频教程](https://www.bilibili.com/video/BV1is421u7bQ/)
![](../../../../public/imgs/flow-intro1.png) ![](/imgs/flow-intro1.png)
## 什么是节点? ## 什么是节点?
...@@ -15,7 +15,7 @@ FastGPT 莉 V4.0 迚域悽蠑蟋矩逕ィ譁ー逧コ、莠呈婿蠑乗擂譫サコ AI 蠎皮畑縲ゆスソ逕 ...@@ -15,7 +15,7 @@ FastGPT 莉 V4.0 迚域悽蠑蟋矩逕ィ譁ー逧コ、莠呈婿蠑乗擂譫サコ AI 蠎皮畑縲ゆスソ逕
如下图,这是一个最简单的 AI 对话。它由用流程开始和 AI 对话节点组成。 如下图,这是一个最简单的 AI 对话。它由用流程开始和 AI 对话节点组成。
![](../../../../public/imgs/flow-intro2.png) ![](/imgs/flow-intro2.png)
执行流程如下: 执行流程如下:
1. 用户输入问题后,【流程开始】节点执行,用户问题被保存。 1. 用户输入问题后,【流程开始】节点执行,用户问题被保存。
...@@ -33,7 +33,7 @@ FastGPT 莉 V4.0 迚域悽蠑蟋矩逕ィ譁ー逧コ、莠呈婿蠑乗擂譫サコ AI 蠎皮畑縲ゆスソ逕 ...@@ -33,7 +33,7 @@ FastGPT 莉 V4.0 迚域悽蠑蟋矩逕ィ譁ー逧コ、莠呈婿蠑乗擂譫サコ AI 蠎皮畑縲ゆスソ逕
每个节点会包含 3 个核心部分:输入、输出和触发器。 每个节点会包含 3 个核心部分:输入、输出和触发器。
![](../../../../public/imgs/flow-intro3.png) ![](/imgs/flow-intro3.png)
- AI模型、提示词、聊天记录、用户问题,知识库引用为输入,节点的输入可以是手动输入也可以是变量引用,变量引用的范围包括“全局变量”和之前任意一个节点的输出。 - AI模型、提示词、聊天记录、用户问题,知识库引用为输入,节点的输入可以是手动输入也可以是变量引用,变量引用的范围包括“全局变量”和之前任意一个节点的输出。
- 新的上下文和AI回复内容为输出,输出可以被之后任意节点变量引用。 - 新的上下文和AI回复内容为输出,输出可以被之后任意节点变量引用。
...@@ -45,7 +45,7 @@ FastGPT逧キ・菴懈オ∽サ弱先オ∫ィ句シ蟋九題鰍轤ケ蠑蟋区鴬陦鯉シ悟庄莉・逅ァ」荳コ莉守 ...@@ -45,7 +45,7 @@ FastGPT逧キ・菴懈オ∽サ弱先オ∫ィ句シ蟋九題鰍轤ケ蠑蟋区鴬陦鯉シ悟庄莉・逅ァ」荳コ莉守
下面我们来看下,工作流是如何运行的,以及每个节点何时被触发执行。 下面我们来看下,工作流是如何运行的,以及每个节点何时被触发执行。
![](../../../../public/imgs/flow-intro1.png) ![](/imgs/flow-intro1.png)
如上图所示节点会“被连接”也会“连接其他节点”,我们称“被连接”的那根线为前置线,“连接其他节点的线”为后置线。上图例子中【知识库搜索】模块左侧有一根前置线,右侧有一根后置线。而【AI对话】节点只有左侧一根前置线。 如上图所示节点会“被连接”也会“连接其他节点”,我们称“被连接”的那根线为前置线,“连接其他节点的线”为后置线。上图例子中【知识库搜索】模块左侧有一根前置线,右侧有一根后置线。而【AI对话】节点只有左侧一根前置线。
......
{
"title": "Workflow",
"description": "FastGPT workflow introduction and node guides.",
"pages": ["intro", "nodes"]
}
{
"title": "工作流",
"description": "FastGPT 工作流介绍和节点说明。",
"pages": ["intro", "nodes"]
}
...@@ -11,7 +11,7 @@ import { Alert } from '@/components/docs/Alert'; ...@@ -11,7 +11,7 @@ import { Alert } from '@/components/docs/Alert';
- Trigger-based execution - Trigger-based execution
- Core module - Core module
![](../../../../../public/imgs/aichat.png) ![](/imgs/aichat.png)
## Parameters ## Parameters
...@@ -21,10 +21,10 @@ Configure available chat models via [config.json](../../../../self-host/config/m ...@@ -21,10 +21,10 @@ Configure available chat models via [config.json](../../../../self-host/config/m
Click the AI model to configure its parameters. Click the AI model to configure its parameters.
![](../../../../../public/imgs/aichat02.png) ![](/imgs/aichat02.png)
![](../../../../../public/imgs/aichat2.png) ![](/imgs/aichat2.png)
<Alert icon="🍅" context="success"> <Alert icon="🍅" context="success">
For detailed parameter descriptions, see: [AI Parameter Configuration](../../course/ai_settings.en.mdx) For detailed parameter descriptions, see: [AI Parameter Configuration](../../general/ai_settings.en.mdx)
</Alert> </Alert>
...@@ -11,7 +11,7 @@ import { Alert } from '@/components/docs/Alert'; ...@@ -11,7 +11,7 @@ import { Alert } from '@/components/docs/Alert';
- 触发执行 - 触发执行
- 核心模块 - 核心模块
![](../../../../../public/imgs/aichat.png) ![](/imgs/aichat.png)
## 参数说明 ## 参数说明
...@@ -21,10 +21,10 @@ import { Alert } from '@/components/docs/Alert'; ...@@ -21,10 +21,10 @@ import { Alert } from '@/components/docs/Alert';
点击AI模型后,可以配置模型的相关参数。 点击AI模型后,可以配置模型的相关参数。
![](../../../../../public/imgs/aichat02.png) ![](/imgs/aichat02.png)
![](../../../../../public/imgs/aichat2.png) ![](/imgs/aichat2.png)
<Alert icon="🍅" context="success"> <Alert icon="🍅" context="success">
具体配置参数介绍可以参考: [AI参数配置说明](../../course/ai_settings.mdx) 具体配置参数介绍可以参考: [AI参数配置说明](../../general/ai_settings.mdx)
</Alert> </Alert>
...@@ -11,7 +11,7 @@ description: FastGPT Text Content Extraction node overview ...@@ -11,7 +11,7 @@ description: FastGPT Text Content Extraction node overview
- function_call module - function_call module
- Core module - Core module
![](../../../../../public/imgs/extract1.png) ![](/imgs/extract1.png)
## What It Does ## What It Does
......
...@@ -11,7 +11,7 @@ description: FastGPT 内容提取模块介绍 ...@@ -11,7 +11,7 @@ description: FastGPT 内容提取模块介绍
- function_call 模块 - function_call 模块
- 核心模块 - 核心模块
![](../../../../../public/imgs/extract1.png) ![](/imgs/extract1.png)
## 功能 ## 功能
......
...@@ -9,7 +9,7 @@ description: FastGPT Query Enhancement node overview and usage ...@@ -9,7 +9,7 @@ description: FastGPT Query Enhancement node overview and usage
- Has external input - Has external input
- Trigger-based execution - Trigger-based execution
![](../../../../../public/imgs/coreferenceResolution1.jpg) ![](/imgs/coreferenceResolution1.jpg)
## Background ## Background
...@@ -17,11 +17,11 @@ In RAG, we perform embedding searches against the database based on the input qu ...@@ -17,11 +17,11 @@ In RAG, we perform embedding searches against the database based on the input qu
During search -- especially in multi-turn conversations -- follow-up questions often fail to retrieve useful results. One reason is that Knowledge Base search only uses the "current" question. Consider this example: During search -- especially in multi-turn conversations -- follow-up questions often fail to retrieve useful results. One reason is that Knowledge Base search only uses the "current" question. Consider this example:
![](../../../../../public/imgs/coreferenceResolution2.webp) ![](/imgs/coreferenceResolution2.webp)
When the user asks "What is the second point?", the system searches the Knowledge Base for exactly that phrase and finds nothing. The actual intended query is "What is the QA structure?". This is why we need a Query Enhancement node to refine the user's current question so the Knowledge Base search can return relevant results. With query enhancement applied: When the user asks "What is the second point?", the system searches the Knowledge Base for exactly that phrase and finds nothing. The actual intended query is "What is the QA structure?". This is why we need a Query Enhancement node to refine the user's current question so the Knowledge Base search can return relevant results. With query enhancement applied:
![](../../../../../public/imgs/coreferenceResolution3.webp) ![](/imgs/coreferenceResolution3.webp)
## What It Does ## What It Does
......
...@@ -9,7 +9,7 @@ description: 问题优化模块介绍和使用 ...@@ -9,7 +9,7 @@ description: 问题优化模块介绍和使用
- 有外部输入 - 有外部输入
- 触发执行 - 触发执行
![](../../../../../public/imgs/coreferenceResolution1.jpg) ![](/imgs/coreferenceResolution1.jpg)
## 背景 ## 背景
...@@ -17,11 +17,11 @@ description: 问题优化模块介绍和使用 ...@@ -17,11 +17,11 @@ description: 问题优化模块介绍和使用
在搜索的过程中,尤其是连续对话的搜索,我们通常会发现后续的问题难以搜索到合适的内容,其中一个原因是知识库搜索只会使用“当前”的问题去执行。看下面的例子: 在搜索的过程中,尤其是连续对话的搜索,我们通常会发现后续的问题难以搜索到合适的内容,其中一个原因是知识库搜索只会使用“当前”的问题去执行。看下面的例子:
![](../../../../../public/imgs/coreferenceResolution2.webp) ![](/imgs/coreferenceResolution2.webp)
用户在提问“第二点是什么”的时候,只会去知识库里查找“第二点是什么”,压根查不到内容。实际上需要查询的是“QA结构是什么”。因此我们需要引入一个【问题优化】模块,来对用户当前的问题进行补全,从而使得知识库搜索能够搜索到合适的内容。使用补全后效果如下: 用户在提问“第二点是什么”的时候,只会去知识库里查找“第二点是什么”,压根查不到内容。实际上需要查询的是“QA结构是什么”。因此我们需要引入一个【问题优化】模块,来对用户当前的问题进行补全,从而使得知识库搜索能够搜索到合适的内容。使用补全后效果如下:
![](../../../../../public/imgs/coreferenceResolution3.webp) ![](/imgs/coreferenceResolution3.webp)
## 功能 ## 功能
......
...@@ -14,8 +14,8 @@ This is a temporary module that will receive a more comprehensive redesign in th ...@@ -14,8 +14,8 @@ This is a temporary module that will receive a more comprehensive redesign in th
| | | | | |
| --------------------- | --------------------- | | --------------------- | --------------------- |
| ![](../../../../../public/imgs/customfeedback1.jpg) | ![](../../../../../public/imgs/customfeedback2.jpg) | | ![](/imgs/customfeedback1.jpg) | ![](/imgs/customfeedback2.jpg) |
| ![](../../../../../public/imgs/customfeedback3.jpg) | ![](../../../../../public/imgs/customfeedback4.jpg) | | ![](/imgs/customfeedback3.jpg) | ![](/imgs/customfeedback4.jpg) |
## Overview ## Overview
......
...@@ -14,8 +14,8 @@ description: 自定义反馈模块介绍 ...@@ -14,8 +14,8 @@ description: 自定义反馈模块介绍
| | | | | |
| --------------------- | --------------------- | | --------------------- | --------------------- |
| ![](../../../../../public/imgs/customfeedback1.jpg) | ![](../../../../../public/imgs/customfeedback2.jpg) | | ![](/imgs/customfeedback1.jpg) | ![](/imgs/customfeedback2.jpg) |
| ![](../../../../../public/imgs/customfeedback3.jpg) | ![](../../../../../public/imgs/customfeedback4.jpg) | | ![](/imgs/customfeedback3.jpg) | ![](/imgs/customfeedback4.jpg) |
## 介绍 ## 介绍
......
...@@ -3,7 +3,7 @@ title: Knowledge Base Search ...@@ -3,7 +3,7 @@ title: Knowledge Base Search
description: FastGPT Knowledge Base Search node overview description: FastGPT Knowledge Base Search node overview
--- ---
For detailed parameters and internal logic, see: [FastGPT Knowledge Base Search](../../knowledge_base/rag.en.mdx) For detailed parameters and internal logic, see: [FastGPT Knowledge Base Search](../../../dataset/rag.en.mdx)
## Characteristics ## Characteristics
...@@ -13,7 +13,7 @@ For detailed parameters and internal logic, see: [FastGPT Knowledge Base Search] ...@@ -13,7 +13,7 @@ For detailed parameters and internal logic, see: [FastGPT Knowledge Base Search]
- Trigger-based execution - Trigger-based execution
- Core module - Core module
![](../../../../../public/imgs/flow-dataset1.png) ![](/imgs/flow-dataset1.png)
## Parameters ## Parameters
...@@ -23,7 +23,7 @@ Select one or more Knowledge Bases using the **same embedding model** for vector ...@@ -23,7 +23,7 @@ Select one or more Knowledge Bases using the **same embedding model** for vector
### Input - Search Parameters ### Input - Search Parameters
[View parameter details](../../knowledge_base/dataset_engine.en.mdx#搜索参数) [View parameter details](../../../dataset/dataset_engine.en.mdx#搜索参数)
### Output - Referenced Content ### Output - Referenced Content
......
...@@ -3,7 +3,7 @@ title: 知识库搜索 ...@@ -3,7 +3,7 @@ title: 知识库搜索
description: FastGPT AI 知识库搜索模块介绍 description: FastGPT AI 知识库搜索模块介绍
--- ---
知识库搜索具体参数说明,以及内部逻辑请移步:[FastGPT知识库搜索方案](../../knowledge_base/rag.mdx) 知识库搜索具体参数说明,以及内部逻辑请移步:[FastGPT知识库搜索方案](../../../dataset/rag.mdx)
## 特点 ## 特点
...@@ -13,7 +13,7 @@ description: FastGPT AI 知识库搜索模块介绍 ...@@ -13,7 +13,7 @@ description: FastGPT AI 知识库搜索模块介绍
- 触发执行 - 触发执行
- 核心模块 - 核心模块
![](../../../../../public/imgs/flow-dataset1.png) ![](/imgs/flow-dataset1.png)
## 参数说明 ## 参数说明
...@@ -23,7 +23,7 @@ description: FastGPT AI 知识库搜索模块介绍 ...@@ -23,7 +23,7 @@ description: FastGPT AI 知识库搜索模块介绍
### 输入 - 搜索参数 ### 输入 - 搜索参数
[点击查看参数介绍](../../knowledge_base/dataset_engine.mdx#搜索参数) [点击查看参数介绍](../../../dataset/dataset_engine.mdx#搜索参数)
### 输出 - 引用内容 ### 输出 - 引用内容
......
...@@ -5,7 +5,7 @@ description: FastGPT Document Parsing node overview ...@@ -5,7 +5,7 @@ description: FastGPT Document Parsing node overview
| | | | | |
| --- | --- | | --- | --- |
| ![](../../../../../public/imgs/document_analysis1.png) | ![](../../../../../public/imgs/document_analysis2.png) | | ![](/imgs/document_analysis1.png) | ![](/imgs/document_analysis2.png) |
The Document Parsing component becomes available after enabling file upload. The Document Parsing component becomes available after enabling file upload.
......
...@@ -5,7 +5,7 @@ description: FastGPT 文档解析模块介绍 ...@@ -5,7 +5,7 @@ description: FastGPT 文档解析模块介绍
| | | | | |
| --- | --- | | --- | --- |
| ![](../../../../../public/imgs/document_analysis1.png) | ![](../../../../../public/imgs/document_analysis2.png) | | ![](/imgs/document_analysis1.png) | ![](/imgs/document_analysis2.png) |
开启文件上传后,可使用文档解析组件。 开启文件上传后,可使用文档解析组件。
......
...@@ -9,17 +9,17 @@ description: FastGPT Form Input node overview ...@@ -9,17 +9,17 @@ description: FastGPT Form Input node overview
- Can be added multiple times - Can be added multiple times
- Trigger-based execution - Trigger-based execution
![](../../../../../public/imgs/form_input1.png) ![](/imgs/form_input1.png)
## What It Does ## What It Does
The Form Input node is a user interaction node. When triggered, the conversation enters an "interactive" state -- the workflow state is saved and execution pauses until the user completes the interaction. The Form Input node is a user interaction node. When triggered, the conversation enters an "interactive" state -- the workflow state is saved and execution pauses until the user completes the interaction.
![](../../../../../public/imgs/form_input2.png) ![](/imgs/form_input2.png)
In the example above, when the Form Input node is triggered, the chat box is hidden and the conversation enters interactive mode. In the example above, when the Form Input node is triggered, the chat box is hidden and the conversation enters interactive mode.
![](../../../../../public/imgs/form_input3.png) ![](/imgs/form_input3.png)
After the user fills in the required fields and clicks submit, the node collects the form data and passes it to subsequent nodes. After the user fills in the required fields and clicks submit, the node collects the form data and passes it to subsequent nodes.
......
...@@ -9,17 +9,17 @@ description: FastGPT 表单输入模块介绍 ...@@ -9,17 +9,17 @@ description: FastGPT 表单输入模块介绍
- 可重复添加 - 可重复添加
- 触发执行 - 触发执行
![](../../../../../public/imgs/form_input1.png) ![](/imgs/form_input1.png)
## 功能 ## 功能
「表单输入」节点属于用户交互节点,当触发这个节点时,对话会进入“交互”状态,会记录工作流的状态,等用户完成交互后,继续向下执行工作流 「表单输入」节点属于用户交互节点,当触发这个节点时,对话会进入“交互”状态,会记录工作流的状态,等用户完成交互后,继续向下执行工作流
![](../../../../../public/imgs/form_input2.png) ![](/imgs/form_input2.png)
比如上图中的例子,当触发表单输入节点时,对话框隐藏,对话进入“交互状态” 比如上图中的例子,当触发表单输入节点时,对话框隐藏,对话进入“交互状态”
![](../../../../../public/imgs/form_input3.png) ![](/imgs/form_input3.png)
当用户填完必填的信息并点击提交后,节点能够收集用户填写的表单信息,传递到后续的节点中使用 当用户填完必填的信息并点击提交后,节点能够收集用户填写的表单信息,传递到后续的节点中使用
......
...@@ -12,7 +12,7 @@ import { Alert } from '@/components/docs/Alert'; ...@@ -12,7 +12,7 @@ import { Alert } from '@/components/docs/Alert';
- Trigger-based execution - Trigger-based execution
- Core of core modules - Core of core modules
![](../../../../../public/imgs/http1.jpg) ![](/imgs/http1.jpg)
## Overview ## Overview
......
...@@ -12,7 +12,7 @@ import { Alert } from '@/components/docs/Alert'; ...@@ -12,7 +12,7 @@ import { Alert } from '@/components/docs/Alert';
- 触发执行 - 触发执行
- 核中核模块 - 核中核模块
![](../../../../../public/imgs/http1.jpg) ![](/imgs/http1.jpg)
## 介绍 ## 介绍
......
...@@ -4,7 +4,7 @@ description: FastGPT Knowledge Base Search Merge node overview ...@@ -4,7 +4,7 @@ description: FastGPT Knowledge Base Search Merge node overview
--- ---
![](../../../../../public/imgs/knowledge_merge1.png) ![](/imgs/knowledge_merge1.png)
## What It Does ## What It Does
...@@ -14,11 +14,11 @@ Merges search results from multiple Knowledge Bases into a single output, re-ran ...@@ -14,11 +14,11 @@ Merges search results from multiple Knowledge Bases into a single output, re-ran
The AI Chat node can only accept one Knowledge Base reference input. If you call multiple Knowledge Bases, you cannot directly reference all of them (as shown below). The AI Chat node can only accept one Knowledge Base reference input. If you call multiple Knowledge Bases, you cannot directly reference all of them (as shown below).
![](../../../../../public/imgs/knowledge_merge2.png) ![](/imgs/knowledge_merge2.png)
Use **Knowledge Base Search Merge** to combine results from multiple Knowledge Bases into one. Use **Knowledge Base Search Merge** to combine results from multiple Knowledge Bases into one.
![](../../../../../public/imgs/knowledge_merge3.png) ![](/imgs/knowledge_merge3.png)
## Example Use Cases ## Example Use Cases
......
...@@ -4,7 +4,7 @@ description: FastGPT 知识库搜索引用合并模块介绍 ...@@ -4,7 +4,7 @@ description: FastGPT 知识库搜索引用合并模块介绍
--- ---
![](../../../../../public/imgs/knowledge_merge1.png) ![](/imgs/knowledge_merge1.png)
## 作用 ## 作用
...@@ -14,11 +14,11 @@ description: FastGPT 知识库搜索引用合并模块介绍 ...@@ -14,11 +14,11 @@ description: FastGPT 知识库搜索引用合并模块介绍
AI对话只能接收一个知识库引用内容。因此,如果调用了多个知识库,无法直接引用所有知识库(如下图) AI对话只能接收一个知识库引用内容。因此,如果调用了多个知识库,无法直接引用所有知识库(如下图)
![](../../../../../public/imgs/knowledge_merge2.png) ![](/imgs/knowledge_merge2.png)
使用**知识库搜索引用合并**,可以把多个知识库的搜索结果合在一起。 使用**知识库搜索引用合并**,可以把多个知识库的搜索结果合在一起。
![](../../../../../public/imgs/knowledge_merge3.png) ![](/imgs/knowledge_merge3.png)
## 可用例子: ## 可用例子:
......
...@@ -4,7 +4,7 @@ description: FastGPT Laf Function Call node overview ...@@ -4,7 +4,7 @@ description: FastGPT Laf Function Call node overview
--- ---
![](../../../../../public/imgs/laf1.webp) ![](/imgs/laf1.webp)
## Overview ## Overview
...@@ -23,7 +23,7 @@ After obtaining a PAT, go to FastGPT's `Account page` or the `Laf module` in the ...@@ -23,7 +23,7 @@ After obtaining a PAT, go to FastGPT's `Account page` or the `Laf module` in the
Enter the PAT for verification, then select the application to bind (the application must be in Running status). You can then call cloud functions under that application. Enter the PAT for verification, then select the application to bind (the application must be in Running status). You can then call cloud functions under that application.
![](../../../../../public/imgs/laf2.webp) ![](/imgs/laf2.webp)
## Writing Cloud Functions ## Writing Cloud Functions
...@@ -79,13 +79,13 @@ You can also select the `fastgpt_template` on the Laf platform to quickly genera ...@@ -79,13 +79,13 @@ You can also select the `fastgpt_template` on the Laf platform to quickly genera
To do this, go to the Laf functions page and create a new function (note: FastGPT only calls POST functions). Then either paste the code above or click "More Templates" and search for "fastgpt" to use the template shown below. To do this, go to the Laf functions page and create a new function (note: FastGPT only calls POST functions). Then either paste the code above or click "More Templates" and search for "fastgpt" to use the template shown below.
![](../../../../../public/imgs/laf3.webp) ![](/imgs/laf3.webp)
## Using in FastGPT ## Using in FastGPT
After selecting a function, click "Sync Parameters" to automatically sync the cloud function's parameters into FastGPT. You can also add parameters manually -- manually modified parameters will not be overwritten by "Sync Parameters". After selecting a function, click "Sync Parameters" to automatically sync the cloud function's parameters into FastGPT. You can also add parameters manually -- manually modified parameters will not be overwritten by "Sync Parameters".
![](../../../../../public/imgs/laf4.png) ![](/imgs/laf4.png)
## Notes ## Notes
......
...@@ -4,7 +4,7 @@ description: FastGPT Laf 函数调用模块介绍 ...@@ -4,7 +4,7 @@ description: FastGPT Laf 函数调用模块介绍
--- ---
![](../../../../../public/imgs/laf1.webp) ![](/imgs/laf1.webp)
## 介绍 ## 介绍
...@@ -23,7 +23,7 @@ Laf 提供了 PAT(访问凭证) 来实现 Laf 平台外的快捷登录,可以 ...@@ -23,7 +23,7 @@ Laf 提供了 PAT(访问凭证) 来实现 Laf 平台外的快捷登录,可以
填入 PAT 验证后,选择需要绑定的应用(应用需要是 Running 状态),即可调用该应用下的云函数。 填入 PAT 验证后,选择需要绑定的应用(应用需要是 Running 状态),即可调用该应用下的云函数。
![](../../../../../public/imgs/laf2.webp) ![](/imgs/laf2.webp)
## 编写云函数 ## 编写云函数
...@@ -79,13 +79,13 @@ export default async function (ctx: FunctionContext): Promise<IResponse> { ...@@ -79,13 +79,13 @@ export default async function (ctx: FunctionContext): Promise<IResponse> {
具体操作可以是,进入 Laf 的函数页面,新建函数(注意 fastgpt 只会调用 post 请求的函数),然后复制上面的代码或者点击更多模板搜索“fastgpt”,使用下面的模板 具体操作可以是,进入 Laf 的函数页面,新建函数(注意 fastgpt 只会调用 post 请求的函数),然后复制上面的代码或者点击更多模板搜索“fastgpt”,使用下面的模板
![](../../../../../public/imgs/laf3.webp) ![](/imgs/laf3.webp)
## FastGPT 中使用 ## FastGPT 中使用
在选择函数后,可以通过点击“同步参数”,自动同步云函数的参数到 FastGPT 中。当然也可以手动添加,手动修改后的参数不会被“同步参数”修改。 在选择函数后,可以通过点击“同步参数”,自动同步云函数的参数到 FastGPT 中。当然也可以手动添加,手动修改后的参数不会被“同步参数”修改。
![](../../../../../public/imgs/laf4.png) ![](/imgs/laf4.png)
## 使用注意事项 ## 使用注意事项
......
...@@ -9,7 +9,7 @@ The **Batch Processing** node was introduced in FastGPT V4.8.11. It allows workf ...@@ -9,7 +9,7 @@ The **Batch Processing** node was introduced in FastGPT V4.8.11. It allows workf
This node is inspired by loop structures in programming languages, presented in a visual format. This node is inspired by loop structures in programming languages, presented in a visual format.
![Batch Processing node](../../../../../public/imgs/fastgpt-loop-node.png) ![Batch Processing node](/imgs/fastgpt-loop-node.png)
> In programming terms, nodes are like functions or API endpoints -- each one is a **step**. By connecting multiple nodes together, you build a step-by-step process that produces the final AI output. > In programming terms, nodes are like functions or API endpoints -- each one is a **step**. By connecting multiple nodes together, you build a step-by-step process that produces the final AI output.
...@@ -74,7 +74,7 @@ The **Batch Processing** node requires two core inputs: ...@@ -74,7 +74,7 @@ The **Batch Processing** node requires two core inputs:
### Loop Body Configuration ### Loop Body Configuration
![Loop body configuration](../../../../../public/imgs/fastgpt-loop-node-config.webp) ![Loop body configuration](/imgs/fastgpt-loop-node-config.webp)
1. Inside the loop body, you can add any type of node: 1. Inside the loop body, you can add any type of node:
- AI Chat node - AI Chat node
...@@ -97,7 +97,7 @@ Suppose you have an array of texts that each need AI processing. This is the mos ...@@ -97,7 +97,7 @@ Suppose you have an array of texts that each need AI processing. This is the mos
1. Prepare the input array 1. Prepare the input array
![Prepare input array](../../../../../public/imgs/fastgpt-loop-node-example-1.png) ![Prepare input array](/imgs/fastgpt-loop-node-example-1.png)
Use a Code Execution node to create a test array: Use a Code Execution node to create a test array:
...@@ -112,7 +112,7 @@ Suppose you have an array of texts that each need AI processing. This is the mos ...@@ -112,7 +112,7 @@ Suppose you have an array of texts that each need AI processing. This is the mos
2. Configure the Batch Processing node 2. Configure the Batch Processing node
![Configure Batch Processing node](../../../../../public/imgs/fastgpt-loop-node-example-2.png) ![Configure Batch Processing node](/imgs/fastgpt-loop-node-example-2.png)
- Array input: Select the `textArray` output from the previous Code Execution node. - Array input: Select the `textArray` output from the previous Code Execution node.
- Add an AI Chat node inside the loop body to process each text. Set the prompt to: `Please translate this text to English`. - Add an AI Chat node inside the loop body to process each text. Set the prompt to: `Please translate this text to English`.
...@@ -121,7 +121,7 @@ Suppose you have an array of texts that each need AI processing. This is the mos ...@@ -121,7 +121,7 @@ Suppose you have an array of texts that each need AI processing. This is the mos
#### Execution Flow #### Execution Flow
![Execution flow](../../../../../public/imgs/fastgpt-loop-node-example-3.png) ![Execution flow](/imgs/fastgpt-loop-node-example-3.png)
1. The Code Execution node runs and generates the test array 1. The Code Execution node runs and generates the test array
2. The Batch Processing node receives the array and begins iteration 2. The Batch Processing node receives the array and begins iteration
...@@ -146,7 +146,7 @@ The **Batch Processing** node handles these well. ...@@ -146,7 +146,7 @@ The **Batch Processing** node handles these well.
1. Text preprocessing and segmentation 1. Text preprocessing and segmentation
![Text preprocessing and segmentation](../../../../../public/imgs/fastgpt-loop-node-example-4.png) ![Text preprocessing and segmentation](/imgs/fastgpt-loop-node-example-4.png)
Use a Code Execution node for text segmentation: Use a Code Execution node for text segmentation:
...@@ -279,7 +279,7 @@ The **Batch Processing** node handles these well. ...@@ -279,7 +279,7 @@ The **Batch Processing** node handles these well.
2. Configure the Batch Processing node 2. Configure the Batch Processing node
![Configure Batch Processing node](../../../../../public/imgs/fastgpt-loop-node-example-5.png) ![Configure Batch Processing node](/imgs/fastgpt-loop-node-example-5.png)
- Array input: Select the `chunks` output from the previous Code Execution node. - Array input: Select the `chunks` output from the previous Code Execution node.
- Add a Code Execution node inside the loop body to format the source text. - Add a Code Execution node inside the loop body to format the source text.
......
...@@ -9,7 +9,7 @@ description: FastGPT 批量运行节点介绍和使用 ...@@ -9,7 +9,7 @@ description: FastGPT 批量运行节点介绍和使用
这个节点的设计灵感来自编程语言中的循环结构,但以可视化的方式呈现。 这个节点的设计灵感来自编程语言中的循环结构,但以可视化的方式呈现。
![批量运行节点](../../../../../public/imgs/fastgpt-loop-node.png) ![批量运行节点](/imgs/fastgpt-loop-node.png)
> 在程序中,节点可以理解为一个个 Function 或者接口。可以理解为它就是一个**步骤**。将多个节点一个个拼接起来,即可一步步的去实现最终的 AI 输出。 > 在程序中,节点可以理解为一个个 Function 或者接口。可以理解为它就是一个**步骤**。将多个节点一个个拼接起来,即可一步步的去实现最终的 AI 输出。
...@@ -74,7 +74,7 @@ description: FastGPT 批量运行节点介绍和使用 ...@@ -74,7 +74,7 @@ description: FastGPT 批量运行节点介绍和使用
### 循环体配置 ### 循环体配置
![循环体配置](../../../../../public/imgs/fastgpt-loop-node-config.webp) ![循环体配置](/imgs/fastgpt-loop-node-config.webp)
1. 在循环体内部,可以添加任意类型的节点,如: 1. 在循环体内部,可以添加任意类型的节点,如:
- AI 对话节点 - AI 对话节点
...@@ -97,7 +97,7 @@ description: FastGPT 批量运行节点介绍和使用 ...@@ -97,7 +97,7 @@ description: FastGPT 批量运行节点介绍和使用
1. 准备输入数组 1. 准备输入数组
![准备输入数组](../../../../../public/imgs/fastgpt-loop-node-example-1.png) ![准备输入数组](/imgs/fastgpt-loop-node-example-1.png)
使用【代码运行】节点创建测试数组: 使用【代码运行】节点创建测试数组:
...@@ -112,7 +112,7 @@ description: FastGPT 批量运行节点介绍和使用 ...@@ -112,7 +112,7 @@ description: FastGPT 批量运行节点介绍和使用
2. 配置批量运行节点 2. 配置批量运行节点
![配置批量运行节点](../../../../../public/imgs/fastgpt-loop-node-example-2.png) ![配置批量运行节点](/imgs/fastgpt-loop-node-example-2.png)
- 数组输入:选择上一步代码运行节点的输出变量 `textArray`。 - 数组输入:选择上一步代码运行节点的输出变量 `textArray`。
- 循环体内添加一个【AI 对话】节点,用于处理每个文本。这里我们输入的 prompt 为:`请将这段文本翻译成英文`。 - 循环体内添加一个【AI 对话】节点,用于处理每个文本。这里我们输入的 prompt 为:`请将这段文本翻译成英文`。
...@@ -121,7 +121,7 @@ description: FastGPT 批量运行节点介绍和使用 ...@@ -121,7 +121,7 @@ description: FastGPT 批量运行节点介绍和使用
#### 运行流程 #### 运行流程
![运行流程](../../../../../public/imgs/fastgpt-loop-node-example-3.png) ![运行流程](/imgs/fastgpt-loop-node-example-3.png)
1. 【代码运行】节点执行,生成测试数组 1. 【代码运行】节点执行,生成测试数组
2. 【批量运行】节点接收数组,开始遍历 2. 【批量运行】节点接收数组,开始遍历
...@@ -146,7 +146,7 @@ description: FastGPT 批量运行节点介绍和使用 ...@@ -146,7 +146,7 @@ description: FastGPT 批量运行节点介绍和使用
1. 文本预处理与分段 1. 文本预处理与分段
![文本预处理与分段](../../../../../public/imgs/fastgpt-loop-node-example-4.png) ![文本预处理与分段](/imgs/fastgpt-loop-node-example-4.png)
使用【代码运行】节点进行文本分段,代码如下: 使用【代码运行】节点进行文本分段,代码如下:
...@@ -279,7 +279,7 @@ description: FastGPT 批量运行节点介绍和使用 ...@@ -279,7 +279,7 @@ description: FastGPT 批量运行节点介绍和使用
2. 配置批量运行节点 2. 配置批量运行节点
![配置批量运行节点](../../../../../public/imgs/fastgpt-loop-node-example-5.png) ![配置批量运行节点](/imgs/fastgpt-loop-node-example-5.png)
- 数组输入:选择上一步代码运行节点的输出变量 `chunks`。 - 数组输入:选择上一步代码运行节点的输出变量 `chunks`。
- 循环体内添加一个【代码运行】节点,对源文本进行格式化。 - 循环体内添加一个【代码运行】节点,对源文本进行格式化。
......
{ {
"title": "Workflow Nodes", "title": "Nodes",
"description": "FastGPT workflow node configuration and usage guide", "description": "FastGPT workflow node settings and usage guides.",
"pages": [ "pages": [
"ai_chat", "ai_chat",
"dataset_search", "dataset_search",
"tool",
"question_classify", "question_classify",
"content_extract", "content_extract",
"user-selection", "user-selection",
...@@ -13,6 +12,7 @@ ...@@ -13,6 +12,7 @@
"reply", "reply",
"document_parsing", "document_parsing",
"http", "http",
"tool",
"tfswitch", "tfswitch",
"variable_update", "variable_update",
"sandbox-v2", "sandbox-v2",
......
{ {
"title": "工作流节点", "title": "节点",
"description": "FastGPT 工作流节点设置和使用指南", "description": "FastGPT 工作流节点设置和使用指南",
"pages": [ "pages": [
"ai_chat", "ai_chat",
"dataset_search", "dataset_search",
"tool",
"question_classify", "question_classify",
"content_extract", "content_extract",
"user-selection", "user-selection",
...@@ -13,6 +12,7 @@ ...@@ -13,6 +12,7 @@
"reply", "reply",
"document_parsing", "document_parsing",
"http", "http",
"tool",
"tfswitch", "tfswitch",
"variable_update", "variable_update",
"sandbox-v2", "sandbox-v2",
......
...@@ -7,7 +7,7 @@ description: FastGPT Parallel Run node overview and usage (available in 4.14.11+ ...@@ -7,7 +7,7 @@ description: FastGPT Parallel Run node overview and usage (available in 4.14.11+
The **Parallel Run** node takes an array as input and runs the same sub-workflow for **every element at the same time**, then aggregates the results. The **Parallel Run** node takes an array as input and runs the same sub-workflow for **every element at the same time**, then aggregates the results.
![Parallel Run node](../../../../../public/imgs/fastgpt-parallel-run-node.png) ![Parallel Run node](/imgs/fastgpt-parallel-run-node.png)
It fits batch tasks where each item is **independent and does not depend on the others** — for example: It fits batch tasks where each item is **independent and does not depend on the others** — for example:
...@@ -70,7 +70,7 @@ The following environment variables can be tuned on self-hosted deployments: ...@@ -70,7 +70,7 @@ The following environment variables can be tuned on self-hosted deployments:
The minimal flow below translates a few text snippets into English in parallel. The minimal flow below translates a few text snippets into English in parallel.
![Parallel translate example](../../../../../public/imgs/fastgpt-parallel-run-example.png) ![Parallel translate example](/imgs/fastgpt-parallel-run-example.png)
#### Steps #### Steps
...@@ -105,7 +105,7 @@ The minimal flow below translates a few text snippets into English in parallel. ...@@ -105,7 +105,7 @@ The minimal flow below translates a few text snippets into English in parallel.
#### Execution Flow #### Execution Flow
![Parallel run detail](../../../../../public/imgs/fastgpt-parallel-run-detail.png) ![Parallel run detail](/imgs/fastgpt-parallel-run-detail.png)
1. The Code Execution node produces 3 text snippets 1. The Code Execution node produces 3 text snippets
2. The Parallel Run node sends all 3 snippets to the AI chat node at the same time 2. The Parallel Run node sends all 3 snippets to the AI chat node at the same time
......
...@@ -7,7 +7,7 @@ description: FastGPT 并行执行节点介绍和使用(适用于 4.14.11 及 ...@@ -7,7 +7,7 @@ description: FastGPT 并行执行节点介绍和使用(适用于 4.14.11 及
【**并行执行**】节点接收一个数组,对每个元素**同时**执行同一段子工作流,最后把所有结果汇总输出。 【**并行执行**】节点接收一个数组,对每个元素**同时**执行同一段子工作流,最后把所有结果汇总输出。
![并行执行节点](../../../../../public/imgs/fastgpt-parallel-run-node.png) ![并行执行节点](/imgs/fastgpt-parallel-run-node.png)
适合那些**每一项都可以独立完成、互不依赖**的批量任务,比如: 适合那些**每一项都可以独立完成、互不依赖**的批量任务,比如:
...@@ -69,7 +69,7 @@ description: FastGPT 并行执行节点介绍和使用(适用于 4.14.11 及 ...@@ -69,7 +69,7 @@ description: FastGPT 并行执行节点介绍和使用(适用于 4.14.11 及
## 场景示例:并行翻译文本数组 ## 场景示例:并行翻译文本数组
假设我们要把一组文本片段并行翻译成英文,下面是最简流程。 假设我们要把一组文本片段并行翻译成英文,下面是最简流程。
![并行翻译文本数组](../../../../../public/imgs/fastgpt-parallel-run-example.png) ![并行翻译文本数组](/imgs/fastgpt-parallel-run-example.png)
#### 实现步骤 #### 实现步骤
...@@ -104,7 +104,7 @@ description: FastGPT 并行执行节点介绍和使用(适用于 4.14.11 及 ...@@ -104,7 +104,7 @@ description: FastGPT 并行执行节点介绍和使用(适用于 4.14.11 及
#### 执行流程 #### 执行流程
![并行执行详情](../../../../../public/imgs/fastgpt-parallel-run-detail.png) ![并行执行详情](/imgs/fastgpt-parallel-run-detail.png)
1. 【代码运行】节点生成 3 段文本 1. 【代码运行】节点生成 3 段文本
2. 【并行执行】节点接收数组,3 段文本同时送入 AI 翻译 2. 【并行执行】节点接收数组,3 段文本同时送入 AI 翻译
......
...@@ -11,7 +11,7 @@ description: FastGPT Question Classification node overview ...@@ -11,7 +11,7 @@ description: FastGPT Question Classification node overview
- Trigger-based execution - Trigger-based execution
- function_call module - function_call module
![](../../../../../public/imgs/cq1.png) ![](/imgs/cq1.png)
## What It Does ## What It Does
......
...@@ -11,7 +11,7 @@ description: FastGPT 问题分类模块介绍 ...@@ -11,7 +11,7 @@ description: FastGPT 问题分类模块介绍
- 触发执行 - 触发执行
- function_call 模块 - function_call 模块
![](../../../../../public/imgs/cq1.png) ![](/imgs/cq1.png)
## 功能 ## 功能
......
...@@ -15,4 +15,4 @@ The Specified Reply module is typically used for special-case responses. There a ...@@ -15,4 +15,4 @@ The Specified Reply module is typically used for special-case responses. There a
1. Manually enter fixed content. 1. Manually enter fixed content.
2. Use variable references. 2. Use variable references.
![](../../../../../public/imgs/specialreply.png) ![](/imgs/specialreply.png)
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
This diff is collapsed. Click to expand it.
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or sign in to comment