# 1. Java 端的 Agent 框架对比,Spring AI Alibaba、LangChain4j、Agents-Flex 的功能取舍与生态成熟度 A 所有框架功能完全一致,可任意替换 B LangChain4j 不支持工具调用 C Spring AI 胜在 Spring 整合,LangChain4j 胜在功能广度与社区,Agents-Flex 轻量易上手 ✓ 正确答案 D Agents-Flex 是功能最全的框架
# 2. Spring AI 与 LangChain4j 的选型差异,与 Spring 生态的整合度、模型/工具/记忆抽象的成熟度如何对比? A Spring AI 与 Spring 整合度高,LangChain4j 功能模块更丰富、模型覆盖广 ✓ 正确答案 B 两者与 Spring 生态整合度完全相同 C LangChain4j 是 Spring 官方项目 D Spring AI 不支持任何模型调用
# 3. Java 服务端实现 Function Calling/工具调用的工程要点,JSON Schema 生成、参数校验、工具执行结果回填与错误恢复如何? A 模型生成的参数无需校验,可直接执行 B 结果回填是可选步骤,不影响模型 C 工具执行失败要直接终止对话,不能重试 D JSON Schema 描述工具,需参数校验、结果回填与错误恢复保证多轮稳定 ✓ 正确答案
# 4. Agent Tool Calling 的安全治理,工具白名单、敏感操作审批、参数注入与超时熔断 A 通过白名单、敏感操作审批、参数校验与超时熔断形成纵深防御 ✓ 正确答案 B 模型可用所有工具,无需白名单 C 高危操作无需审批,模型可直接执行 D 工具调用无需超时控制
# 5. Java 21+ 虚拟线程 + StructuredTaskScope 在 Agent 工具调用链中的工程价值,替代 CompletableFuture 的复杂性 A 虚拟线程 + StructuredTaskScope 以同步顺序写法实现并行工具调用,异常与取消更易管理 ✓ 正确答案 B 必须使用 CompletableFuture 才能实现并行工具调用 C 虚拟线程无法并行执行多个工具 D StructuredTaskScope 与 CompletableFuture 完全等价
# 6. Java Agent 沙箱,JDK 25/26 的 Foreign Function & Memory API 在 MCP Server、Tool Runtime 中的应用 A FFM 只能做纯 Java 运算,无法调用原生 B FFM 会显著增加内存泄漏风险 C FFM 与 JNI 完全等价,无任何优势 D FFM 安全地调用原生函数与访问原生内存,可替代 Unsafe/JNI,便于工具扩展原生能力 ✓ 正确答案
# 7. Java Agent 应用的状态管理,会话记忆、多轮工具调用的幂等与超时重试如何设计? A 为工具调用生成唯一 ID 实现幂等,超时重试需带退避与最大次数 ✓ 正确答案 B 工具调用无需幂等,重复执行无影响 C 重试应无限进行直到成功 D 会话记忆无需持久化,重启即丢失也无妨
# 8. Java 侧接入 MCP,SDK 选型、工具注册与并发模型(虚拟线程 vs 阻塞 IO)如何取舍? A MCP 只能使用阻塞式 IO 且线程数不限 B 虚拟线程适合高并发工具调用,以阻塞式编程简化实现,而平台线程池有线程数限制 ✓ 正确答案 C 虚拟线程与阻塞 IO 完全等价,无取舍 D MCP 无法在 Java 中实现
# 9. Spring AI 的 ChatClient 与 Tool Calling,Java 侧 Agent 工具注册与调用链如何? A @Tool 注解的方法不会被模型调用 B 工具调用只能手动执行,无法自动回填 C ChatClient 不支持工具调用 D 通过 @Tool 注册工具,ChatClient 自动执行模型请求的工具并把结果回填形成调用链 ✓ 正确答案
# 10. Java Agent 的编排模式,ReAct/Plan-and-Execute 在 Java 侧如何落地? A ReAct 是"先规划再执行",Plan-and-Execute 是"思考-行动-观察"循环 B 两种模式完全等价,无区别 C ReAct 是"思考-行动-观察"循环,Plan-and-Execute 是先规划再逐步执行 ✓ 正确答案 D 两种模式都无法在 Java 中实现
# 11. Java 侧 RAG 管线,文档切分、Embedding、向量检索与重排序的工程实现 A 文档无需切分,直接整体向量化即可 B 向量检索完全不需要向量数据库 C 重排序是可选且无用的步骤 D 管线包括文档切分、Embedding、向量检索与重排序,各环节共同决定回答质量 ✓ 正确答案
# 12. MCP 协议的核心(initialize、tools/call、resources)与 Java SDK 实现要点 A MCP 只需调用工具,无需初始化握手 B MCP 只能单线程顺序调用 C MCP 不支持资源(resources)概念 D MCP 基于 JSON-RPC,核心含 initialize 协商与 tools/list、tools/call 等 ✓ 正确答案
# 13. 私有化部署国产大模型的 Java 接入,OpenAI 兼容协议适配、流式 SSE 与鉴权的工程细节如何? A 国产模型不兼容 OpenAI 协议,需从零开发 B 鉴权密钥可以直接硬编码在源码中 C 流式 SSE 无法在 Java 中实现 D 通过 OpenAI 兼容协议适配,流式用 SSE 分块解析,鉴权用 Bearer 密钥并妥善保存 ✓ 正确答案
# 14. LangChain4j 与 Spring AI 的选型,记忆、RAG 与多模型切换的差异如何? A 两者功能完全一致,无差异 B Spring AI 不支持多模型切换 C LangChain4j 功能深度(RAG/记忆)更全,Spring AI 与 Spring 整合与配置更顺滑 ✓ 正确答案 D LangChain4j 不提供任何记忆能力
# 15. Agent 记忆的 Java 实现,会话记忆、向量库与结构化存储如何取舍? A 只需一种记忆,无需分层 B 向量记忆只能存短期数据 C 会话记忆管上下文、向量记忆做语义检索、结构化存储记业务状态,常组合使用 ✓ 正确答案 D 结构化存储无法用于 Agent 记忆
# 16. Java 侧的 LLM 调用框架,Spring AI/LangChain4j 的流式与工具调用如何? A Spring AI 与 LangChain4j 都支持流式(SSE)与工具调用,但 API 风格与集成度不同 ✓ 正确答案 B 只有 Spring AI 支持工具调用 C 流式输出无法逐 token 推送 D 两者都不支持工具调用
# 17. Java Agent 的安全边界,工具调用的权限校验与沙箱隔离如何? A 通过权限校验控制授权、沙箱隔离控制执行环境,对高风险工具做进程/容器级隔离 ✓ 正确答案 B 工具调用无需权限校验,因为模型是可信的 C 沙箱只影响性能,不影响安全 D 所有工具调用必须完全放开,否则无法工作
# 18. Agent 的评测与可观测,会话级 trace、工具调用成功率与成本归因如何? A 只要记录一次模型回复即可,无需会话级 trace B 会话级 trace 贯穿模型与工具调用,配合成功率指标与成本归因支撑生产运营 ✓ 正确答案 C 工具调用成功率无法统计 D 成本归因与 token 消耗无关
# 19. Agent 的多模型路由与成本控制(token 预算、降级模型) A 所有请求必须用同一个昂贵模型 B 降级模型只会降低可用性,无其他价值 C token 预算无法按用户设置 D 按任务复杂度路由模型,设置 token 预算,主模型失败时降级到更便宜模型 ✓ 正确答案