spring AI调用发生NonTransientAiException: HTTP 400 - {“object“:“error“,“message“:“[{‘type‘: ‘missing‘异常
使用spring boot3.4.7版本搭建AI项目,用的jdk21,调用本地的大模型,使用的是Open AI接口格式。调用的时候出现HTTP 400 - {"object":"error","message":"[{'type': 'missing', 'loc': ('body',), 'msg': 'Field required', 'input': None}]","type":"BadRequestError","param":null,"code":400}异常。但是我这个模型用langchain4j都能调通的。
debug发现发送http使用的是webClient对象,底层是jdk的实现,然后就换了一个实现,发现可以正常调用。

换成HTTP_COMPONENTS之后正常调用,需要加上maven依赖
<dependency>
<groupId>org.apache.httpcomponents.client5</groupId>
<artifactId>httpclient5</artifactId>
</dependency>
也是通过下面配置发现有这么多类型的客户端可以配置,实测发现,不配置下面的factory,只要引入httpclient5依赖,会自动使用HTTP_COMPONENTS。如果配置了,但是没有引入依赖,会提示类找不到。
spring:
http:
client:
factory: http_components
浙公网安备 33010602011771号