跳到主要内容

Agent 管理

AIME Chat 基于 Mastra 框架构建了强大的 AI Agent 系统,支持自定义和管理多个 Agent。

什么是 Agent?

Agent 是具有特定能力和行为的 AI 助手。每个 Agent 可以有:

  • 独特的系统指令(Instructions)
  • 预配置的工具集(Tools)
  • 特定的使用场景
  • 自定义的记忆管理
  • 独立的模型配置

Agent 架构

AIME Chat 的 Agent 系统基于以下核心概念:

┌──────────────────────────────────────┐
│ AIME Chat │
├──────────────────────────────────────┤
│ Mastra Framework │
├──────────────────────────────────────┤
│ ┌──────────┐ ┌──────────┐ │
│ │ Default │ │ Code │ ... │
│ │ Agent │ │ Agent │ │
│ └──────────┘ └──────────┘ │
│ ↓ ↓ │
│ Instructions Instructions │
│ Tools Tools │
│ Memory Memory │
├──────────────────────────────────────┤
│ Tool System │
│ ┌─────┐ ┌─────┐ ┌─────┐ ┌─────┐ │
│ │Read │ │Write│ │Bash │ │ ... │ │
│ └─────┘ └─────┘ └─────┘ └─────┘ │
├──────────────────────────────────────┤
│ AI Providers │
│ OpenAI | DeepSeek | Ollama | ... │
└──────────────────────────────────────┘

内置 Agent

默认 Agent

通用对话助手,适合日常使用:

  • ✅ 多轮对话
  • ✅ 知识问答
  • ✅ 任务协助
  • ✅ 基础工具调用

默认工具:Web Search、Vision、Read

代码 Agent

专注于代码开发的助手:

  • ✅ 代码编写和审查
  • ✅ 调试和问题排查
  • ✅ 文件操作
  • ✅ 命令执行
  • ✅ 代码运行

默认工具:Read、Write、Edit、Grep、Glob、Bash、Python、Node.js

切换 Agent

在聊天页面:

  1. 点击顶部的 Agent 选择器
  2. 从列表中选择 Agent
  3. 新的对话将使用选中的 Agent
提示

不同 Agent 有不同的工具权限,选择合适的 Agent 可以获得更好的体验。

自定义 Agent

创建新 Agent

  1. 进入 Agent 管理 页面
  2. 点击 创建 Agent
  3. 填写 Agent 信息:
    • 名称:Agent 的显示名称
    • 描述:Agent 的功能描述
    • 指令:系统提示词,定义 Agent 的行为
    • 工具:选择 Agent 可用的工具
    • 模型:选择默认使用的模型(可选)

Agent 配置选项

配置项说明示例
名称Agent 的显示名称"代码助手"
描述简短的功能描述"专注于代码开发和调试"
指令系统提示词"你是一个专业的程序员..."
工具可用工具列表["Read", "Write", "Bash"]
模型默认模型"gpt-4o"
欢迎语首次对话时的问候"你好!我是你的代码助手"
建议常用问题提示["帮我写一个函数", "调试这段代码"]

编写系统指令

系统指令是 Agent 的核心,决定了它的行为方式:

# 角色定义
你是一个专业的技术文档编写助手。

## 能力
- 撰写清晰的技术文档
- 解释复杂的技术概念
- 提供代码示例

## 行为准则
- 使用简洁明了的语言
- 提供实用的示例
- 保持内容的准确性

## 输出格式
使用 Markdown 格式,包含适当的代码块和表格。

指令编写技巧

  1. 明确角色:清楚定义 Agent 是什么
  2. 列出能力:说明 Agent 能做什么
  3. 设定边界:指明不应该做什么
  4. 提供示例:给出期望的输出格式
  5. 使用结构化格式:使用标题、列表等组织内容
示例:优秀的 Agent 指令
你是一个专业的 Python 开发助手。

## 你的专长
- Python 编程和最佳实践
- Django/Flask Web 开发
- 数据分析和可视化
- 代码优化和重构

## 工作方式
1. 先理解用户需求
2. 提供清晰的解决方案
3. 给出完整的代码示例
4. 解释关键概念

## 注意事项
- 代码要符合 PEP 8 规范
- 添加必要的注释
- 考虑错误处理

工具配置

为 Agent 选择工具

不同 Agent 可能需要不同的工具组合:

Agent 类型推荐工具说明
通用助手Web Search、Vision、Read基础信息获取
代码助手Read、Write、Edit、Bash、Python、Grep完整开发工具链
数据分析Python、LibSQL、Write数据处理和存储
研究助手Web Search、Web Fetch、Read信息收集和分析
文档助手Read、Write、Edit、Grep文档编写和维护

