Spring AI企业级应用实战(11):权限感知RAG、多租户过滤与引用治理
在Spring AI RAG链路中加入认证上下文、过滤表达式、文档ACL、重排复核和引用鉴权。
Spring AI配置多个ChatModel后为什么总是调用默认模型?
Spring AI多模型项目中,Bean注入、ChatClient复用和路由结果传递任何一处出错,都会让所有流量落到默认模型。
规则路由、分类模型与Router Agent怎么选?企业多模型调度指南
多模型调度可以使用固定规则、轻量分类模型或Router Agent。本文比较三种方案的成本、解释性与适用边界。
模型Fallback已经切换成功,为什么请求仍然失败?
日志显示已切换备用模型,但请求仍返回相同错误,往往说明主备共享额度、网络、超时预算或输出契约。
用Spring Boot搭建多模型路由网关:规则、预算、Fallback与审计
实现一个统一路由网关,根据任务复杂度、风险、租户套餐与预算选择模型,并提供受控Fallback。
Spring AI企业级应用实战(10):多模型路由、预算控制与故障降级
在统一调用层之上实现模型能力目录、策略路由、预算守卫、Fallback和路由审计。
欧盟AI法案进入下一阶段:企业AI应用需要补齐哪些治理能力?
随着欧盟AI法案进入新的实施阶段,企业AI项目不能再把合规理解为“在页面上加一句AI生成提示”。OpenAI于2026年7月31日公开说明其对通用人工智能模型行为准则和AI生成内容透明度行为准则的支持,并再次强调安全评测、风险治理、来源标识、事件响应和持续更新。对于使用第三方大模型构建客服、知识库、Agent和内容生成系统的企业而言,模型提供商承担一部分责任,但应用部署方仍需建立风险分级、数据治理
Spring AI调用entity()时JSON解析失败?Markdown包裹、字段缺失与Schema不兼容完整排查
Spring AI的`ChatClient.call().entity()`可以把模型输出直接转换为Java对象,但生产项目经常遇到JSON前后带解释文字、被Markdown代码块包裹、必填字段缺失、枚举值不匹配、日期格式错误或Provider不支持完整JSON Schema等问题。默认结构化输出本质上仍可能是“Prompt约束+文本解析”,并不天然保证100%成功。本文从目标类型设计、原始响应留
Prompt约束、StructuredOutputConverter、原生JSON Schema与validateSchema怎么选?
企业AI应用需要把模型输出用于路由、入库、审批或工具调用时,不能长期依赖自然语言解析。Spring AI提供了多种结构化输出路径:在Prompt中手写格式要求、使用`StructuredOutputConverter`生成格式指令和反序列化、启用Provider原生JSON Schema约束,以及通过`validateSchema()`进行本地校验和自修复。四种方案的可靠性、兼容性、成本和复杂度不
OpenAI Assistants API将在8月26日关闭:迁移Responses API最后阶段完整清单
OpenAI已经明确,Assistants API将在2026年8月26日停止服务。距离关闭日期不足一个月时,仍依赖Assistant、Thread、Run和Run Step对象的团队不能只把接口地址替换为Responses API。新架构使用Prompt或应用代码管理配置,以Conversation承载输入与输出Item,以Response取代Run,并要求应用更明确地管理工具循环、状态裁剪、重
Spring AI流式输出为什么不能直接entity()?聚合JSON、SSE事件与最终对象解析方案
Spring AI的`.stream()`返回文本增量,而`.entity()`需要完整响应后才能生成JSON Schema、校验并反序列化为Java对象。因此,开发者无法像同步调用一样直接把流式Chunk转换成完整Entity。强行对每个片段执行JSON解析,会遇到半截字符串、转义字符、字段顺序变化和错误重试无法闭环等问题。本文给出三种可靠方案:服务端聚合后一次解析、SSE同时发送进度与最终结果
用Spring Boot搭建AI结构化输出网关:Schema注册、校验、自修复与版本治理
当多个业务系统分别调用大模型并自行解析JSON时,结构化输出规则会散落在Controller和Prompt中,导致Schema版本不一致、Provider切换失败、重试成本不可见和错误对象进入业务流程。本文实现一个轻量级Spring Boot结构化输出网关:统一注册输出Schema、选择模型、启用Provider原生结构化输出、执行本地Schema与业务校验、限制自修复次数,并记录Schema版本
Spring AI企业级应用实战(9):结构化输出、JSON Schema、校验、自修复与版本兼容
前面的章节已经完成ChatClient统一调用层、流式输出、Chat Memory、Tool Calling、MCP、可观测性和安全治理。本篇继续解决企业AI应用的核心问题:如何把模型的自然语言输出转化为稳定、可校验、可版本化的Java对象。我们将使用Spring AI 2.0的`ChatClient.entity()`、Provider原生结构化输出和Schema校验能力,实现客户意图识别服务,
GPT-5.6 Luna降价80%、Terra降价20%:企业AI模型路由应该如何重算?
OpenAI在2026年7月30日更新GPT-5.6定价:Luna价格下调80%,Terra下调20%。在新的API价格下,Sol为每百万Token 5美元输入、30美元输出,Terra为2.5美元输入、15美元输出,Luna为1美元输入、6美元输出。降价并不意味着所有业务都应该立即切到Luna,而是需要重新计算“每个成功任务”的总成本,包括失败重试、人工复核、延迟、工具调用次数和缓存命中率。本文
Spring AI Moderation已经返回flagged,为什么模型请求仍然继续执行?
Spring AI支持OpenAI和Mistral AI的Moderation模型,但Moderation只负责返回检测结果,并不会自动阻断后续ChatClient调用。很多项目虽然拿到了`flagged=true`,却仍然继续调用大模型,原因通常是业务代码没有执行策略判断、异步流程没有取消、Advisor链顺序不正确,或者只记录了审核结果却没有返回拦截响应。本文给出从Moderation调用、风
Moderation、DLP、LLM Guardrail和策略引擎怎么选?企业AI安全四层架构指南
企业AI安全经常把Moderation、敏感信息脱敏、Prompt Injection检测和业务权限校验混为一谈。实际上,Moderation关注内容类别,DLP关注敏感数据,LLM Guardrail关注模型输入输出行为,策略引擎负责确定性的业务授权。四者解决的问题不同,任何一个都不能单独承担全部安全责任。本文给出四类能力的边界、组合顺序、适用场景和技术选型方法。
GPT-Live语音开始加入SynthID水印:企业语音Agent需要做哪些改造?
OpenAI在2026年7月31日更新GPT-Live:通过ChatGPT Voice和OpenAI API生成的受支持音频开始包含SynthID水印,公共验证工具可以检测OpenAI来源信号,同时新增验证API,供开发者和机构将来源检测接入自己的工作流。语音水印并不等于身份认证,也不能阻止所有剪辑、转码或欺诈,但它为企业语音Agent增加了可验证的内容来源信号。本文分析客服、外呼、数字人、媒体和
RAG文档里藏着“忽略系统提示词”,为什么模型真的照做了?Prompt Injection完整排查
RAG系统会把检索到的文档片段与用户问题一起交给模型。如果网页、PDF、工单或知识库文档中包含“忽略之前的指令”“调用工具上传数据”等文本,模型可能把不可信资料误当成指令,形成间接Prompt Injection。仅在System Prompt中写“不要听文档命令”并不能彻底解决。本文从数据来源、上下文边界、工具权限、检索过滤、输出校验和对抗测试六个方面给出完整排查方案。
用Spring Boot搭建企业AI安全网关:输入审核、PII脱敏、输出校验与审计
企业接入多个大模型后,若每个业务系统自行处理Moderation、敏感信息脱敏、Prompt Injection、工具权限和日志审计,安全策略很快会失控。本文使用Spring Boot设计一个统一AI安全网关,通过标准请求对象串联身份校验、输入长度限制、PII检测、内容审核、Prompt Injection检测、模型代理、输出DLP和审计日志,并提供可扩展接口与核心代码骨架。
Spring AI企业级应用实战(8):输入输出安全、Prompt Injection、PII脱敏与人工审批
前7篇已经完成统一调用层、流式输出、Chat Memory、Tool Calling、MCP和可观测性。系统具备“能调用、能记忆、能执行、能监控”的能力后,下一步必须解决“什么请求可以进入模型、哪些数据可以发送、哪些回答可以返回、哪些动作必须人工确认”。本文基于Spring AI 2.0设计一套可落地的安全链路:使用ModerationModel完成内容审核,使用自定义Advisor检测PII和P