Skip to content

Commit 7521cab

Browse files
committed
Remove deprecated methods/classes from spring-ai-core
1 parent 822576b commit 7521cab

File tree

25 files changed

+66
-580
lines changed

25 files changed

+66
-580
lines changed

models/spring-ai-anthropic/src/main/java/org/springframework/ai/anthropic/api/AnthropicApi.java

Lines changed: 1 addition & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -261,13 +261,8 @@ public enum ChatModel implements ChatModelDescription {
261261
/**
262262
* The CLAUDE_2_0
263263
*/
264-
CLAUDE_2("claude-2.0"),
264+
CLAUDE_2("claude-2.0");
265265

266-
/**
267-
* The CLAUDE_INSTANT_1_2
268-
*/
269-
@Deprecated
270-
CLAUDE_INSTANT_1_2("claude-instant-1.2");
271266
// @formatter:on
272267

273268
private final String value;

models/spring-ai-bedrock-converse/src/main/java/org/springframework/ai/bedrock/converse/api/ConverseApiUtils.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -68,8 +68,8 @@
6868
public final class ConverseApiUtils {
6969

7070
public static final ChatResponse EMPTY_CHAT_RESPONSE = ChatResponse.builder()
71-
.withGenerations(List.of())
72-
.withMetadata("empty", true)
71+
.generations(List.of())
72+
.metadata("empty", true)
7373
.build();
7474

7575
private ConverseApiUtils() {

models/spring-ai-openai/src/test/java/org/springframework/ai/openai/chat/client/OpenAiChatClientMultipleFunctionCallsIT.java

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -255,7 +255,11 @@ void functionCallWithExplicitInputType() throws NoSuchMethodException {
255255

256256
String content = chatClient.prompt()
257257
.user("What's the weather like in Shanghai?")
258-
.function("currentTemp", "get current temp", MyFunction.Req.class, function)
258+
.functions(FunctionCallback.builder()
259+
.function("currentTemp", function)
260+
.description("get current temp")
261+
.inputType(MyFunction.Req.class)
262+
.build())
259263
.call()
260264
.content();
261265

spring-ai-core/src/main/java/org/springframework/ai/aot/SpringAiCoreRuntimeHints.java

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,6 @@
2828
import org.springframework.ai.chat.messages.UserMessage;
2929
import org.springframework.ai.model.function.DefaultFunctionCallbackResolver;
3030
import org.springframework.ai.model.function.FunctionCallback;
31-
import org.springframework.ai.model.function.FunctionCallbackWrapper;
3231
import org.springframework.aot.hint.ExecutableMode;
3332
import org.springframework.aot.hint.RuntimeHints;
3433
import org.springframework.aot.hint.RuntimeHintsRegistrar;
@@ -44,7 +43,7 @@ public void registerHints(@NonNull RuntimeHints hints, @Nullable ClassLoader cla
4443

4544
var chatTypes = Set.of(AbstractMessage.class, AssistantMessage.class, ToolResponseMessage.class, Message.class,
4645
MessageType.class, UserMessage.class, SystemMessage.class, DefaultFunctionCallbackResolver.class,
47-
FunctionCallback.class, FunctionCallbackWrapper.class);
46+
FunctionCallback.class);
4847
for (var c : chatTypes) {
4948
hints.reflection().registerType(c);
5049
}

spring-ai-core/src/main/java/org/springframework/ai/chat/client/ChatClient.java

Lines changed: 0 additions & 35 deletions
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,6 @@
3030
import org.springframework.ai.chat.messages.Message;
3131
import org.springframework.ai.chat.model.ChatModel;
3232
import org.springframework.ai.chat.model.ChatResponse;
33-
import org.springframework.ai.chat.model.ToolContext;
3433
import org.springframework.ai.chat.prompt.ChatOptions;
3534
import org.springframework.ai.chat.prompt.Prompt;
3635
import org.springframework.ai.converter.StructuredOutputConverter;
@@ -221,29 +220,8 @@ interface ChatClientRequestSpec {
221220

222221
ChatClientRequestSpec toolCallbacks(FunctionCallback... toolCallbacks);
223222

224-
/**
225-
* @deprecated use {@link #functions(FunctionCallback...)} instead.
226-
*/
227-
@Deprecated
228-
<I, O> ChatClientRequestSpec function(String name, String description,
229-
java.util.function.Function<I, O> function);
230-
231-
/**
232-
* @deprecated use {@link #functions(FunctionCallback...)} instead.
233-
*/
234-
@Deprecated
235-
<I, O> ChatClientRequestSpec function(String name, String description,
236-
java.util.function.BiFunction<I, ToolContext, O> function);
237-
238223
<I, O> ChatClientRequestSpec functions(FunctionCallback... functionCallbacks);
239224

240-
/**
241-
* @deprecated use {@link #functions(FunctionCallback...)} instead.
242-
*/
243-
@Deprecated
244-
<I, O> ChatClientRequestSpec function(String name, String description, Class<I> inputType,
245-
java.util.function.Function<I, O> function);
246-
247225
ChatClientRequestSpec functions(String... functionBeanNames);
248226

249227
ChatClientRequestSpec toolContext(Map<String, Object> toolContext);
@@ -305,19 +283,6 @@ interface Builder {
305283

306284
Builder defaultToolCallbacks(FunctionCallback... toolCallbacks);
307285

308-
/**
309-
* @deprecated use {@link #defaultFunctions(FunctionCallback...)} instead.
310-
*/
311-
@Deprecated
312-
<I, O> Builder defaultFunction(String name, String description, java.util.function.Function<I, O> function);
313-
314-
/**
315-
* @deprecated use {@link #defaultFunctions(FunctionCallback...)} instead.
316-
*/
317-
@Deprecated
318-
<I, O> Builder defaultFunction(String name, String description,
319-
java.util.function.BiFunction<I, ToolContext, O> function);
320-
321286
Builder defaultFunctions(String... functionNames);
322287

323288
Builder defaultFunctions(FunctionCallback... functionCallbacks);

spring-ai-core/src/main/java/org/springframework/ai/chat/client/DefaultChatClient.java

Lines changed: 7 additions & 60 deletions
Original file line numberDiff line numberDiff line change
@@ -57,14 +57,12 @@
5757
import org.springframework.ai.chat.model.ChatResponse;
5858
import org.springframework.ai.chat.model.Generation;
5959
import org.springframework.ai.chat.model.StreamingChatModel;
60-
import org.springframework.ai.chat.model.ToolContext;
6160
import org.springframework.ai.chat.prompt.ChatOptions;
6261
import org.springframework.ai.chat.prompt.Prompt;
6362
import org.springframework.ai.converter.BeanOutputConverter;
6463
import org.springframework.ai.converter.StructuredOutputConverter;
6564
import org.springframework.ai.model.Media;
6665
import org.springframework.ai.model.function.FunctionCallback;
67-
import org.springframework.ai.model.function.FunctionCallbackWrapper;
6866
import org.springframework.core.Ordered;
6967
import org.springframework.core.ParameterizedTypeReference;
7068
import org.springframework.core.io.Resource;
@@ -549,11 +547,11 @@ private Flux<ChatResponse> doGetObservableFluxChatResponse(DefaultChatClientRequ
549547
Flux<AdvisedResponse> stream = inputRequest.aroundAdvisorChainBuilder.build().nextAroundStream(initialAdvisedRequest);
550548

551549
return stream
552-
.map(AdvisedResponse::response)
553-
.doOnError(observation::error)
554-
.doFinally(s -> observation.stop())
555-
.contextWrite(ctx -> ctx.put(ObservationThreadLocalAccessor.KEY, observation));
556-
// @formatter:on
550+
.map(AdvisedResponse::response)
551+
.doOnError(observation::error)
552+
.doFinally(s -> observation.stop())
553+
.contextWrite(ctx -> ctx.put(ObservationThreadLocalAccessor.KEY, observation));
554+
// @formatter:on
557555
});
558556
}
559557

@@ -695,8 +693,8 @@ public int getOrder() {
695693
@Override
696694
public Flux<AdvisedResponse> aroundStream(AdvisedRequest advisedRequest, StreamAroundAdvisorChain chain) {
697695
return chatModel.stream(advisedRequest.toPrompt())
698-
.map(chatResponse -> new AdvisedResponse(chatResponse, Collections.unmodifiableMap(advisedRequest.adviseContext())))
699-
.publishOn(Schedulers.boundedElastic()); // TODO add option to disable.
696+
.map(chatResponse -> new AdvisedResponse(chatResponse, Collections.unmodifiableMap(advisedRequest.adviseContext())))
697+
.publishOn(Schedulers.boundedElastic()); // TODO add option to disable.
700698
}
701699
});
702700
// @formatter:on
@@ -863,57 +861,6 @@ public ChatClientRequestSpec toolCallbacks(FunctionCallback... toolCallbacks) {
863861
return this;
864862
}
865863

866-
@Override
867-
public <I, O> ChatClientRequestSpec function(String name, String description,
868-
java.util.function.Function<I, O> function) {
869-
Assert.hasText(name, "name cannot be null or empty");
870-
Assert.hasText(description, "description cannot be null or empty");
871-
Assert.notNull(function, "function cannot be null");
872-
873-
var fcw = FunctionCallbackWrapper.builder(function)
874-
.withDescription(description)
875-
.withName(name)
876-
.withResponseConverter(Object::toString)
877-
.build();
878-
this.functionCallbacks.add(fcw);
879-
return this;
880-
}
881-
882-
@Override
883-
public <I, O> ChatClientRequestSpec function(String name, String description,
884-
java.util.function.BiFunction<I, ToolContext, O> biFunction) {
885-
886-
Assert.hasText(name, "name cannot be null or empty");
887-
Assert.hasText(description, "description cannot be null or empty");
888-
Assert.notNull(biFunction, "biFunction cannot be null");
889-
890-
var fcw = FunctionCallbackWrapper.builder(biFunction)
891-
.withDescription(description)
892-
.withName(name)
893-
.withResponseConverter(Object::toString)
894-
.build();
895-
this.functionCallbacks.add(fcw);
896-
return this;
897-
}
898-
899-
@Override
900-
public <I, O> ChatClientRequestSpec function(String name, String description, @Nullable Class<I> inputType,
901-
java.util.function.Function<I, O> function) {
902-
903-
Assert.hasText(name, "name cannot be null or empty");
904-
Assert.hasText(description, "description cannot be null or empty");
905-
Assert.notNull(function, "function cannot be null");
906-
907-
var fcw = FunctionCallback.builder()
908-
.function(name, function)
909-
.description(description)
910-
.responseConverter(Object::toString)
911-
.inputType(inputType)
912-
.build();
913-
this.functionCallbacks.add(fcw);
914-
return this;
915-
}
916-
917864
public ChatClientRequestSpec functions(String... functionBeanNames) {
918865
return tools(functionBeanNames);
919866
}

spring-ai-core/src/main/java/org/springframework/ai/chat/client/DefaultChatClientBuilder.java

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -168,13 +168,15 @@ public Builder defaultToolCallbacks(FunctionCallback... toolCallbacks) {
168168
}
169169

170170
public <I, O> Builder defaultFunction(String name, String description, java.util.function.Function<I, O> function) {
171-
this.defaultRequest.function(name, description, function);
171+
this.defaultRequest
172+
.functions(FunctionCallback.builder().function(name, function).description(description).build());
172173
return this;
173174
}
174175

175176
public <I, O> Builder defaultFunction(String name, String description,
176177
java.util.function.BiFunction<I, ToolContext, O> biFunction) {
177-
this.defaultRequest.function(name, description, biFunction);
178+
this.defaultRequest
179+
.functions(FunctionCallback.builder().function(name, biFunction).description(description).build());
178180
return this;
179181
}
180182

spring-ai-core/src/main/java/org/springframework/ai/chat/client/RequestResponseAdvisor.java

Lines changed: 0 additions & 91 deletions
This file was deleted.

spring-ai-core/src/main/java/org/springframework/ai/chat/client/advisor/QuestionAnswerAdvisor.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -246,7 +246,7 @@ private AdvisedRequest before(AdvisedRequest request) {
246246

247247
private AdvisedResponse after(AdvisedResponse advisedResponse) {
248248
ChatResponse.Builder chatResponseBuilder = ChatResponse.builder().from(advisedResponse.response());
249-
chatResponseBuilder.withMetadata(RETRIEVED_DOCUMENTS, advisedResponse.adviseContext().get(RETRIEVED_DOCUMENTS));
249+
chatResponseBuilder.metadata(RETRIEVED_DOCUMENTS, advisedResponse.adviseContext().get(RETRIEVED_DOCUMENTS));
250250
return new AdvisedResponse(chatResponseBuilder.build(), advisedResponse.adviseContext());
251251
}
252252

spring-ai-core/src/main/java/org/springframework/ai/chat/client/advisor/SafeGuardAdvisor.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -97,7 +97,7 @@ public Flux<AdvisedResponse> aroundStream(AdvisedRequest advisedRequest, StreamA
9797

9898
private AdvisedResponse createFailureResponse(AdvisedRequest advisedRequest) {
9999
return new AdvisedResponse(ChatResponse.builder()
100-
.withGenerations(List.of(new Generation(new AssistantMessage(this.failureResponse))))
100+
.generations(List.of(new Generation(new AssistantMessage(this.failureResponse))))
101101
.build(), advisedRequest.adviseContext());
102102
}
103103

0 commit comments

Comments
 (0)