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

📅 2026/7/9 7:18:42
Spring ai - Advisor 是 Spring AI 提供的拦截器 / 切面
完整文件目录结构 + Spring AI 1.0.0-M6 子 Agent 意图审核全套代码一、完整项目文件路径(标准 Maven SpringBoot)plaintextsrc └── main ├── java │ └── com │ └── ai │ ├── advisor │ │ ├──AgentAuditAdvisor.java # 自定义意图审核Advisor│ │ └──AiConfig.java #AI全局配置 │ ├── controller │ │ └──AiTaskController.java # 测试接口 │ └── service │ └──AgentAuditService.java # 审核模型调用服务 └── resources ├── application.yml └── prompts └── agent_audit.st # 审核提示词模板二、各文件完整代码resources/prompts/agent_audit.stst# 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=批量导出隐私数据,风险极高需人工审批java/com/ai/service/AgentAuditService.javajava运行```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;publicMapString,StringauditSubAgentTask(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);}privateMapString,StringparseKvText(String text){