Skip to content

xinyixuu/AgentOps

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

36 Commits
 
 
 
 
 
 
 
 

Repository files navigation

FlowAI Studio

FlowAI Studio 是一个先进的全栈可视化 AI 应用低代码编排平台。它旨在降低 AI 应用开发的门槛,使开发者和业务人员能够通过直观的拖拽式交互,快速构建、测试和部署复杂的 AI 工作流。

项目亮点

1. 深度可视化的工作流编排

  • 交互式编辑器:基于 React Flow 构建,支持节点的自由拖拽、缩放及自动布局。
  • 丰富的节点类型:
    • 开始/结束节点:定义流程边界。
    • LLM 节点:支持自定义 Prompt、模型参数(如温度、Max Tokens)配置。
    • RAG 检索节点:无缝集成知识库,实现检索增强生成。
    • 条件分支节点:支持逻辑判断,实现复杂的决策流。
    • 技能/工具节点:调用外部 API 或内置功能。
  • 实时状态同步:画布操作与全局状态管理(Zustand)高度同步,确保编排过程的数据一致性。

2. 强大的 RAG 知识库管理

  • 全生命周期管理:支持文档上传、切片、向量化存储及检索。
  • 多格式支持:能够处理多种常见的文档格式,为 AI 提供精准的上下文支撑。
  • 调试工具:内置检索测试功能,可在编排前验证知识库的召回效果。

3. 灵活的插件与工具系统

  • MCP 协议集成:遵循 Model Context Protocol,支持快速扩展 AI 的外部感知与操作能力。
  • 内置工具库:提供网络搜索、计算器、代码执行等常用工具。
  • 自定义技能:支持开发者定义自己的工具接口,并将其作为节点在工作流中使用。

4. 企业级后端架构

  • 模块化设计:后端基于 NestJS,采用严格的模块化开发模式,业务逻辑清晰,易于扩展。
  • 稳健的数据层:使用 Prisma ORM 配合 SQLite/PostgreSQL,支持复杂的关联查询与事务处理。
  • 统一的 API 规范:内置全局异常过滤器、响应拦截器及入参校验管道,确保接口调用的安全性与一致性。

5. 生产就绪的应用管理

  • 应用状态控制:支持草稿、已发布、已归档等多种应用状态。
  • 用户认证体系:基于 JWT 的认证与授权,保护用户的私有数据与工作流资产。
  • 响应式 UI:适配不同尺寸的屏幕,提供流畅的桌面端操作体验。

技术栈

前端 (Frontend)

  • 核心框架: React 18 (Vite)
  • 状态管理: Zustand
  • UI 组件库: Ant Design (AntD)
  • 流程图引擎: React Flow
  • 样式处理: Tailwind CSS / CSS Modules
  • 路由管理: React Router v6

后端 (Backend)

  • 核心框架: NestJS
  • 数据库层: Prisma ORM + SQLite
  • 认证安全: JWT (JSON Web Token) + Passport
  • 校验工具: Zod / Class-validator
  • 异步通信: Axios / Server-Sent Events (SSE)

快速开始

1. 环境准备

确保您的开发环境已安装以下软件:

  • Node.js (v18.0.0 或更高版本)
  • npm (v9.0.0 或更高版本)

2. 后端配置与启动

cd flowai-studio-backend
# 安装项目依赖
npm install
# 配置环境变量 (参考 .env.example)
cp .env.example .env
# 同步数据库结构
npx prisma db push
# 写入默认演示数据(默认账号、默认知识库、默认文档)
npx prisma db seed
# 启动后端开发服务器
npm run start:dev

注意:请务必在 .env 文件中填入有效的 QWEN_API_KEY 以启用 AI 节点功能。

3. 前端配置与启动

cd flowai-studio-frontend
# 安装项目依赖
npm install
# 启动前端开发服务器
npm run dev

启动完成后,在浏览器中访问 http://localhost:5173 即可开始您的 AI 编排之旅。

默认账号(演示用)

  • 用户名:admin
  • 密码:admin123

如何验证 RAG(最短路径)

  1. 使用默认账号登录。
  2. 打开「知识库管理」,确认存在「默认知识库」,并且里面有文档「FlowAI Studio 功能介绍.md」。
  3. 打开「调试中心」→「AI 聊天」,在“关联知识库”下拉框中选择「默认知识库」。
  4. 发送问题:FlowAI Studio 有什么核心特性?
  5. 观察返回结果下方的「参考文档」区域,应该能看到命中的文档片段与相似度。

验证 RAG(接口方式,可选)

# 1) 登录获取 token
curl -s -X POST http://localhost:3000/api/users/login \
  -H 'Content-Type: application/json' \
  -d '{"username":"admin","password":"admin123"}'

# 2) 带 token 获取知识库列表(将 YOUR_TOKEN 替换成上一步返回的 token)
curl -s http://localhost:3000/api/rag/knowledge-bases \
  -H "Authorization: Bearer YOUR_TOKEN"

# 3) 检索(将 KB_ID 替换成知识库 id)
curl -s -X POST http://localhost:3000/api/rag/retrieve \
  -H 'Content-Type: application/json' \
  -H "Authorization: Bearer YOUR_TOKEN" \
  -d '{"query":"FlowAI Studio 有什么核心特性","knowledgeBaseId":"KB_ID","topK":3}'

项目结构说明

├── flowai-studio-frontend   # 前端工程
│   ├── src/components       # 通用组件及工作流节点组件
│   ├── src/pages            # 业务页面视图
│   ├── src/store            # 全局状态管理切片
│   ├── src/router           # 路由导航配置
│   └── src/types            # TypeScript 类型定义
└── flowai-studio-backend    # 后端工程
    ├── src/modules          # 业务逻辑模块 (AI, Workflow, RAG, User等)
    ├── src/common           # 公共中间件、装饰器、拦截器
    ├── src/config           # 环境变量与全局配置
    └── prisma               # 数据库 Schema 定义

开源协议

小圆项目,禁止商业用途。 image image image image image image image

About

构建一个面向 AI 应用开发的低代码平台,支持通过可视化编排的方式,将 LLM、知识库(RAG)、工具(Skill) 组合成完整 AI 应用。

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages

  • TypeScript 80.5%
  • CSS 19.3%
  • Other 0.2%