From 24681c81c09022f584a57006f2534b5f74723414 Mon Sep 17 00:00:00 2001
From: 云 <2163098428@qq.com>
Date: 星期二, 30 六月 2026 09:27:31 +0800
Subject: [PATCH] 初始化项目

---
 yudao-module-ai/src/test/java/cn/iocoder/yudao/module/ai/framework/ai/core/model/chat/OpenAIChatModelTests.java |   35 +++++++++++++++++++++--------------
 1 files changed, 21 insertions(+), 14 deletions(-)

diff --git a/yudao-module-ai/src/test/java/cn/iocoder/yudao/module/ai/framework/ai/core/model/chat/OpenAIChatModelTests.java b/yudao-module-ai/src/test/java/cn/iocoder/yudao/module/ai/framework/ai/core/model/chat/OpenAIChatModelTests.java
index 9f1d6eb..9c5fa52 100644
--- a/yudao-module-ai/src/test/java/cn/iocoder/yudao/module/ai/framework/ai/core/model/chat/OpenAIChatModelTests.java
+++ b/yudao-module-ai/src/test/java/cn/iocoder/yudao/module/ai/framework/ai/core/model/chat/OpenAIChatModelTests.java
@@ -1,7 +1,6 @@
 package cn.iocoder.yudao.module.ai.framework.ai.core.model.chat;
 
-import com.openai.client.okhttp.OpenAIOkHttpClient;
-import com.azure.ai.openai.models.ReasoningEffortValue;
+import cn.hutool.system.SystemUtil;
 import org.junit.jupiter.api.Disabled;
 import org.junit.jupiter.api.Test;
 import org.springframework.ai.chat.messages.Message;
@@ -17,6 +16,8 @@
 import java.util.List;
 import java.util.Objects;
 
+import static cn.iocoder.yudao.module.ai.util.AiUtils.validateApiKey;
+
 /**
  * {@link OpenAiChatModel} 闆嗘垚娴嬭瘯
  *
@@ -24,14 +25,18 @@
  */
 public class OpenAIChatModelTests {
 
+    private static final String BASE_URL = SystemUtil.get("OPENAI_BASE_URL",
+            "https://api.teamorouter.com/v1");
+    private static final String API_KEY = SystemUtil.get("OPENAI_API_KEY",
+            "sk-xxxx"); // 鎸夐渶鏀规垚浣犵殑 OpenAI API Key
+    private static final String MODEL = SystemUtil.get("OPENAI_MODEL",
+            "gpt-5.5");
+
     private final OpenAiChatModel chatModel = OpenAiChatModel.builder()
-            .openAiClient(OpenAIOkHttpClient.builder()
-                    .baseUrl("https://api.holdai.top")
-                    .apiKey("sk-z5joyRoV1iFEnh2SAi8QPNrIZTXyQSyxTmD5CoNDQbFixK2l") // apiKey
-                    .build())
             .options(OpenAiChatOptions.builder()
-                    .model("gpt-5-nano-2025-08-07") // 妯″瀷
-//                    .model("o1") // 妯″瀷
+                    .baseUrl(BASE_URL)
+                    .apiKey(API_KEY)
+                    .model(MODEL)
                     .temperature(0.7)
                     .build())
             .build();
@@ -39,6 +44,7 @@
     @Test
     @Disabled
     public void testCall() {
+        validateApiKey(API_KEY);
         // 鍑嗗鍙傛暟
         List<Message> messages = new ArrayList<>();
         messages.add(new SystemMessage("浣犳槸涓�涓紭璐ㄧ殑鏂囪█鏂囦綔鑰咃紝鐢ㄦ枃瑷�鏂囨弿杩扮潃鍚勫煄甯傜殑浜烘枃椋庢櫙銆�"));
@@ -54,6 +60,7 @@
     @Test
     @Disabled
     public void testStream() {
+        validateApiKey(API_KEY);
         // 鍑嗗鍙傛暟
         List<Message> messages = new ArrayList<>();
         messages.add(new SystemMessage("浣犳槸涓�涓紭璐ㄧ殑鏂囪█鏂囦綔鑰咃紝鐢ㄦ枃瑷�鏂囨弿杩扮潃鍚勫煄甯傜殑浜烘枃椋庢櫙銆�"));
@@ -72,14 +79,16 @@
     @Test
     @Disabled
     public void testStream_thinking() {
+        validateApiKey(API_KEY);
         // 鍑嗗鍙傛暟
         List<Message> messages = new ArrayList<>();
         messages.add(new UserMessage("璇︾粏鍒嗘瀽涓嬶紝濡備綍璁捐涓�涓數鍟嗙郴缁燂紵"));
         OpenAiChatOptions options = OpenAiChatOptions.builder()
-                .model("gpt-5")
-//                .model("o4-mini")
-//                .model("o3-pro")
-                .reasoningEffort(ReasoningEffortValue.LOW.getValue())
+                .baseUrl(BASE_URL)
+                .apiKey(API_KEY)
+                .model(MODEL)
+                .reasoningEffort("low") // https://help.openai.com/zh-hant/articles/5072518-controlling-the-length-of-openai-model-responses
+                .maxCompletionTokens(1024)
                 .build();
 
         // 璋冪敤
@@ -90,7 +99,5 @@
             System.out.println(Objects.requireNonNull(response.getResult()).getOutput());
         }).then().block();
     }
-
-
 
 }

--
Gitblit v1.9.3