Elasticsearch:如何在 workflow 里调用一个 agent

在 AI Agent Builder 里,我们可以创建一个 workflow 的工具从而达到调用 workflow 的目的。我们是不是也可以在 workflow 里调用 AI Agent Builder 里所创建的 Agent 呢?答案是肯定的。下面我们来用一个简单的例子来进行展示。

创建一个 agent

我们创建的一个 agent 的名字叫做 generate_audio_product_json。它是用来解析我们的输入,并提区我们所需要的信息。它的创建非常融, 我们甚至不需要使用任何的工具。

Custom Instructions

复制代码
  Extract audio product information from this description.
        Return raw JSON only. Do NOT use markdown, backticks, or code blocks.
         Extract audio product information from this description.
        Return raw JSON only. Do NOT use markdown, backticks, or code blocks.

        Fields:
        - category (string, one of: Headphones/Earbuds/Speakers/Microphones/Accessories)
        - features (array of strings from: wireless, noise_cancellation, long_battery, waterproof, voice_assistant, fast_charging, portable, surround_sound)
        - use_case (string, one of: Travel/Office/Home/Fitness/Gaming/Studio)

我使用一个简单的例子来进行展示:

复制代码
Premium wireless Bluetooth headphones with active noise cancellation, 30-hour battery life, and premium leather ear cushions. Perfect for travel and office use.

创建一个 workflow 并调用 agent

我们在 workflow 里创建一个如下的 workflow:

复制代码
version: "1"
name: invoke_audio_product_agent
description: Extract structured product data using an AI agent
enabled: true

triggers:
  - type: manual

inputs:
  - name: product_info
    type: string
    required: true
    description: product descriptions

steps:
  # Step 1: Log input (optional but recommended)
  - name: log_input
    type: console
    with:
      message: "Incoming product info: {{ inputs.product_info }}"

  # Step 2: Invoke your agent
  - name: generate_product_json
    type: ai.agent
    with:
      agent_id: "generate_audio_product_json"
      message: |
        Extract structured product data from the following input.

        Input:
        {{ inputs.product_info }}

        Return ONLY valid JSON.

  # Step 3: Print the result
  - name: print_result
    type: console
    with:
      message: "{{ steps.generate_product_json.output }}"
复制代码
Premium wireless Bluetooth headphones with active noise cancellation, 30-hour battery life, and premium leather ear cushions. Perfect for travel and office use.

格式化输出

我们也可以在 agent 调用的时候加入数据输出的格式:

复制代码
version: "1"
name: invoke_agent_example2
description: Shows a way to invoke an agent and return JSON safely
enabled: true

triggers:
  - type: manual

inputs:
  - name: query
    type: string
    default: What is the cheapest air ticket price from China to US and what are the cities?
    required: true
    description: Query a flight index

steps:
  - name: query_flight
    type: ai.agent
    with:
      agent_id: "find_the_cheapest_ticket_from_cn_us"
      message: |
        Query the flight info for this request:
        {{ inputs.query }}

        Return the result **as JSON only**, using this structure.
        Use real values if known, otherwise use null:

        {
          "price": <number or null>,
          "departure_city": "<string or null>",
          "arrival_city": "<string or null>"
        }

  - name: log_result
    type: console
    with:
      message: "Flight info JSON: {{ steps.query_flight.output }}"

如上所示,我们要求的格式是 JSON 输出:

复制代码
What is the cheapest air ticket price from China to US and what are the cities?

祝大家学习愉快!

相关推荐
ZhengEnCi2 小时前
09c-斯坦福CS336作业二:系统与分布式训练
人工智能
阿里云大数据AI技术2 小时前
用 SQL 解锁多模态数据分析:Hologres 让图片、语音、视频变成结构化洞察
人工智能
阿里云大数据AI技术3 小时前
EMR Serverless StarRocks 湖仓多模态检索:One SQL on One Data,实现全文 + 标量 + 向量三路混合检索
人工智能
冬奇Lab4 小时前
Skill 系列(02):Skill 安全风险——三类攻击面的实战测试
人工智能·安全·开源
冬奇Lab4 小时前
每日一个开源项目(第138篇):OpenMontage - 把 AI 编程助手变成完整的视频制作团队
人工智能·开源·claude
米小虾4 小时前
智谱港股盘中市值突破万亿港元!GLM-5.2 开源引爆国产 AI 价值重估
人工智能·chatglm (智谱)
阿里云大数据AI技术4 小时前
义乌小商品城基于MaxFrame AI Function的亿级AI 数据产线提速之路
人工智能
甲维斯5 小时前
用AI还原《坦克大战》并3D化升级!
前端·人工智能·游戏开发
IT_陈寒6 小时前
SpringBoot自动配置坑了我一晚上,原来问题出在这
前端·人工智能·后端