ThomasVitale/llm-apps-java-spring-ai

Samples showing how to build Java applications powered by Generative AI and LLMs using Spring AI and Spring Boot.

它解决了什么

该仓库提供了完整的示例应用和实现模式,帮助 Java 开发者使用 Spring AI 框架构建生成式 AI 应用。它弥合了 AI 概念与实际 Java 实现之间的鸿沟,提供了将 LLM、向量数据库和多模态能力集成到企业 Java 应用中的具体示例。

它如何工作

项目组织为一系列使用案例和模式,均基于 Spring AI 实现。它展示了与多种模型提供商(OpenAI、Mistral AI、Ollama)以及 PGVector 等向量存储工具的集成。示例覆盖完整的 AI 应用生命周期,从数据摄取(读取 PDF、JSON、Markdown)和文档转换(拆分与元数据丰富)到高级 RAG(检索增强生成)流程,包括顺序、分支和条件 RAG。

适用人群

Java 开发者和软件架构师,想学习如何使用 Spring AI 构建 AI 注入的应用,尤其是需要实用、可运行的常见 AI 模式(如 RAG、工具调用、结构化输出)示例。

亮点

  • 多样模型支持:集成 OpenAI、Mistral AI 与通过 Ollama 的本地 LLM。
  • 高级 RAG 模式:实现 naive、advanced、sequential、branching 与 conditional RAG 流程。
  • 完整工具链:示例包括结构化数据抽取、文本分类和多模态提示。
  • 企业级模式:实现聊天记忆(JDBC、向量存储、Spring Security)和输入/输出防护。
  • 数据摄取管道:内置支持多种格式(PDF、JSON、Markdown、Tika)的文档读取器,以及用于分块和元数据丰富的文档转换器。