Inference Foundrymodern AI systems fieldbook
Spring AI 2 · Grounded Agentic SystemsView Markdown source

Spring AI 2.0 architecture and project setup

Spring AI 2.0 provides portable Java APIs for chat, embeddings, images, audio, vector stores, tools, memory, RAG, MCP, evaluation, and observability. It uses Spring Boot 4.x and Spring Framework 7.

Dependency management

<dependencyManagement>
  <dependencies>
    <dependency>
      <groupId>org.springframework.ai</groupId>
      <artifactId>spring-ai-bom</artifactId>
      <version>2.0.0</version>
      <type>pom</type><scope>import</scope>
    </dependency>
  </dependencies>
</dependencyManagement>

Add only the provider and vector-store starters the service actually uses:

<dependency>
  <groupId>org.springframework.ai</groupId>
  <artifactId>spring-ai-starter-model-openai</artifactId>
</dependency>
<dependency>
  <groupId>org.springframework.ai</groupId>
  <artifactId>spring-ai-starter-vector-store-pgvector</artifactId>
</dependency>

Spring AI 2.0 focuses its core providers on OpenAI, Anthropic, Bedrock, Google GenAI, Mistral, DeepSeek, and Ollama. It prefers vendor SDK integrations so new provider capabilities can arrive without pretending every provider is equal.

API levels

  • ChatClient: normal fluent application API;
  • ChatModel: lower-level model abstraction;
  • Advisors: reusable interception/orchestration such as memory, RAG, logging, tool execution, and semantic cache;
  • provider options: escape hatch for capabilities that are not portable.

Configuration ownership

Keep secrets outside source. Bind provider endpoints, model roles, timeouts, and budgets through validated configuration. Fail startup when a required provider is absent; allow an explicitly designed degraded mode otherwise.

Upgrade warning

Spring AI 2.0 includes breaking starter names, immutable option builders, Jackson 3, JSpecify null-safety, and tool-calling lifecycle changes. Do not paste 1.x examples into a 2.0 application without the upgrade notes.

Feynman check

Spring AI is an adapter and orchestration toolbox. Explain what business rules, data permissions, and reliability work still belong to your application.

Inference FoundryIndependent study material · verify version details in official project documentation