a same request ,run it, and it will become sometimes it's good, sometimes it's abnormal. The following are the abnormal information:

2025-05-19 19:24:57 ERROR o.s.a.m.o.ErrorLoggingObservationHandler - Traced Error: java.lang.IllegalArgumentException: toolInput cannot be null or empty at org.springframework.util.Assert.hasText(Assert.java:253) Suppressed: reactor.core.publisher.FluxOnAssembly$OnAssemblyException: Assembly trace from producer [reactor.core.publisher.FluxDefer] : reactor.core.publisher.Flux.defer(Flux.java:810) org.springframework.ai.openai.OpenAiChatModel.lambda$internalStream$11(OpenAiChatModel.java:362) Error has been observed at the following site(s): _Flux.defer ⇢ at org.springframework.ai.openai.OpenAiChatModel.lambda$internalStream$11(OpenAiChatModel.java:362) | Flux.subscribeOn ⇢ at org.springframework.ai.openai.OpenAiChatModel.lambda$internalStream$11(OpenAiChatModel.java:377) __Flux.flatMap ⇢ at org.springframework.ai.openai.OpenAiChatModel.lambda$internalStream$14(OpenAiChatModel.java:360) Original Stack Trace: at org.springframework.util.Assert.hasText(Assert.java:253) at org.springframework.ai.tool.method.MethodToolCallback.call(MethodToolCallback.java:99) at org.springframework.ai.model.tool.DefaultToolCallingManager.executeToolCall(DefaultToolCallingManager.java:205) at org.springframework.ai.model.tool.DefaultToolCallingManager.executeToolCalls(DefaultToolCallingManager.java:128) at org.springframework.ai.openai.OpenAiChatModel.lambda$internalStream$10(OpenAiChatModel.java:365) at reactor.core.publisher.FluxDefer.subscribe(FluxDefer.java:46) at reactor.core.publisher.InternalFluxOperator.subscribe(InternalFluxOperator.java:68) at reactor.core.publisher.FluxSubscribeOn$SubscribeOnSubscriber.run(FluxSubscribeOn.java:194) at reactor.core.scheduler.WorkerTask.call(WorkerTask.java:84) at reactor.core.scheduler.WorkerTask.call(WorkerTask.java:37) at java.base/java.util.concurrent.FutureTask.run$$$capture(FutureTask.java:264) at java.base/java.util.concurrent.FutureTask.run(FutureTask.java) at java.base/java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:304) at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:840) 2025-05-19 19:24:57 ERROR o.s.ai.chat.model.MessageAggregator - Aggregation Error java.lang.IllegalArgumentException: toolInput cannot be null or empty at org.springframework.util.Assert.hasText(Assert.java:253) Suppressed: reactor.core.publisher.FluxOnAssembly$OnAssemblyException: Assembly trace from producer [reactor.core.publisher.FluxDefer] : reactor.core.publisher.Flux.defer(Flux.java:810) org.springframework.ai.openai.OpenAiChatModel.lambda$internalStream$11(OpenAiChatModel.java:362) Error has been observed at the following site(s): ____Flux.defer ⇢ at org.springframework.ai.openai.OpenAiChatModel.lambda$internalStream$11(OpenAiChatModel.java:362) |_ Flux.subscribeOn ⇢ at org.springframework.ai.openai.OpenAiChatModel.lambda$internalStream$11(OpenAiChatModel.java:377) _Flux.flatMap ⇢ at org.springframework.ai.openai.OpenAiChatModel.lambda$internalStream$14(OpenAiChatModel.java:360) | Flux.doOnError ⇢ at org.springframework.ai.openai.OpenAiChatModel.lambda$internalStream$14(OpenAiChatModel.java:383) | Flux.doFinally ⇢ at org.springframework.ai.openai.OpenAiChatModel.lambda$internalStream$14(OpenAiChatModel.java:384) | Flux.contextWrite ⇢ at org.springframework.ai.openai.OpenAiChatModel.lambda$internalStream$14(OpenAiChatModel.java:385) | Flux.doOnSubscribe ⇢ at org.springframework.ai.chat.model.MessageAggregator.aggregate(MessageAggregator.java:94) | Flux.doOnNext ⇢ at org.springframework.ai.chat.model.MessageAggregator.aggregate(MessageAggregator.java:105) |_ Flux.doOnComplete ⇢ at org.springframework.ai.chat.model.MessageAggregator.aggregate(MessageAggregator.java:144) Original Stack Trace: at org.springframework.util.Assert.hasText(Assert.java:253) at org.springframework.ai.tool.method.MethodToolCallback.call(MethodToolCallback.java:99) at org.springframework.ai.model.tool.DefaultToolCallingManager.executeToolCall(DefaultToolCallingManager.java:205) at org.springframework.ai.model.tool.DefaultToolCallingManager.executeToolCalls(DefaultToolCallingManager.java:128) at org.springframework.ai.openai.OpenAiChatModel.lambda$internalStream$10(OpenAiChatModel.java:365) at reactor.core.publisher.FluxDefer.subscribe(FluxDefer.java:46) at reactor.core.publisher.InternalFluxOperator.subscribe(InternalFluxOperator.java:68) at reactor.core.publisher.FluxSubscribeOn$SubscribeOnSubscriber.run(FluxSubscribeOn.java:194) at reactor.core.scheduler.WorkerTask.call(WorkerTask.java:84) at reactor.core.scheduler.WorkerTask.call(WorkerTask.java:37) at java.base/java.util.concurrent.FutureTask.run$$$capture(FutureTask.java:264) at java.base/java.util.concurrent.FutureTask.run(FutureTask.java) at java.base/java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:304) at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) at java.base/java.lang.Thread.run(Thread.java:840) 2025-05-19 19:24:57 ERROR o.s.a.m.o.ErrorLoggingObservationHandler - Traced Error: java.lang.IllegalArgumentException: toolInput cannot be null or empty

the code is simple below:

Image

Image

Comment From: lanyuanxiaoyao

Maybe you need this. https://github.com/spring-projects/spring-ai/issues/3234