LLMs之AgentDevP:FastGPT的简介、安装和应用方法、案例应用之详细攻略
目录
FastGPT的简介
2023年8月,FastGPT 是一个基于大型语言模型(LLMs)构建的AI Agent 构建平台。它提供了一整套开箱即用的功能,包括数据处理、模型调用、RAG(检索增强生成)检索以及通过 Flow 可视化通过进行工作流编排的能力。这使得用户能够轻松开发和部署复杂的问答系统及其他应用场景,而无需进行繁琐的设置或配置。
GitHub地址:https://github.com/labring/FastGPT
1、FastGPT 的核心特点
根据其路线图(RoadMap),FastGPT 的核心特点许可分为以下几个方面:
1.1. 应用编排能力
>> 可视化工作流: 支持通过 Flow 可视化界面进行工作流编排,实现复杂的应用逻辑。
>> 多种工作流类型: 包括对话工作流和插件工作流。
>> 基础 RPA 节点: 内置了基础的机器人流程自动化(RPA)节点,用于执行自动化任务。
>> Agent 模式: 支持构建具备自主规划和执行能力的 AI 代理。
>> AI 生成工作流: 计划支持通过 AI 自动生成工作流。
1.2. 强大的知识库能力
>> 多种数据源支持: 支持手动输入、直接分段、QA 拆分等多种导入方式。支持的文件格式包括 txt, md, html, pdf, docx, pptx, csv, xlsx。此外,还支持从 URL 读取内容和批量导入 CSV 文件。
>> 高级检索功能: 采用混合检索(Hybrid Search)和重排(Rerank)技术,以提升检索的准确性。
>> 灵活的知识库管理: 支持多个知识库的复用和混合启用,并且可以记录素材块(chunk)的修改与删除。
>> API 知识库: 允许利用 API 对接外部知识源。
>> 模块化设计: RAG 模块承受热插拔,方便用户根据需求进行定制。
1.3. 完善的应用调试与评估
>> 单点搜索测试: 提供知识库单点搜索测试机制,方便验证检索效果。
>> 实时反馈与修正: 在对话过程中可以反馈引用来源,并支持对引用进行修改和删除。
>> 完整的调用链路日志: 记录了从用户输入到模型输出的完整调用链路,便于问题排查。
>> 高级调试模式: 为高级编排提供了 DeBug 调试模式和应用节点日志。
>> 应用评测: 内置应用评测功能,用于评估 AI 应用的效果。
1.4. 全面的 OpenAPI 接口
>> 对齐 GPT 接口: 供应与 OpenAI GPT completions 接口对齐的 Chat 模式接口,方便迁移和集成。
>> CRUD 管理: 提供针对知识库和对话的创建(Create)、读取(Read)、更新(Update)、删除(Delete)的全套 API。
>> 自动化接口文档: 提供自动化的 OpenAPI 接口文档。
1.5. 便捷的运营与分享能力
>> 免登录分享: 支持创建免登录即可访问的分享窗口,方便应用传播。
>> Iframe 嵌入: 支持通过 Iframe 将应用一键嵌入到现有网站中。
>> 统一对话管理: 运营人员可以统一查阅所有对话记录,并对材料进行标注。
>> 运营日志: 提供应用运营相关的日志,便于分析和监控。
1.6. 其他特性
>> 可视化模型配置: 用户可以通过界面直观地配置所使用的 AI 模型。
>> 语音能力: 支持语音输入和语音输出,并且可能配置为语音输入、语音回答的模式。
>> 模糊输入提示: 为用户提供输入建议,提升交互体验。
>> 模板市场: 供应丰富的应用模板,帮助用户快速启动项目。
2. 商业运用与协议
>> 开源协议: 项目遵循 FastGPT Open Source License。
>> 商用规则: 允许将 FastGPT 作为后台服务直接商用,但禁止以 SaaS 服务的形式提供给他人。任何形式的商用服务都必须保留相关的版权信息,除非获得商业授权。
>> 商业版: 官方提供商业版,有明确的定价策略,可通过邮件 Dennis@sealos.io 联系。
FastGPT的安装和使用方法
1. 快速部署 (应用 Sealos)
官方推荐使用 Sealos 服务进行一键部署。
优点: 无需用户自己采购服务器和准备域名,支持高并发和动态伸缩。其数据库应用基于 Kubeblocks,IO 性能优于简单的 Docker 容器部署。
教程: https://doc.fastgpt.io/docs/introduction/development/sealos/
2. 本地研发与部署
技术栈: 项目主要应用 NextJs, TypeScript, ChakraUI 作为前端框架,后端依赖 MongoDB 和 PostgreSQL(需 PG Vector 插件)或 Milvus 进行向量存储。
步骤:
环境准备: 根据 dev.md 文档准备好相应的制作环境和依赖。
配置文件: 参考《系统配置文件说明》文档,部署数据库、AI 模型等关键信息。
https://doc.fastgpt.io/docs/introduction/development/configuration/
多模型支持: 若需接入多个大模型(如 Azure, 文心一言等),可参考《多模型调整方案》。
启动任务: 按照开发文档中的指引启动本地服务。
版本更新: 项目提供了《版本更新/升级介绍》文档,指导用户如何平滑升级到新版本。
https://doc.fastgpt.io/docs/upgrading
3. API 使用
通过FastGPT 提供了丰富的 OpenAPI 文档,开发者能够根据文档说明,将 FastGPT 的知识库问答、对话等能力集成到自己的应用中。
https://doc.fastgpt.io/docs/introduction/development/openapi/intro
FastGPT的案例应用
1. 相关官方项目
FastGPT-plugin: FastGPT 的插件集合,用于扩展其功能。
Laf: 一个 Serverless 开发平台,许可支援用户在 3 分钟内快捷接入第三方应用。
Sealos: 一键部署包括 FastGPT 在内的各类集群应用。
One API: 一个多模型管理项目,支持统一管理 Azure、文心一言等多种大模型 API。
2. 第三方生态与集成
PPIO 派欧云: 提供高性价比的开源模型 API 和 GPU 容器调用服务。
AI Proxy: 国内的模型聚合服务。
SiliconCloud (硅基流动): 一个开源模型在线体验平台。
企业微信和飞书接入: 项目文档中提供了将 FastGPT 机器人接入企业微信和飞书的详细教程。