当前位置: 首页 > news >正文

Spring ai - Advisor 是 Spring AI 提供的拦截器 / 切面

完整文件目录结构 + Spring AI 1.0.0-M6 子 Agent 意图审核全套代码
一、完整项目文件路径(标准 Maven SpringBoot)
plaintext

src └── main ├── java │ └── com │ └── ai │ ├── advisor │ │ ├──AgentAuditAdvisor.java # 自定义意图审核Advisor│ │ └──AiConfig.java #AI全局配置 │ ├── controller │ │ └──AiTaskController.java # 测试接口 │ └── service │ └──AgentAuditService.java # 审核模型调用服务 └── resources ├── application.yml └── prompts └── agent_audit.st # 审核提示词模板

二、各文件完整代码

  1. resources/prompts/agent_audit.st
    st
# name=sub_agent_intent_audit 你是子Agent任务审核专家,分析子Agent待执行任务,只输出一行逗号分隔key=value,禁止任何多余文字、换行、JSON、思考过程。 待审核任务内容:{task_content}固定输出字段规则:1.intent:简短概括子Agent核心意图2.risk_level:仅允许 low/medium/high3.need_approve:true/false4.sensitive_info:true/false5.audit_suggest:一句话审核理由 标准示例: intent=查询订单信息,risk_level=low,need_approve=false,sensitive_info=false,audit_suggest=仅只读查询,无风险 intent=批量导出用户身份证,risk_level=high,need_approve=true,sensitive_info=true,audit_suggest=批量导出隐私数据,风险极高需人工审批
  1. java/com/ai/service/AgentAuditService.java
    java
    运行
```javapackagecom.ai.service;importlombok.RequiredArgsConstructor;importorg.springframework.ai.chat.client.ChatClient;importorg.springframework.ai.prompt.template.ResourcePromptTemplate;importorg.springframework.stereotype.Service;importjava.util.HashMap;importjava.util.Map;@Service @RequiredArgsConstructorpublicclassAgentAuditService{privatefinal ChatClient chatClient;privatefinal ResourcePromptTemplate promptTemplate;publicMap<String,String>auditSubAgentTask(String taskContent){String systemPrompt=promptTemplate.render("sub_agent_intent_audit",Map.of("task_content",taskContent));String resultText=chatClient.prompt().system(systemPrompt).call().content();returnparseKvText(resultText);}privateMap<String,String>parseKvText(String text){ <
http://www.jsqmd.com/news/1152803/

相关文章:

  • 深度测评专业调研平台哪个好用:头部机构对比指南
  • 一人创业可选用的AI创业辅助工具梳理
  • mt4下载快讯:台风“巴威”趋向我国,交通运输部启动台风四级防御响应
  • 2026大理黄金回收白银回收铂金回收工商备案可查全城上门回收旧金老店联系方式推荐
  • 企业本地AI知识库的技术选型:6个关键能力对比分析
  • 乾元通多链路聚合设备-应急指挥车的“通信心脏”
  • PHEV 50km+纯电续航实测:3大使用场景下的真实成本与补能策略
  • 西安邮电大学考试题库:4步快速掌握历年真题备考秘籍
  • 百考通,AIGC检测,为学术原创筑牢安全防线
  • 备忘录测评|多重提醒 + 云端同步,职场效率神器实测分享
  • 【架构实战】分布式ID生成:从自增ID到雪花算法
  • 2026泳池瓷砖胶怎么选?长期浸水环境粘结力衰减测试
  • # 探针卡笔记|002
  • MyBatis Generator:根据数据库表生成 MyBatis 的实体类、Mapper 接口和 XML 映射文件
  • 如何选择?揭秘5大靠谱心理设备企业,让你不再迷茫
  • 【ROS2】 机械臂架构 vs UE5 游戏开发架构 终极对照表
  • 基于51/STM32单片机的激光测距仪 防撞报警 倒车雷达 嵌入式套件31(设计源文件+万字报告+讲解)(支持资料、图片参考_相关定制)_
  • Cursor Free VIP深度解析:突破AI编程助手限制的完整技术方案
  • Python 4种插值方法对比:Griddata vs Krige vs RBF vs IDW,2000+站点实测效率与效果
  • 2026年邮件营销高依赖行业TOP10?一文看懂热门应用场景
  • Windows防撤回技术深度解析:RevokeMsgPatcher如何让消息永不消失
  • 豆包千问相继收紧智能体功能,本地部署才是Agent的地基
  • 电阻式传感器选型指南:3类核心原理对比与5个工业应用场景解析
  • 2026年AI大模型API加速站全网真实实测:五大主流平台硬核数据全维度对比选型攻略
  • 挑战/响应认证实战:Python 3.11 模拟 3 种攻击场景与防御方案
  • 用MCUXPRESSO IDE 仿真 MIMXRT1186失败的bug
  • 为什么“记住规律“比“记住事实“更重要? 规律可以极大地压缩信息 *提炼规律、建立联系、在需要时快速重建细节
  • YOLOv8疲劳驾驶识别检测系统(项目源码+YOLO数据集+模型权重+UI界面+python+深度学习+环境配置+目标检测)
  • Flink 2.x状态演进:理解解 1.x 与 2.x 状态存储机制
  • 安卓短信备份恢复终极指南:SMS Backup+ 完整使用教程