Spring AI 面试题

文章目录

    • [一、基础概念(必问 5 道)](#一、基础概念(必问 5 道))
      • [1. 什么是 Spring AI?](#1. 什么是 Spring AI?)
      • [2. Spring AI 的核心设计目标是什么?](#2. Spring AI 的核心设计目标是什么?)
      • [3. Spring AI 核心模块有哪些?](#3. Spring AI 核心模块有哪些?)
      • [4. Spring AI 支持哪些大模型?](#4. Spring AI 支持哪些大模型?)
      • [5. Spring AI 和 LangChain 的区别?](#5. Spring AI 和 LangChain 的区别?)
    • [二、RAG 相关(面试超级高频)](#二、RAG 相关(面试超级高频))
      • [6. 什么是 RAG?](#6. 什么是 RAG?)
      • [7. RAG 完整流程是什么?(标准 6 步)](#7. RAG 完整流程是什么?(标准 6 步))
      • [8. 为什么要用向量数据库?](#8. 为什么要用向量数据库?)
      • [9. Spring AI 中 VectorStore 作用是什么?](#9. Spring AI 中 VectorStore 作用是什么?)
      • [10. Spring AI 如何实现 RAG?](#10. Spring AI 如何实现 RAG?)
    • 三、核心组件原理(必背)
      • [11. ChatModel 是什么?](#11. ChatModel 是什么?)
      • [12. EmbeddingModel 作用?](#12. EmbeddingModel 作用?)
      • [13. 什么是 PromptTemplate?](#13. 什么是 PromptTemplate?)
      • [14. Spring AI 流式响应原理?](#14. Spring AI 流式响应原理?)
      • [15. Spring AI 函数调用(FunctionCall)原理?](#15. Spring AI 函数调用(FunctionCall)原理?)
    • 四、生产/实战类(进阶)
      • [16. RAG 如何优化?](#16. RAG 如何优化?)
      • [17. Spring AI 支持哪些向量数据库?](#17. Spring AI 支持哪些向量数据库?)
      • [18. Spring AI 适合什么场景?](#18. Spring AI 适合什么场景?)
    • 五、你面试可以直接背的万能总结

一、基础概念(必问 5 道)

1. 什么是 Spring AI?

Spring AI 是 Spring 官方推出的 AI 应用开发框架 ,目标是简化 Java 开发者接入大模型、向量数据库、RAG、函数调用等能力,提供统一 API、模型无关、开箱即用的体验。


2. Spring AI 的核心设计目标是什么?

  • 模型无关性:一套代码,切换模型不用改业务
  • Spring 生态原生集成:自动配置、依赖注入、Starter
  • 简化 AI 工程化:封装 Prompt、Embedding、VectorStore、RAG
  • 低学习成本:Java 开发者不用懂 AI 底层也能快速开发

3. Spring AI 核心模块有哪些?

  • Chat Model:对话模型(OpenAI、通义、Ollama 等)
  • Embedding Model:文本转向量
  • VectorStore:向量数据库抽象
  • Prompt / PromptTemplate:提示词管理
  • DocumentReader / TextSplitter:文档读取与切片
  • RAG:检索增强生成
  • FunctionCall:AI 调用 Java 方法

4. Spring AI 支持哪些大模型?

  • OpenAI
  • 阿里云通义千问
  • 百度文心一言
  • 讯飞星火
  • Ollama(本地大模型)
  • ZhipuAI 等

特点:统一接口,换配置不换代码。


5. Spring AI 和 LangChain 的区别?

  • Spring AI:Java 第一、Spring 生态、简单轻量、工程化强
  • LangChain:Python 为主、功能极多、复杂、Java 支持弱

二、RAG 相关(面试超级高频)

6. 什么是 RAG?

Retrieval-Augmented Generation 检索增强生成

先从外部知识库检索相关内容,把内容拼到提示词里,再让大模型回答,解决幻觉、知识过时、无业务数据问题。


7. RAG 完整流程是什么?(标准 6 步)

离线构建:

  1. 加载文档(PDF/TXT/MD)
  2. 文本分块(Chunk)
  3. 向量化(Embedding)
  4. 存入向量库

在线问答:

  1. 用户问题转向量 → 向量库做相似度检索

  2. 拼接上下文 → 给大模型生成回答


8. 为什么要用向量数据库?

  • 普通数据库只能精确匹配
  • 向量数据库可以做语义相似度检索
  • 是 RAG 的核心基础设施
  • 支持高效 Top-K 相似查询

9. Spring AI 中 VectorStore 作用是什么?

统一抽象向量库,屏蔽底层实现差异:

  • SimpleVectorStore(内存)
  • Milvus
  • PGVector
  • Chroma
  • ElasticSearch

10. Spring AI 如何实现 RAG?

  1. DocumentReader 读取文档
  2. TextSplitter 切片
  3. EmbeddingModel 转向量
  4. 存入 VectorStore
  5. 用户提问 → similaritySearch
  6. 拼接上下文 → ChatModel 生成回答

三、核心组件原理(必背)

11. ChatModel 是什么?

对话模型的统一顶层接口

不管底层是 OpenAI 还是通义,上层调用都一样。


12. EmbeddingModel 作用?

文本 → 向量(一串数字)

用于语义检索、RAG、相似度计算。


13. 什么是 PromptTemplate?

提示词模板,支持变量替换,让提示词可复用、可管理。


14. Spring AI 流式响应原理?

  • 模型返回 SSE 流式数据
  • Spring AI 使用 StreamingChatModel
  • 返回 Flux<ChatResponse>
  • 前端逐字接收(打字机效果)

15. Spring AI 函数调用(FunctionCall)原理?

  1. Java 方法上加 @Tool
  2. Spring AI 自动生成 Function Schema
  3. 传给大模型
  4. 模型判断是否需要调用工具
  5. Spring AI 自动反射执行方法
  6. 结果返回给模型,生成最终回答

四、生产/实战类(进阶)

16. RAG 如何优化?

  • 合理切片(大小、重叠)
  • 增加召回数量(topK)
  • 加入重排(Rerank)
  • 元数据过滤(Metadata Filtering)
  • 多向量库混合检索
  • 提示词工程优化

17. Spring AI 支持哪些向量数据库?

  • SimpleVectorStore
  • Milvus
  • PGVector
  • Chroma
  • ElasticSearch
  • Pinecone

18. Spring AI 适合什么场景?

  • 企业知识库
  • 智能客服
  • 内部 RAG 应用
  • AI 助手
  • 文档问答
  • 推荐/语义检索系统

五、你面试可以直接背的万能总结

Spring AI 是 Spring 官方的 AI 开发框架,通过统一抽象 屏蔽大模型差异,提供 Chat、Embedding、VectorStore、RAG、FunctionCall 等能力,让 Java 开发者可以快速、低成本构建企业级 AI 应用,是目前 Java 后端接入 AI 的主流方案。

相关推荐
2301_796512524 小时前
用 JiuwenClaw 打造合同审查辅助Agent Swarm:从条款提取到风险标注的实践记录
人工智能
yqzyy4 小时前
C#如何优雅处理引用类型的深拷贝(十一)
java·网络·nginx
旦莫4 小时前
一个完美的AI测试Agent应该是什么样的
人工智能·python·测试开发·pytest·ai测试
听你说324 小时前
不迷路、不重扫、不遗漏:库萨科技无人清扫车以空间智能领跑无人环卫赛道
人工智能·科技·算法·机器人
范什么特西4 小时前
idea里面jsp找不到图片
java·开发语言·servlet
23.4 小时前
【分析】网关故障排查指南:如何区分并定位‘上游’与‘下游’问题
java
勤自省4 小时前
ROS2 + OpenCV 实战教程:人脸识别、物体跟踪、ArUco 二维码识别初级
人工智能·opencv·ubuntu·计算机视觉·ros2
He少年4 小时前
【AI路径代理与业务接入 — 成功失败感悟】
人工智能·c#
Keano Reurink4 小时前
让AI Agent学会“查资料“:我搭了一套搜索引擎工具链
人工智能·搜索引擎
liguojun20254 小时前
软硬一体智慧场馆系统推荐——助力场馆数字化高效升级
java·大数据·人工智能·物联网·1024程序员节