当前位置: 首页 > news >正文

解决LangChain4j报错HTTP/1.1 header parser received no bytes

问题描述

当使用langchain4j-open-ai调用自己部署的大模型服务时报错:

public static void main(String[] args) {OpenAiChatModel model = OpenAiChatModel.builder().apiKey("none").modelName("qwen2.5-instruct").baseUrl("http://192.168.0.84:9997/v1").build();System.out.println(model.chat("你好"));
}

报错信息如下:

18:39:50.412 [main] WARN dev.langchain4j.internal.RetryUtils -- A retriable exception occurred. Remaining retries: 2 of 2
java.lang.RuntimeException: java.io.IOException: HTTP/1.1 header parser received no bytesat dev.langchain4j.http.client.jdk.JdkHttpClient.execute(JdkHttpClient.java:60)at dev.langchain4j.model.openai.internal.SyncRequestExecutor.execute(SyncRequestExecutor.java:20)at dev.langchain4j.model.openai.internal.RequestExecutor.execute(RequestExecutor.java:39)at dev.langchain4j.model.openai.OpenAiChatModel.lambda$doChat$0(OpenAiChatModel.java:143)at dev.langchain4j.internal.ExceptionMapper.withExceptionMapper(ExceptionMapper.java:29)at dev.langchain4j.internal.RetryUtils.lambda$withRetryMappingExceptions$2(RetryUtils.java:324)at dev.langchain4j.internal.RetryUtils$RetryPolicy.withRetry(RetryUtils.java:211)at dev.langchain4j.internal.RetryUtils.withRetry(RetryUtils.java:264)at dev.langchain4j.internal.RetryUtils.withRetryMappingExceptions(RetryUtils.java:324)at dev.langchain4j.internal.RetryUtils.withRetryMappingExceptions(RetryUtils.java:308)at dev.langchain4j.model.openai.OpenAiChatModel.doChat(OpenAiChatModel.java:142)at dev.langchain4j.model.chat.ChatModel.chat(ChatModel.java:46)at dev.langchain4j.model.chat.ChatModel.chat(ChatModel.java:77)at cn.daydayup.dev.langgraph4j.manus.test.main(test.java:30)
Caused by: java.io.IOException: HTTP/1.1 header parser received no bytesat java.net.http/jdk.internal.net.http.HttpClientImpl.send(HttpClientImpl.java:589)at java.net.http/jdk.internal.net.http.HttpClientFacade.send(HttpClientFacade.java:123)at dev.langchain4j.http.client.jdk.JdkHttpClient.execute(JdkHttpClient.java:50)... 13 common frames omitted
Caused by: java.io.IOException: HTTP/1.1 header parser received no bytesat java.net.http/jdk.internal.net.http.common.Utils.wrapWithExtraDetail(Utils.java:348)at java.net.http/jdk.internal.net.http.Http1Response$HeadersReader.onReadError(Http1Response.java:675)at java.net.http/jdk.internal.net.http.Http1AsyncReceiver.checkForErrors(Http1AsyncReceiver.java:302)at java.net.http/jdk.internal.net.http.Http1AsyncReceiver.flush(Http1AsyncReceiver.java:268)at java.net.http/jdk.internal.net.http.common.SequentialScheduler$LockingRestartableTask.run(SequentialScheduler.java:205)at java.net.http/jdk.internal.net.http.common.SequentialScheduler$CompleteRestartableTask.run(SequentialScheduler.java:149)at java.net.http/jdk.internal.net.http.common.SequentialScheduler$SchedulableTask.run(SequentialScheduler.java:230)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:842)
Caused by: java.net.SocketException: Connection resetat java.base/sun.nio.ch.SocketChannelImpl.throwConnectionReset(SocketChannelImpl.java:394)at java.base/sun.nio.ch.SocketChannelImpl.read(SocketChannelImpl.java:426)at java.net.http/jdk.internal.net.http.SocketTube.readAvailable(SocketTube.java:1170)at java.net.http/jdk.internal.net.http.SocketTube$InternalReadPublisher$InternalReadSubscription.read(SocketTube.java:833)at java.net.http/jdk.internal.net.http.SocketTube$SocketFlowTask.run(SocketTube.java:181)at java.net.http/jdk.internal.net.http.common.SequentialScheduler$SchedulableTask.run(SequentialScheduler.java:230)at java.net.http/jdk.internal.net.http.common.SequentialScheduler.runOrSchedule(SequentialScheduler.java:303)at java.net.http/jdk.internal.net.http.common.SequentialScheduler.runOrSchedule(SequentialScheduler.java:256)at java.net.http/jdk.internal.net.http.SocketTube$InternalReadPublisher$InternalReadSubscription.signalReadable(SocketTube.java:774)at java.net.http/jdk.internal.net.http.SocketTube$InternalReadPublisher$ReadEvent.signalEvent(SocketTube.java:957)at java.net.http/jdk.internal.net.http.SocketTube$SocketFlowEvent.handle(SocketTube.java:253)at java.net.http/jdk.internal.net.http.HttpClientImpl$SelectorManager.handleEvent(HttpClientImpl.java:982)at java.net.http/jdk.internal.net.http.HttpClientImpl$SelectorManager.lambda$run$3(HttpClientImpl.java:937)at java.base/java.util.ArrayList.forEach(ArrayList.java:1511)at java.net.http/jdk.internal.net.http.HttpClientImpl$SelectorManager.run(HttpClientImpl.java:937)
18:39:51.036 [main] WARN dev.langchain4j.internal.RetryUtils -- A retriable exception occurred. Remaining retries: 1 of 2
java.lang.RuntimeException: java.io.IOException: HTTP/1.1 header parser received no bytesat dev.langchain4j.http.client.jdk.JdkHttpClient.execute(JdkHttpClient.java:60)at dev.langchain4j.model.openai.internal.SyncRequestExecutor.execute(SyncRequestExecutor.java:20)at dev.langchain4j.model.openai.internal.RequestExecutor.execute(RequestExecutor.java:39)at dev.langchain4j.model.openai.OpenAiChatModel.lambda$doChat$0(OpenAiChatModel.java:143)at dev.langchain4j.internal.ExceptionMapper.withExceptionMapper(ExceptionMapper.java:29)at dev.langchain4j.internal.RetryUtils.lambda$withRetryMappingExceptions$2(RetryUtils.java:324)at dev.langchain4j.internal.RetryUtils$RetryPolicy.withRetry(RetryUtils.java:211)at dev.langchain4j.internal.RetryUtils.withRetry(RetryUtils.java:264)at dev.langchain4j.internal.RetryUtils.withRetryMappingExceptions(RetryUtils.java:324)at dev.langchain4j.internal.RetryUtils.withRetryMappingExceptions(RetryUtils.java:308)at dev.langchain4j.model.openai.OpenAiChatModel.doChat(OpenAiChatModel.java:142)at dev.langchain4j.model.chat.ChatModel.chat(ChatModel.java:46)at dev.langchain4j.model.chat.ChatModel.chat(ChatModel.java:77)at cn.daydayup.dev.langgraph4j.manus.test.main(test.java:30)
Caused by: java.io.IOException: HTTP/1.1 header parser received no bytesat java.net.http/jdk.internal.net.http.HttpClientImpl.send(HttpClientImpl.java:589)at java.net.http/jdk.internal.net.http.HttpClientFacade.send(HttpClientFacade.java:123)at dev.langchain4j.http.client.jdk.JdkHttpClient.execute(JdkHttpClient.java:50)... 13 common frames omitted
Caused by: java.io.IOException: HTTP/1.1 header parser received no bytesat java.net.http/jdk.internal.net.http.common.Utils.wrapWithExtraDetail(Utils.java:348)at java.net.http/jdk.internal.net.http.Http1Response$HeadersReader.onReadError(Http1Response.java:675)at java.net.http/jdk.internal.net.http.Http1AsyncReceiver.checkForErrors(Http1AsyncReceiver.java:302)at java.net.http/jdk.internal.net.http.Http1AsyncReceiver.flush(Http1AsyncReceiver.java:268)at java.net.http/jdk.internal.net.http.common.SequentialScheduler$LockingRestartableTask.run(SequentialScheduler.java:205)at java.net.http/jdk.internal.net.http.common.SequentialScheduler$CompleteRestartableTask.run(SequentialScheduler.java:149)at java.net.http/jdk.internal.net.http.common.SequentialScheduler$SchedulableTask.run(SequentialScheduler.java:230)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:842)
Caused by: java.net.SocketException: Connection resetat java.base/sun.nio.ch.SocketChannelImpl.throwConnectionReset(SocketChannelImpl.java:394)at java.base/sun.nio.ch.SocketChannelImpl.read(SocketChannelImpl.java:426)at java.net.http/jdk.internal.net.http.SocketTube.readAvailable(SocketTube.java:1170)at java.net.http/jdk.internal.net.http.SocketTube$InternalReadPublisher$InternalReadSubscription.read(SocketTube.java:833)at java.net.http/jdk.internal.net.http.SocketTube$SocketFlowTask.run(SocketTube.java:181)at java.net.http/jdk.internal.net.http.common.SequentialScheduler$SchedulableTask.run(SequentialScheduler.java:230)at java.net.http/jdk.internal.net.http.common.SequentialScheduler.runOrSchedule(SequentialScheduler.java:303)at java.net.http/jdk.internal.net.http.common.SequentialScheduler.runOrSchedule(SequentialScheduler.java:256)at java.net.http/jdk.internal.net.http.SocketTube$InternalReadPublisher$InternalReadSubscription.signalReadable(SocketTube.java:774)at java.net.http/jdk.internal.net.http.SocketTube$InternalReadPublisher$ReadEvent.signalEvent(SocketTube.java:957)at java.net.http/jdk.internal.net.http.SocketTube$SocketFlowEvent.handle(SocketTube.java:253)at java.net.http/jdk.internal.net.http.HttpClientImpl$SelectorManager.handleEvent(HttpClientImpl.java:982)at java.net.http/jdk.internal.net.http.HttpClientImpl$SelectorManager.lambda$run$3(HttpClientImpl.java:937)at java.base/java.util.ArrayList.forEach(ArrayList.java:1511)at java.net.http/jdk.internal.net.http.HttpClientImpl$SelectorManager.run(HttpClientImpl.java:937)
Exception in thread "main" java.lang.RuntimeException: java.io.IOException: HTTP/1.1 header parser received no bytesat dev.langchain4j.http.client.jdk.JdkHttpClient.execute(JdkHttpClient.java:60)at dev.langchain4j.model.openai.internal.SyncRequestExecutor.execute(SyncRequestExecutor.java:20)at dev.langchain4j.model.openai.internal.RequestExecutor.execute(RequestExecutor.java:39)at dev.langchain4j.model.openai.OpenAiChatModel.lambda$doChat$0(OpenAiChatModel.java:143)at dev.langchain4j.internal.ExceptionMapper.withExceptionMapper(ExceptionMapper.java:29)at dev.langchain4j.internal.RetryUtils.lambda$withRetryMappingExceptions$2(RetryUtils.java:324)at dev.langchain4j.internal.RetryUtils$RetryPolicy.withRetry(RetryUtils.java:211)at dev.langchain4j.internal.RetryUtils.withRetry(RetryUtils.java:264)at dev.langchain4j.internal.RetryUtils.withRetryMappingExceptions(RetryUtils.java:324)at dev.langchain4j.internal.RetryUtils.withRetryMappingExceptions(RetryUtils.java:308)at dev.langchain4j.model.openai.OpenAiChatModel.doChat(OpenAiChatModel.java:142)at dev.langchain4j.model.chat.ChatModel.chat(ChatModel.java:46)at dev.langchain4j.model.chat.ChatModel.chat(ChatModel.java:77)at cn.daydayup.dev.langgraph4j.manus.test.main(test.java:30)
Caused by: java.io.IOException: HTTP/1.1 header parser received no bytesat java.net.http/jdk.internal.net.http.HttpClientImpl.send(HttpClientImpl.java:589)at java.net.http/jdk.internal.net.http.HttpClientFacade.send(HttpClientFacade.java:123)at dev.langchain4j.http.client.jdk.JdkHttpClient.execute(JdkHttpClient.java:50)... 13 more
Caused by: java.io.IOException: HTTP/1.1 header parser received no bytesat java.net.http/jdk.internal.net.http.common.Utils.wrapWithExtraDetail(Utils.java:348)at java.net.http/jdk.internal.net.http.Http1Response$HeadersReader.onReadError(Http1Response.java:675)at java.net.http/jdk.internal.net.http.Http1AsyncReceiver.checkForErrors(Http1AsyncReceiver.java:302)at java.net.http/jdk.internal.net.http.Http1AsyncReceiver.flush(Http1AsyncReceiver.java:268)at java.net.http/jdk.internal.net.http.common.SequentialScheduler$LockingRestartableTask.run(SequentialScheduler.java:205)at java.net.http/jdk.internal.net.http.common.SequentialScheduler$CompleteRestartableTask.run(SequentialScheduler.java:149)at java.net.http/jdk.internal.net.http.common.SequentialScheduler$SchedulableTask.run(SequentialScheduler.java:230)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:842)
Caused by: java.net.SocketException: Connection resetat java.base/sun.nio.ch.SocketChannelImpl.throwConnectionReset(SocketChannelImpl.java:394)at java.base/sun.nio.ch.SocketChannelImpl.read(SocketChannelImpl.java:426)at java.net.http/jdk.internal.net.http.SocketTube.readAvailable(SocketTube.java:1170)at java.net.http/jdk.internal.net.http.SocketTube$InternalReadPublisher$InternalReadSubscription.read(SocketTube.java:833)at java.net.http/jdk.internal.net.http.SocketTube$SocketFlowTask.run(SocketTube.java:181)at java.net.http/jdk.internal.net.http.common.SequentialScheduler$SchedulableTask.run(SequentialScheduler.java:230)at java.net.http/jdk.internal.net.http.common.SequentialScheduler.runOrSchedule(SequentialScheduler.java:303)at java.net.http/jdk.internal.net.http.common.SequentialScheduler.runOrSchedule(SequentialScheduler.java:256)at java.net.http/jdk.internal.net.http.SocketTube$InternalReadPublisher$InternalReadSubscription.signalReadable(SocketTube.java:774)at java.net.http/jdk.internal.net.http.SocketTube$InternalReadPublisher$ReadEvent.signalEvent(SocketTube.java:957)at java.net.http/jdk.internal.net.http.SocketTube$SocketFlowEvent.handle(SocketTube.java:253)at java.net.http/jdk.internal.net.http.HttpClientImpl$SelectorManager.handleEvent(HttpClientImpl.java:982)at java.net.http/jdk.internal.net.http.HttpClientImpl$SelectorManager.lambda$run$3(HttpClientImpl.java:937)at java.base/java.util.ArrayList.forEach(ArrayList.java:1511)at java.net.http/jdk.internal.net.http.HttpClientImpl$SelectorManager.run(HttpClientImpl.java:937)

