Refactoring cleanup

- Update Spring AI BOM with the newly added modules
 - Remove unnecessary dependencies from the modules' POM file
This commit is contained in:
Ilayaperumal Gopinathan
2025-04-02 16:09:49 +01:00
committed by Soby Chacko
parent bd82e73193
commit 8ca3d41e68
32 changed files with 100 additions and 153 deletions

View File

@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--
~ Copyright 2023-2024 the original author or authors.
~ Copyright 2023-2025 the original author or authors.
~
~ Licensed under the Apache License, Version 2.0 (the "License");
~ you may not use this file except in compliance with the License.
@@ -55,46 +55,12 @@
<version>${project.parent.version}</version>
</dependency>
<!-- Spring Framework -->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context</artifactId>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
</dependency>
<dependency>
<groupId>io.projectreactor</groupId>
<artifactId>reactor-core</artifactId>
</dependency>
<dependency>
<groupId>org.jetbrains.kotlin</groupId>
<artifactId>kotlin-stdlib</artifactId>
<optional>true</optional>
</dependency>
<dependency>
<groupId>org.jetbrains.kotlin</groupId>
<artifactId>kotlin-reflect</artifactId>
<optional>true</optional>
</dependency>
<!-- test dependencies -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.module</groupId>
<artifactId>jackson-module-kotlin</artifactId>
<scope>test</scope>
</dependency>
</dependencies>
</project>

View File

@@ -36,7 +36,6 @@ import org.springframework.ai.chat.observation.ChatModelPromptContentObservation
import org.springframework.ai.embedding.observation.EmbeddingModelObservationContext;
import org.springframework.ai.image.observation.ImageModelObservationContext;
import org.springframework.ai.model.observation.ErrorLoggingObservationHandler;
import org.springframework.ai.vectorstore.observation.VectorStoreObservationContext;
import org.springframework.beans.factory.ObjectProvider;
import org.springframework.boot.autoconfigure.AutoConfiguration;
import org.springframework.boot.autoconfigure.condition.ConditionalOnBean;
@@ -148,7 +147,7 @@ public class ChatObservationAutoConfiguration {
return new ErrorLoggingObservationHandler(tracer,
List.of(EmbeddingModelObservationContext.class, ImageModelObservationContext.class,
ChatModelObservationContext.class, ChatClientObservationContext.class,
AdvisorObservationContext.class, VectorStoreObservationContext.class));
AdvisorObservationContext.class));
}
}

View File

@@ -40,7 +40,7 @@
<dependencies>
<dependency>
<groupId>org.springframework.ai</groupId>
<artifactId>spring-ai-client-chat</artifactId>
<artifactId>spring-ai-vector-store</artifactId>
<version>${project.parent.version}</version>
</dependency>
<dependency>

View File

