智能体
概述
智能体模块用于创建和管理 AI 智能体。智能体分为两种类型:
| 类型 | type | 说明 |
|---|---|---|
| 自主规划 | 1 | 由大模型自主规划,结合设定描述、模型、知识库与工具完成任务 |
| 对话流 | 2 | 绑定预设的对话流,按编排好的流程与用户进行多轮交互 |
两种类型共用同一份智能体列表与调试入口,但配置项不同:自主规划需要选择模型并可绑定工作流、知识库、插件工具;对话流则必须绑定一条对话流,不单独配置模型。
两种类型配置项对比
| 配置项 | 自主规划 | 对话流 |
|---|---|---|
| 基础设置(名称 / 功能介绍 / 图标) | ✅ | ✅ |
| 设定描述(系统提示词) | ✅ | ✅ |
| 设置模型(必填)+ 生成参数 | ✅ | ❌ |
| 绑定工作流 / 知识库 / 插件工具 | ✅ | ❌ |
| 绑定对话流(必填,限一条) | ❌ | ✅ |
| 携带上下文轮数 | 生成参数内 | 独立「对话设置」 |
| 开场白 / 问题建议 | ✅ | ✅ |
使用说明
智能体列表

进入 智能体 菜单,页面以卡片形式展示所有智能体:
- 卡片展示头像、名称、类型标签(自主规划 / 对话流)、启用状态、功能介绍与创建时间
- 顶部支持按名称、类型、状态筛选
- 卡片上可直接切换启用 / 禁用状态
- 卡片右上角菜单提供「调试」「编辑」「删除」操作
- 点击卡片进入调试对话
创建智能体
点击右上角「创建智能体」,在弹窗中选择要创建的类型:
- 自主规划 — 进入自主规划编辑页
- 对话流 — 进入对话流编辑页
选择后进入对应的编辑页面,两种页面均为「左侧主编辑区 + 右侧配置栏」布局。
配置自主规划智能体
左侧主编辑区:
- 基础设置:智能体名称(必填)、功能介绍(展示在列表卡片上,最多 200 字)、智能体图标
- 设定描述:即系统提示词(System Prompt,必填),定义智能体的角色、能力与回复风格
右侧配置栏:
- 设置模型
- 选择模型(必填,来自模型管理中的 LLM 模型)
- 生成参数(可展开):Temperature(0–2)、携带上下文轮数、最大回复长度、最大推理回答长度
- 绑定设置(均可多选、按需展开)
- 绑定工作流
- 绑定知识库
- 绑定插件工具
- 对话体验
- 开场白:开场白文案、开场白预置问题(可添加多条)
- 问题建议:启用用户问题建议后,可选择是否使用自定义建议提示词
配置对话流智能体
左侧主编辑区: 与自主规划一致(基础设置 + 设定描述)。
右侧配置栏:
- 绑定设置:绑定对话流(必填,仅可绑定一条对话流)
- 对话设置:携带上下文轮数
- 对话体验:开场白、问题建议(与自主规划一致)
对话流智能体不配置模型,也不绑定工作流 / 知识库 / 插件工具,其对话逻辑完全由所绑定的对话流决定。
调试对话
点击智能体卡片或卡片菜单中的「调试」,进入调试对话界面直接输入消息测试。
对话流类型的智能体必须先绑定对话流才能调试,否则会提示「请先绑定对话流后再调试」。

可以发送文件和返回文件,交互效果和数据传输已实现,文件处理暂未实现。

数据库实体
AiAgent(智能体)
| 字段 | 类型 | 说明 |
|---|---|---|
| id | Long | 编号 |
| name | String | 智能体名称 |
| type | Integer | 类型:1-自主规划,2-对话流 |
| description | String | 功能介绍 |
| icon | String | 智能体图标 |
| systemPrompt | String | 设定描述 |
| modelId | Long | 使用模型ID |
| workflowIds | List<Long> | 绑定工作流ID列表 |
| chatFlowId | Long | 对话流ID |
| toolIds | List<Long> | 绑定工具ID列表 |
| openingStatement | String | 开场白文案 |
| openingQuestions | List<String> | 开场白预置问题 |
| knowledgeBaseIds | List<Long> | 绑定知识库ID列表 |
| temperature | BigDecimal | 生成随机性 |
| contextRounds | Integer | 携带上下文轮数 |
| maxReplyLength | Integer | 最大回复长度 |
| maxInferenceLength | Integer | 最大推理回答长度 |
| retrievalTopK | Integer | 知识库召回条数 |
| enableQuestionSuggestion | Integer | 是否启用用户问题建议:0-否,1-是 |
| customSuggestionPrompt | Integer | 是否自定义建议提示词:0-否,1-是 |
| suggestionPrompt | String | 自定义建议提示词 |
| createBy | Long | 创建人ID |
| createTime | LocalDateTime | 记录创建时间 |
| updateBy | Long | 最后更新人ID |
| updateTime | LocalDateTime | 记录最后更新时间 |
| deleteFlag | Boolean | 删除标记:0-正常,1-已删除 |
| orgId | Integer | 所属组织ID |
| status | Integer | 启用状态:0-禁用,1-启用 |
AiConversation(对话会话)
| 字段 | 类型 | 说明 |
|---|---|---|
| id | Long | 会话id |
| title | String | 会话标题 |
| agentId | Long | 智能体id |
| modelId | Long | 使用模型ID |
| currentRounds | Integer | 当前轮次 |
| lastChatTime | LocalDateTime | 最后聊天时间 |
| createBy | Long | 创建人ID |
| createTime | LocalDateTime | 记录创建时间 |
| updateBy | Long | 最后更新人ID |
| updateTime | LocalDateTime | 记录最后更新时间 |
| deleteFlag | Boolean | 删除标记:0-正常,1-已删除 |
| orgId | Integer | 所属组织ID |
AiMessage(对话消息)
| 字段 | 类型 | 说明 |
|---|---|---|
| id | Long | 消息id |
| conversationId | Long | 会话id |
| role | String | 角色:user/assistant |
| content | String | 消息内容 |
| fileList | List<FileDto> | 文件列表 |
| structRes | String | 结构返回值 |
| agentId | Long | 智能体ID |
| inputTokens | Integer | 输入消耗token数 |
| outputTokens | Integer | 输出消耗token数 |
| totalTokens | Integer | 总消耗token数 |
| createBy | Long | 创建人ID |
| createTime | LocalDateTime | 记录创建时间 |
| updateBy | Long | 最后更新人ID |
| updateTime | LocalDateTime | 记录最后更新时间 |
| deleteFlag | Boolean | 删除标记:0-正常,1-已删除 |
| orgId | Integer | 所属组织ID |