From 60c38614e482ac2b696b42f5011c0713b66b2508 Mon Sep 17 00:00:00 2001 From: wangbing Date: Mon, 17 Mar 2025 09:18:35 +0800 Subject: [PATCH] =?UTF-8?q?=E4=B8=8A=E4=BC=A0=E5=A4=87=E4=BB=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pom.xml | 6 ++-- .../java/xyz/wbsite/ai/TestStreamChat.java | 34 ++++++++++++------- 2 files changed, 24 insertions(+), 16 deletions(-) diff --git a/pom.xml b/pom.xml index cfc2d8e..599e7ca 100644 --- a/pom.xml +++ b/pom.xml @@ -9,9 +9,9 @@ jar - 1.8 + 17 - 1.0.0-beta1 + 1.0.0-beta2 @@ -50,7 +50,7 @@ cn.hutool hutool-all - 5.8.0.M2 + 5.8.24 diff --git a/src/main/java/xyz/wbsite/ai/TestStreamChat.java b/src/main/java/xyz/wbsite/ai/TestStreamChat.java index bd75309..eed13c7 100644 --- a/src/main/java/xyz/wbsite/ai/TestStreamChat.java +++ b/src/main/java/xyz/wbsite/ai/TestStreamChat.java @@ -1,10 +1,13 @@ package xyz.wbsite.ai; import cn.hutool.core.collection.CollUtil; +import cn.hutool.core.thread.ThreadUtil; import dev.langchain4j.data.message.AiMessage; import dev.langchain4j.data.message.ChatMessage; import dev.langchain4j.data.message.UserMessage; import dev.langchain4j.model.StreamingResponseHandler; +import dev.langchain4j.model.chat.response.ChatResponse; +import dev.langchain4j.model.chat.response.StreamingChatResponseHandler; import dev.langchain4j.model.openai.OpenAiStreamingChatModel; import dev.langchain4j.model.output.Response; @@ -26,20 +29,25 @@ public class TestStreamChat { UserMessage.from("假如树上有10只鸟,10分钟前飞走了2只,5分钟前又飞回了1只,刚刚又来了3只,那现在树上有几只鸟?") ); - model.generate(messages, new StreamingResponseHandler() { + ThreadUtil.execAsync(new Runnable() { @Override - public void onNext(String s) { - System.out.print(s); - } - - @Override - public void onError(Throwable throwable) { - System.err.println(throwable.getMessage()); - } - - @Override - public void onComplete(Response response) { - System.out.println("onComplete"); + public void run() { + model.chat(messages, new StreamingChatResponseHandler(){ + @Override + public void onPartialResponse(String s) { + System.out.print(s); + } + + @Override + public void onCompleteResponse(ChatResponse chatResponse) { + System.out.println("onComplete"); + } + + @Override + public void onError(Throwable throwable) { + System.err.println(throwable.getMessage()); + } + }); } }); }