Files
aiagent/Agent使用说明.md
2026-01-20 11:03:55 +08:00

7.9 KiB
Raw Permalink Blame History

Agent使用说明

📋 概述

Agent部署后状态变为"已发布"published或"运行中"running就可以被使用了。本文档介绍如何使用已发布的Agent。

🎯 使用方式

方式1通过前端界面使用推荐

步骤1进入Agent设计器

  1. 在Agent管理页面找到已发布的Agent
  2. 点击 "使用" 按钮只有已发布或运行中的Agent才显示此按钮
  3. 系统会跳转到Agent设计器页面

步骤2在聊天界面使用

  • Agent设计器页面右侧有一个聊天预览面板AgentChatPreview
  • 在输入框中输入您的问题或需求
  • 点击发送按钮或按 Enter 键发送
  • Agent会执行工作流并返回结果

功能特性:

  • 实时对话:支持多轮对话
  • 执行动画:左侧工作流会显示节点执行动画
  • 自动滚动:新消息自动滚动到底部
  • 清空对话:可以随时清空对话历史

方式2通过API调用

API端点

POST /api/v1/executions

请求格式

{
  "agent_id": "agent-id",
  "input_data": {
    "query": "用户输入的问题",
    "USER_INPUT": "用户输入的问题"
  }
}

响应格式

{
  "id": "execution-id",
  "agent_id": "agent-id",
  "status": "pending",
  "input_data": {...},
  "created_at": "2024-01-19T12:00:00"
}

获取执行结果

GET /api/v1/executions/{execution_id}

轮询执行状态

GET /api/v1/executions/{execution_id}/status

方式3使用测试工具

使用我们提供的测试工具 test_workflow_tool.py

# 通过Agent名称和用户输入测试
python3 test_workflow_tool.py -a "Agent名称" -i "用户输入内容"

# 交互式输入
python3 test_workflow_tool.py

📝 使用示例

示例1前端界面使用

  1. 打开Agent管理页面

    • 访问 /agents 路径
    • 找到状态为"已发布"的Agent
  2. 点击"使用"按钮

    • 系统跳转到Agent设计器页面
    • 右侧显示聊天界面
  3. 发送消息

    • 在输入框输入:"生成一个导出androidlog的脚本"
    • 点击发送或按Enter键
  4. 查看结果

    • 左侧工作流显示执行动画
    • 右侧聊天界面显示Agent的回复

示例2API调用

# 1. 登录获取token
curl -X POST http://localhost:8037/api/v1/auth/login \
  -d "username=admin&password=123456"

# 2. 执行Agent
curl -X POST http://localhost:8037/api/v1/executions \
  -H "Authorization: Bearer <your_token>" \
  -H "Content-Type: application/json" \
  -d '{
    "agent_id": "agent-id",
    "input_data": {
      "query": "生成一个导出androidlog的脚本",
      "USER_INPUT": "生成一个导出androidlog的脚本"
    }
  }'

# 3. 获取执行结果使用返回的execution_id
curl -X GET http://localhost:8037/api/v1/executions/{execution_id} \
  -H "Authorization: Bearer <your_token>"

示例3Python脚本调用

import requests

# 登录
response = requests.post(
    "http://localhost:8037/api/v1/auth/login",
    data={"username": "admin", "password": "123456"}
)
token = response.json()["access_token"]
headers = {"Authorization": f"Bearer {token}"}

# 执行Agent
response = requests.post(
    "http://localhost:8037/api/v1/executions",
    headers=headers,
    json={
        "agent_id": "agent-id",
        "input_data": {
            "query": "用户问题",
            "USER_INPUT": "用户问题"
        }
    }
)

execution_id = response.json()["id"]

# 轮询获取结果
import time
while True:
    response = requests.get(
        f"http://localhost:8037/api/v1/executions/{execution_id}",
        headers=headers
    )
    execution = response.json()
    if execution["status"] == "completed":
        print("结果:", execution["output_data"])
        break
    elif execution["status"] == "failed":
        print("执行失败:", execution.get("error_message"))
        break
    time.sleep(2)

🔑 权限说明

已发布Agent的使用权限

  1. 所有者可以随时使用自己的Agent
  2. 其他用户只有已发布published或运行中running状态的Agent才能被其他用户使用
  3. 草稿状态:只有所有者可以测试,其他用户无法使用

API权限检查

从代码中可以看到:

# 只有已发布的Agent可以执行或者所有者可以测试
if agent.status not in ["published", "running"] and agent.user_id != current_user.id:
    raise HTTPException(status_code=403, detail="Agent未发布或无权执行")

🎨 前端界面说明

Agent设计器页面布局

┌─────────────────────────────────────────────────┐
│  Agent编排设计器                    [测试运行] [发布] [返回] │
├──────────────────────┬──────────────────────────┤
│                      │                          │
│   工作流编辑器        │    Agent聊天预览          │
│   (左侧)             │    (右侧)                │
│                      │                          │
│  - 节点可视化        │  - 对话界面              │
│  - 执行动画          │  - 消息历史              │
│  - 节点配置          │  - 输入框                │
│                      │  - 实时响应              │
│                      │                          │
└──────────────────────┴──────────────────────────┘

聊天界面功能

  1. 消息显示

    • 用户消息:右侧显示,蓝色背景
    • Agent回复左侧显示白色背景
    • 时间戳:每条消息显示发送时间
  2. 输入功能

    • 文本输入:支持多行文本
    • Enter发送按Enter键发送消息
    • Shift+Enter换行
    • 发送按钮:点击发送
  3. 其他功能

    • 清空对话:清除所有消息历史
    • 加载状态:显示"正在思考..."
    • 执行动画:左侧工作流实时显示节点执行状态

🔧 常见问题

Q1: 为什么看不到"使用"按钮?

A: "使用"按钮只对状态为"已发布"published或"运行中"running的Agent显示。如果Agent是"草稿"draft状态需要先点击"部署"按钮发布。

Q2: 如何知道Agent是否可用

A: 查看Agent列表中的"状态"列:

  • 已发布published可以使用
  • 运行中running可以使用
  • ⚠️ 草稿draft只有所有者可以测试
  • ⚠️ 已停止stopped需要重新部署

Q3: Agent执行失败怎么办

A:

  1. 检查Agent的工作流配置是否正确
  2. 查看执行记录中的错误信息
  3. 检查LLM节点的API密钥是否配置
  4. 查看后端日志获取详细错误信息

Q4: 如何查看Agent的执行历史

A:

  1. 访问"执行管理"页面(/executions
  2. 筛选Agent相关的执行记录
  3. 点击执行记录查看详细信息

Q5: 可以同时使用多个Agent吗

A: 可以。每个Agent都是独立的可以同时打开多个Agent设计器页面使用不同的Agent。

📚 相关文档

🎯 快速开始

  1. 确保Agent已发布

    • 在Agent列表中找到要使用的Agent
    • 确认状态为"已发布"或"运行中"
  2. 点击"使用"按钮

    • 跳转到Agent设计器页面
  3. 开始对话

    • 在右侧聊天界面输入问题
    • 点击发送或按Enter键
    • 等待Agent执行并返回结果
  4. 查看结果

    • 在聊天界面查看Agent的回复
    • 在左侧工作流查看执行过程

最后更新2026-01-19
适用版本v1.0+