工具权限管理

  • 内置 Agent:工具由系统预配置,不可修改
  • 自定义 Agent:可以自由选择和组合工具
  • 动态调整:可以随时修改 Agent 的工具配置
  • 工具提示:启用工具时,Agent 会自动学习如何使用

Agent 记忆系统

AIME Chat 基于 Mastra 框架提供强大的记忆管理能力:

记忆类型

记忆类型说明使用场景
会话记忆当前对话的上下文多轮对话、上下文理解
语义记忆基于向量的长期记忆跨会话的知识积累
工作记忆任务执行中的临时状态复杂任务的状态跟踪

记忆配置

在 Agent 设置中可以配置:

  • 记忆容量:保留多少历史消息
  • 记忆类型:启用哪些记忆模式
  • 记忆策略:如何管理和清理记忆
记忆最佳实践
  • 对于需要长期记忆的 Agent,启用语义记忆
  • 对于临时任务,使用工作记忆
  • 定期清理不需要的记忆以节省资源

Agent 网络

Agent 网络允许多个 Agent 协作完成复杂任务:

工作流程

用户请求

[规划 Agent] - 分析需求,制定计划

[执行 Agent] - 执行具体任务

[审查 Agent] - 检查结果质量

返回结果

创建 Agent 网络

  1. 创建多个专门的 Agent
  2. 在 Agent 配置中设置子 Agent
  3. 定义 Agent 之间的协作流程
示例:代码审查流程
  1. 开发 Agent:编写代码
  2. 审查 Agent:检查代码质量
  3. 测试 Agent:运行测试
  4. 文档 Agent:生成文档

高级功能

结构化输出

Agent 可以返回结构化的数据:

{
"status": "success",
"data": {
"result": "...",
"confidence": 0.95
}
}

Agent 审批

对于敏感操作,可以要求用户审批:

  • 文件删除
  • 系统命令执行
  • 敏感数据访问

Agent 监控

实时监控 Agent 的:

  • 工具调用次数
  • 响应时间
  • 错误率
  • 用户满意度

最佳实践

指令设计

推荐做法

  • 保持指令简洁清晰
  • 使用结构化格式(标题、列表)
  • 包含具体示例
  • 明确边界和限制
  • 使用积极的语言

避免

  • 过于复杂的指令
  • 矛盾的要求
  • 模糊的描述
  • 过多的限制

工具选择

推荐做法

  • 只启用必要的工具
  • 根据场景选择工具
  • 定期审查工具使用情况
  • 测试工具组合的效果

避免

  • 给 Agent 过多权限
  • 启用不相关的工具
  • 忽视工具安全风险

性能优化

  • 使用合适的模型(简单任务用小模型)
  • 限制记忆容量
  • 定期清理无用数据
  • 监控 Agent 性能指标

常见问题

Agent 不按预期工作

可能原因

  1. 系统指令不够清晰
  2. 工具配置不正确
  3. 模型能力不足

解决方案

  1. 优化系统指令,使用更明确的描述
  2. 检查工具是否正确启用
  3. 尝试使用更强大的模型
  4. 查看工具调用日志

工具调用失败

可能原因

  1. 工具未启用
  2. 工具依赖缺失
  3. 权限不足

解决方案

  1. 确认工具已启用
  2. 检查工具依赖(如 Python 环境)
  3. 查看错误日志获取详细信息

Agent 响应慢

可能原因

  1. 模型响应慢
  2. 工具执行时间长
  3. 记忆数据过多

解决方案

  1. 切换到更快的模型
  2. 优化工具使用策略
  3. 清理不必要的记忆数据

如何导出/导入 Agent

目前支持通过 Agent 管理页面进行:

导出 Agent

  1. 进入 Agent 管理页面
  2. 选择要导出的 Agent
  3. 点击导出按钮
  4. 保存为 JSON 文件

导入 Agent

  1. 点击导入按钮
  2. 选择 JSON 文件
  3. 确认导入配置
导出格式

导出的 JSON 包含 Agent 的所有配置:

  • 基本信息(名称、描述)
  • 系统指令
  • 工具配置
  • 模型设置
  • 记忆配置

技术细节

Agent 数据结构

interface Agent {
id: string;
name: string;
description?: string;
instructions?: string;
tools?: string[];
subAgents?: string[];
tags?: string[];
type: AgentType;
isHidden: boolean;
defaultModelId?: string;
greeting?: string;
suggestions?: string[];
}

Agent 类型

  • DEFAULT:默认通用 Agent
  • CODE:代码开发 Agent
  • CUSTOM:用户自定义 Agent

与 Mastra 框架集成

AIME Chat 的 Agent 系统完全基于 Mastra 框架构建,支持:

  • Mastra Agent API
  • Mastra Tool System
  • Mastra Memory
  • Mastra Workflows

详细技术文档请参考 Mastra 官方文档