解决方法

public static void main(String[] args) {HttpClient.Builder httpClientBuilder = HttpClient.newBuilder().version(HttpClient.Version.HTTP_1_1);JdkHttpClientBuilder jdkHttpClientBuilder = JdkHttpClient.builder().httpClientBuilder(httpClientBuilder);OpenAiChatModel model = OpenAiChatModel.builder().httpClientBuilder(jdkHttpClientBuilder).apiKey("none").modelName("qwen2.5-instruct").baseUrl("http://192.168.0.84:9997/v1").build();System.out.println(model.chat("你好"));
}
http://www.xdnf.cn/news/400789.html

相关文章:

  • 精益数据分析(56/126):创业阶段的划分与精益数据分析实践
  • ElasticSearch聚合操作案例
  • Oracle adg环境下调整redo日志组以及standby日志组大小
  • CSDN博客粘贴图片失败如何解决
  • 佰力博科技与您探讨阻抗谱测量的基本原理和测量方法
  • 【言语】刷题2
  • Qt5.14.2 链接 MySQL 8.4 遇到的问题
  • 第三方软件测评中心分享:软件功能测试类型和测试工具
  • 动手学深度学习12.4.硬件-笔记练习(PyTorch)
  • # 实时英文 OCR 文字识别:从摄像头到 PyQt5 界面的实现
  • python 的 ​uv、pip​ 和 ​conda​ 对比和技术选型
  • 安卓玩机工具-----安卓机型一款很好用的数据备份恢复软件 支持云端备份
  • C#中SetProperty方法使用
  • Qt进阶开发:QTcpServer的的详解
  • 对抗进行性核上性麻痹,健康护理筑牢生活防线
  • Golang 应用的 CI/CD 与 K8S 自动化部署全流程指南
  • 深度拆解!MES如何重构生产计划与排产调度全流程?
  • 【软件工程】软件缺陷 基于组合的优化方法
  • 获取高德地图JS API的安全密钥和Key的方法
  • HBase进阶之路:从原理到实战的深度探索
  • 1.6 偏导数
  • Ollama+OpenWebUI+docker附带软件下载链接,配置流程,适合内网部署,可以多人内网使用
  • CSS3(BFC)
  • 智能家居“心脏“升级战:GD25Q127CSIG国产芯片如何重构家庭物联生态
  • Lodash isEqual 方法源码实现分析
  • 企业级商城系统容器化部署技术方案
  • 【Linux】socket网络编程之TCP
  • mac M2下虚拟机CentOS 8 安装上安装 Berkeley DB
  • tar -zxvf jdk-8u212-linux-x64.tar.gz -C /opt/module/这个代码的解释
  • 2.3 定积分