Testcontainers

Spring AI provides Spring Boot auto-configuration for establishing a connection to a model service or vector store running via Testcontainers. To enable it, add the following dependency to your project’s Maven pom.xml file:

<dependency>
   <groupId>org.springframework.ai</groupId>
   <artifactId>spring-ai-spring-boot-testcontainers</artifactId>
</dependency>

or to your Gradle build.gradle build file.

dependencies {
    implementation 'org.springframework.ai:spring-ai-spring-boot-testcontainers'
}
Refer to the Dependency Management section to add the Spring AI BOM to your build file.

Service Connections

The following service connection factories are provided in the spring-ai-spring-boot-testcontainers module:

Connection Details Matched on

AwsOpenSearchConnectionDetails

Containers of type LocalStackContainer

ChromaConnectionDetails

Containers of type ChromaDBContainer

MilvusServiceClientConnectionDetails

Containers of type MilvusContainer

MongoConnectionDetails

Containers of type MongoDBAtlasLocalContainer

OllamaConnectionDetails

Containers of type OllamaContainer

OpenSearchConnectionDetails

Containers of type OpensearchContainer

QdrantConnectionDetails

Containers of type QdrantContainer

TypesenseConnectionDetails

Containers named "typesense/typesense"

WeaviateConnectionDetails

Containers of type WeaviateContainer