解决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.mzph.cn/web/79622.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

阿里云codeup以及本地gitclone+http

cmd命令行乱码问题、解决 chcp 65001 git代码提交 git add . git commit -m init git push origin master

2025.05.07-淘天算法岗-第二题

📌 点击直达笔试专栏 👉《大厂笔试突围》 💻 春秋招笔试突围在线OJ 👉 笔试突围OJ 02. 完美拼图挑战 问题描述 A先生是一位拼图爱好者,他有两种形状的拼图块: a a a

Spring Boot中Redis序列化配置详解

精心整理了最新的面试资料和简历模板,有需要的可以自行获取 点击前往百度网盘获取 点击前往夸克网盘获取 引言 在使用Spring Boot集成Redis时,序列化方式的选择直接影响数据存储的效率和系统兼容性。默认的JDK序列化存在可读性差、存储空间大等问题&am…

紫禁城多语言海外投资理财返利源码带前端uniapp纯工程文件

测试环境:Linux系统CentOS7.6、宝塔、PHP7.2、MySQL5.6,根目录public,伪静态thinkphp,开启ssl证书 语言:中文简体、英文、越南语、马来语、日语、巴西语、印尼语、泰语 前端是uniapp的源码,我已经把nmp给你…

搭建大数据学习的平台

一、基础环境准备 1. 硬件配置 物理机:建议 16GB 内存以上,500GB 硬盘,多核 CPU虚拟机:至少 3 台(1 主 2 从),每台 4GB 内存,50GB 硬盘 2. 操作系统 Ubuntu 20.04 LTS 或 CentOS…

Linux 软硬连接详解

目录 一、软链接(Symbolic Link) ‌定义与特性 ‌实现方法‌使用 ln -s 命令: 二、硬链接(Hard Link) 1、是什么 2、工作机制 3、实现方式 一、软链接(Symbolic Link) ‌定义与特性 定义…

每日c/c++题 备战蓝桥杯(洛谷P1115 最大子段和)

洛谷P1115 最大子段和 题解 题目描述 最大子段和是一道经典的动态规划问题。题目要求:给定一个包含n个整数的序列,找出其中和最大的连续子序列,并输出该最大和。若所有数均为负数,则取最大的那个数。 输入格式: 第…

前端取经路——框架修行:React与Vue的双修之路

大家好,我是老十三,一名前端开发工程师。在前端的江湖中,React与Vue如同两大武林门派,各有千秋。今天,我将带你进入这两大框架的奥秘世界,共同探索组件生命周期、状态管理、性能优化等核心难题的解决之道。无论你是哪派弟子,掌握双修之术,才能在前端之路上游刃有余。准…

PyTorch API 1 - 概述、数学运算、nn、实用工具、函数、张量

文章目录 torch张量创建操作索引、切片、连接与变异操作 加速器生成器随机采样原地随机采样准随机采样 序列化并行计算局部禁用梯度计算数学运算常量逐点运算归约操作比较运算频谱操作其他操作BLAS 和 LAPACK 运算遍历操作遍历操作遍历操作遍历操作遍历操作遍历操作遍历操作遍历…

java命令行打包class为jar并运行

1.创建无包名类: 2.添加依赖jackson 3.引用依赖包 4.命令编译class文件 生成命令: javac -d out -classpath lib/jackson-core-2.13.3.jar:lib/jackson-annotations-2.13.3.jar:lib/jackson-databind-2.13.3.jar src/UdpServer.java 编译生成class文件如下 <

ABC 转 STL 全攻略:格式解析、方法实操与问题解决

在 3D 建模与设计领域&#xff0c;不同格式文件间的转换是一项基础且重要的操作。ABC&#xff08;Alembic&#xff09;和 STL&#xff08;Standard Triangle Language&#xff09;是其中常见的两种格式。ABC 格式因其高效存储和传输 3D 数据的特性&#xff0c;常被用于影视特效…

编写一个处理txt的loader插件,适用于wbepack