@@ -20,14 +20,24 @@ import org.neo4j.driver.Driver;
import org.neo4j.driver.Result;
import org.neo4j.driver.Transaction;
import org.springframework.ai.chat.memory.ChatMemory;
import org.springframework.ai.chat.messages.*;
import org.springframework.ai.chat.messages.AssistantMessage;
import org.springframework.ai.chat.messages.Message;
import org.springframework.ai.chat.messages.MessageType;
import org.springframework.ai.chat.messages.SystemMessage;
import org.springframework.ai.chat.messages.ToolResponseMessage;
import org.springframework.ai.chat.messages.UserMessage;
import org.springframework.ai.content.Media;
import org.springframework.ai.content.MediaContent;
import org.springframework.util.MimeType;
import java.net.MalformedURLException;
import java.net.URI;
import java.util.*;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.Optional;
import java.util.UUID;
/**
* Chat memory implementation using Neo4j.

View File

@@ -42,6 +42,46 @@
<dependencyManagement>
<dependencies>
<!-- Spring AI commons -->
<dependency>
<groupId>org.springframework.ai</groupId>
<artifactId>spring-ai-commons</artifactId>
<version>${project.version}</version>
</dependency>
<!-- Spring AI model -->
<dependency>
<groupId>org.springframework.ai</groupId>
<artifactId>spring-ai-model</artifactId>
<version>${project.version}</version>
</dependency>
<!-- Spring AI vector store -->
<dependency>
<groupId>org.springframework.ai</groupId>
<artifactId>spring-ai-vector-store</artifactId>
<version>${project.version}</version>
</dependency>
<!-- Spring AI RAG -->
<dependency>
<groupId>org.springframework.ai</groupId>
<artifactId>spring-ai-rag</artifactId>
<version>${project.version}</version>
</dependency>
<!-- Spring AI Vector Store based Advisors -->
<dependency>
<groupId>org.springframework.ai</groupId>
<artifactId>spring-ai-advisors-vector-store</artifactId>
<version>${project.version}</version>
</dependency>
<!-- Spring AI retry -->
<dependency>
@@ -100,6 +140,20 @@
<version>${project.version}</version>
</dependency>
<!-- Spring AI Chat memory implementations -->
<dependency>
<groupId>org.springframework.ai</groupId>
<artifactId>spring-ai-model-chat-memory-cassandra</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>org.springframework.ai</groupId>
<artifactId>spring-ai-model-chat-memory-neo4j</artifactId>
<version>${project.version}</version>
</dependency>
<!-- Spring AI Models -->
<dependency>

View File

@@ -26,8 +26,8 @@
</parent>
<artifactId>spring-ai-client-chat</artifactId>
<packaging>jar</packaging>
<name>Spring AI Core</name>
<description>Core domain for AI programming</description>
<name>Spring AI Chat Client</name>
<description>Spring AI Chat Client AI programming</description>
<url>https://github.com/spring-projects/spring-ai</url>
<scm>
@@ -38,18 +38,6 @@
<dependencies>
<dependency>
<groupId>org.springframework.ai</groupId>
<artifactId>spring-ai-commons</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>org.springframework.ai</groupId>
<artifactId>spring-ai-vector-store</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>org.springframework.ai</groupId>
<artifactId>spring-ai-model</artifactId>
@@ -91,22 +79,6 @@
<artifactId>spring-messaging</artifactId>
</dependency>
<dependency>
<groupId>io.micrometer</groupId>
<artifactId>micrometer-core</artifactId>
</dependency>
<dependency>
<groupId>io.micrometer</groupId>
<artifactId>context-propagation</artifactId>
</dependency>
<dependency>
<groupId>io.micrometer</groupId>
<artifactId>micrometer-tracing-bridge-otel</artifactId>
<optional>true</optional>
</dependency>
<dependency>
<groupId>com.knuddels</groupId>
<artifactId>jtokkit</artifactId>

View File

@@ -55,8 +55,7 @@ public class SpringAiCoreRuntimeHints implements RuntimeHintsRegistrar {
Method getName = ReflectionUtils.findMethod(FunctionCallback.class, "getName");
hints.reflection().registerMethod(getName, ExecutableMode.INVOKE);
for (var r : Set.of("antlr4/org/springframework/ai/vectorstore/filter/antlr4/Filters.g4",
"embedding/embedding-model-dimensions.properties")) {
for (var r : Set.of("embedding/embedding-model-dimensions.properties")) {
hints.resources().registerResource(new ClassPathResource(r));
}

View File

@@ -59,7 +59,6 @@
<optional>true</optional>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.module</groupId>
<artifactId>jackson-module-jsonSchema</artifactId>

View File

@@ -47,17 +47,6 @@
<version>${project.parent.version}</version>
</dependency>
<!-- Spring Framework -->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context</artifactId>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
</dependency>
<dependency>
<groupId>io.micrometer</groupId>
<artifactId>micrometer-observation</artifactId>
@@ -80,6 +69,7 @@
<version>${ST4.version}</version>
</dependency>
<!-- ANTLR for Filter Expression Parsing -->
<dependency>
<groupId>org.antlr</groupId>
<artifactId>antlr4-runtime</artifactId>
@@ -109,7 +99,7 @@
<artifactId>swagger-annotations</artifactId>
<version>${swagger-annotations.version}</version>
</dependency>
<dependency>
<groupId>org.jetbrains.kotlin</groupId>
<artifactId>kotlin-stdlib</artifactId>

View File

@@ -54,34 +54,6 @@
<version>${project.parent.version}</version>
</dependency>
<!-- Spring Framework -->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context</artifactId>
</dependency>
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
</dependency>
<dependency>
<groupId>io.projectreactor</groupId>
<artifactId>reactor-core</artifactId>
</dependency>
<dependency>
<groupId>org.jetbrains.kotlin</groupId>
<artifactId>kotlin-stdlib</artifactId>
<optional>true</optional>
</dependency>
<dependency>
<groupId>org.jetbrains.kotlin</groupId>
<artifactId>kotlin-reflect</artifactId>
<optional>true</optional>
</dependency>
<!-- test dependencies -->
<dependency>
<groupId>org.springframework.boot</groupId>

View File

@@ -56,6 +56,12 @@
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>org.springframework.ai</groupId>
<artifactId>spring-ai-vector-store</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>

View File

@@ -53,27 +53,7 @@
<optional>true</optional>
</dependency>
<!-- ANTLR for Filter Expression Parsing -->
<dependency>
<groupId>org.antlr</groupId>
<artifactId>antlr4-runtime</artifactId>
<version>${antlr.version}</version>
</dependency>
<!-- Spring Framework -->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-context</artifactId>
</dependency>
<!-- test dependencies -->
<!-- <dependency>-->
<!-- <groupId>org.springframework.ai</groupId>-->
<!-- <artifactId>spring-ai-test</artifactId>-->
<!-- <version>${project.parent.version}</version>-->
<!-- <scope>test</scope>-->
<!-- </dependency>-->
<dependency>
<groupId>org.springframework.boot</groupId>

View File

@@ -49,7 +49,7 @@
</dependency>
<dependency>
<groupId>org.springframework.ai</groupId>
<artifactId>spring-ai-client-chat</artifactId>
<artifactId>spring-ai-vector-store</artifactId>
<version>${project.parent.version}</version>
</dependency>

View File

@@ -44,7 +44,7 @@
<dependencies>
<dependency>
<groupId>org.springframework.ai</groupId>
<artifactId>spring-ai-client-chat</artifactId>
<artifactId>spring-ai-vector-store</artifactId>
<version>${project.parent.version}</version>
</dependency>
<dependency>

View File

@@ -44,7 +44,7 @@
<dependencies>
<dependency>
<groupId>org.springframework.ai</groupId>
<artifactId>spring-ai-client-chat</artifactId>
<artifactId>spring-ai-vector-store</artifactId>
<version>${project.parent.version}</version>
</dependency>

View File

@@ -40,7 +40,7 @@
<dependencies>
<dependency>
<groupId>org.springframework.ai</groupId>
<artifactId>spring-ai-client-chat</artifactId>
<artifactId>spring-ai-vector-store</artifactId>
<version>${project.parent.version}</version>
</dependency>

View File

@@ -28,7 +28,7 @@
<dependencies>
<dependency>
<groupId>org.springframework.ai</groupId>
<artifactId>spring-ai-client-chat</artifactId>
<artifactId>spring-ai-vector-store</artifactId>
<version>${project.parent.version}</version>
</dependency>

View File

@@ -29,7 +29,7 @@
</dependency>
<dependency>
<groupId>org.springframework.ai</groupId>
<artifactId>spring-ai-client-chat</artifactId>
<artifactId>spring-ai-vector-store</artifactId>
<version>${parent.version}</version>
</dependency>

View File

@@ -46,7 +46,7 @@
<dependencies>
<dependency>
<groupId>org.springframework.ai</groupId>
<artifactId>spring-ai-client-chat</artifactId>
<artifactId>spring-ai-vector-store</artifactId>
<version>${project.parent.version}</version>
</dependency>

View File

@@ -44,7 +44,7 @@
<dependencies>
<dependency>
<groupId>org.springframework.ai</groupId>
<artifactId>spring-ai-client-chat</artifactId>
<artifactId>spring-ai-vector-store</artifactId>
<version>${project.parent.version}</version>
</dependency>

View File

@@ -45,7 +45,7 @@
<dependencies>
<dependency>
<groupId>org.springframework.ai</groupId>
<artifactId>spring-ai-client-chat</artifactId>
<artifactId>spring-ai-vector-store</artifactId>
<version>${project.parent.version}</version>
</dependency>

View File

@@ -39,7 +39,7 @@
<dependencies>
<dependency>
<groupId>org.springframework.ai</groupId>
<artifactId>spring-ai-client-chat</artifactId>
<artifactId>spring-ai-vector-store</artifactId>
<version>${project.parent.version}</version>
</dependency>

View File

@@ -44,7 +44,7 @@
<dependencies>
<dependency>
<groupId>org.springframework.ai</groupId>
<artifactId>spring-ai-client-chat</artifactId>
<artifactId>spring-ai-vector-store</artifactId>
<version>${project.parent.version}</version>
</dependency>

View File

@@ -43,7 +43,7 @@
<dependencies>
<dependency>
<groupId>org.springframework.ai</groupId>
<artifactId>spring-ai-client-chat</artifactId>
<artifactId>spring-ai-vector-store</artifactId>
<version>${project.parent.version}</version>
</dependency>
<!-- MongoDB -->

View File

@@ -44,7 +44,7 @@
<dependencies>
<dependency>
<groupId>org.springframework.ai</groupId>
<artifactId>spring-ai-client-chat</artifactId>
<artifactId>spring-ai-vector-store</artifactId>
<version>${project.parent.version}</version>
</dependency>

View File

@@ -44,7 +44,7 @@
<dependencies>
<dependency>
<groupId>org.springframework.ai</groupId>
<artifactId>spring-ai-client-chat</artifactId>
<artifactId>spring-ai-vector-store</artifactId>
<version>${project.parent.version}</version>
</dependency>

View File

@@ -44,7 +44,7 @@
<dependencies>
<dependency>
<groupId>org.springframework.ai</groupId>
<artifactId>spring-ai-client-chat</artifactId>
<artifactId>spring-ai-vector-store</artifactId>
<version>${project.parent.version}</version>
</dependency>

View File

@@ -43,7 +43,7 @@
<dependencies>
<dependency>
<groupId>org.springframework.ai</groupId>
<artifactId>spring-ai-client-chat</artifactId>
<artifactId>spring-ai-vector-store</artifactId>
<version>${project.parent.version}</version>
</dependency>

View File

@@ -44,7 +44,7 @@
<dependencies>
<dependency>
<groupId>org.springframework.ai</groupId>
<artifactId>spring-ai-client-chat</artifactId>
<artifactId>spring-ai-vector-store</artifactId>
<version>${project.parent.version}</version>
</dependency>

View File

@@ -46,7 +46,7 @@
<dependencies>
<dependency>
<groupId>org.springframework.ai</groupId>
<artifactId>spring-ai-client-chat</artifactId>
<artifactId>spring-ai-vector-store</artifactId>
<version>${project.parent.version}</version>
</dependency>

View File

@@ -45,7 +45,7 @@
<dependencies>
<dependency>
<groupId>org.springframework.ai</groupId>
<artifactId>spring-ai-client-chat</artifactId>
<artifactId>spring-ai-vector-store</artifactId>
<version>${project.parent.version}</version>
</dependency>

View File

@@ -43,7 +43,7 @@
<dependencies>
<dependency>
<groupId>org.springframework.ai</groupId>
<artifactId>spring-ai-client-chat</artifactId>
<artifactId>spring-ai-vector-store</artifactId>
<version>${project.parent.version}</version>
</dependency>