
Spring AI Alibaba 36|人工介入 · 完整示例
import com.alibaba.cloud.ai.graph.agent.ReactAgent; import com.alibaba.cloud.ai.graph.agent.hook.hip.HumanInTheLoopHook;

import com.alibaba.cloud.ai.graph.agent.ReactAgent; import com.alibaba.cloud.ai.graph.agent.hook.hip.HumanInTheLoopHook;

人工介入(HITL)Hook 允许你为 Agent 工具调用添加人工监督。当模型提出需要审查的操作时——例如写入文件或执行 SQL——Hook 可以暂停执行并等待人工决策。 它通过检查每个工具调用并与可配置的策略进行比对来实现。如果需要人工

使用 Hook 在 Agent 生命周期的不同阶段执行操作。 Hook 位置 Spring AI Alibaba 支持以下 Hook 位置: BEFORE_AGENT - Agent 开始之前AFTER_AGENT - Agent 完成之后

使用结构化输出控制模型响应格式。 // 在Agent级别设置输出格式 ReactAgent agent = ReactAgent.builder() .name("structured_agent") .model(chatModel) .

构建 Agent 的难点在于使其足够可靠、效果足够好。虽然我们可以很容易写一个 Agent 示例,但要做一个能在生产环境中稳定使用、能解决实际问题的 Agent 并不容易。 为什么 Agent 会失败? 当 Agent 失败时,通常是因为 Agent 内部的 LLM 调用采取了错误的操作或者没有按我们预期的执行。LLM 失败的原因有两个: 底层 LLM 能力不足没有向 LLM 传递"正确"的上下文 大多数情况下 —— 实际上是第二个原因…

模型可能不总是返回格式完美的 JSON。以下是处理潜在问题的策略: Try-Catch 模式 ReactAgent agent = ReactAgent.builder() .name("data_extractor") .model(ch

结构化输出允许 Agent 以特定的、可预测的格式返回数据。相比于解析自然语言响应,您可以直接获得 JSON 对象或 Java POJO 形式的结构化数据,应用程序可以直接使用。 Spring AI Alibaba 的 ReactAgent

Skills 是可复用的指令与上下文包,智能体在相关任务时会自动发现并使用。通过 SkillRegistry 管理技能、SkillsAgentHook 注册 read_skill 工具并注入技能列表到系统提示,模型在需要时调用 read_s

示例 1:内容审核 Interceptor public class ContentModerationInterceptor extends ModelInterceptor { private static final List<

RunnableConfig 提供了一个 context() 方法,允许你在同一个执行流程中的多个 Hook 调用、多轮模型或工具调用之间共享数据。这对于实现计数器、累积统计信息或跨多次调用维护状态非常有用。 适用场景: 跟踪模型或工具调用
最新评论
干货满满!
江苏省 南京市 · IP 49.91.145.*
我要看文章
重庆市 · IP 116.168.9.*
这个内容实在是太精彩啦
重庆市 · IP 123.147.232.*