处理txt的webpack的loader插件 编写一个处理txt的loader插件&#xff0c;适用于wbepack 编写一个处理txt的loader插件&#xff0c;适用于wbepack 实现一个处理txt的插件&#xff0c;给文本每行前后添加**** module.exports function txtLoader(content) {// 确保 Loader 是异…

DeepSeek的100个应用场景

在春节前夕&#xff0c;浙江杭州的AI企业DeepSeek推出了其开源模型DeepSeek-R1&#xff0c;以仅相当于Open AI最新模型1/30的训练成本&#xff0c;在数学、编程等关键领域展现出媲美GPT-o1的出色性能。发布仅数日&#xff0c;DeepSeek-R1便迅速攀升至中美两国苹果应用商店免费榜…

ev_loop_fork函数

libev监视器介绍&#xff1a;libev监视器用法-CSDN博客 libev loop对象介绍&#xff1a;loop对象-CSDN博客 libev ev_loop_fork函数介绍:ev_loop_fork函数-CSDN博客 libev API吐血整理&#xff1a;https://download.csdn.net/download/qq_39466755/90794251?spm1001.2014.3…

【PostgreSQL数据分析实战:从数据清洗到可视化全流程】金融风控分析案例-10.1 风险数据清洗与特征工程

&#x1f449; 点击关注不迷路 &#x1f449; 点击关注不迷路 &#x1f449; 点击关注不迷路 文章大纲 PostgreSQL金融风控分析案例&#xff1a;风险数据清洗与特征工程实战一、案例背景&#xff1a;金融风控数据处理需求二、风险数据清洗实战&#xff08;一&#xff09;缺失值…

OpenCV 的 CUDA 模块中用于将一个多通道 GpuMat 图像拆分成多个单通道图像的函数split()

操作系统&#xff1a;ubuntu22.04 OpenCV版本&#xff1a;OpenCV4.9 IDE:Visual Studio Code 编程语言&#xff1a;C11 算法描述 cv::cuda::split 是 OpenCV CUDA 模块中的一个函数&#xff0c;用于将一个多通道的 GpuMat 图像拆分成多个单通道的 GpuMat 图像。这个函数是 CP…

【WebRTC-13】是在哪,什么时候,创建编解码器?

Android-RTC系列软重启&#xff0c;改变以往细读源代码的方式 改为 带上实际问题分析代码。增加实用性&#xff0c;方便形成肌肉记忆。同时不分种类、不分难易程度&#xff0c;在线征集问题切入点。 问题&#xff1a;编解码器的关键实体类是什么&#xff1f;在哪里&什么时候…

c语言第一个小游戏:贪吃蛇小游戏03

我们为贪吃蛇的节点设置为一个结构体&#xff0c;构成贪吃蛇的身子的话我们使用链表&#xff0c;链表的每一个节点是一个结构体 显示贪吃蛇身子的一个节点 我们这边node就表示一个蛇的身体 就是一小节 输出结果如下 显示贪吃蛇完整身子 效果如下 代码实现 这个hasSnakeNode(…

架构思维:通用架构模式_系统监控的设计

文章目录 引言什么是监控三大常见监控类型1. 次数监控2. 性能监控3. 可用率监控 落地监控1. 服务入口2. 服务内部3. 服务依赖 监控时间间隔的取舍小结 引言 架构思维&#xff1a;通用架构模式_从设计到代码构建稳如磐石的系统 架构思维&#xff1a;通用架构模式_稳如老狗的SDK…

精益数据分析(46/126):深入剖析用户生成内容(UGC)商业模式

精益数据分析&#xff08;46/126&#xff09;&#xff1a;深入剖析用户生成内容&#xff08;UGC&#xff09;商业模式 在创业与数据分析的征程中&#xff0c;每一种商业模式都蕴含着独特的价值与挑战。今天&#xff0c;我们依旧怀揣着共同进步的信念&#xff0c;深入研读《精益…