Files
hack/tools/scripts/llm-key-hunter/results/_cache/content/be-happy4_happy-marathon.json
T

1 line
39 KiB
JSON
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
{"repo": "be-happy4/happy-marathon", "files": {"yudao-module-ai/src/test/java/cn/iocoder/yudao/module/ai/framework/ai/core/model/chat/HunYuanChatModelTests.java": {"f841241bdd37160e8224c3f99d582488c6c66b37": {"t": 1785747153.451155, "n": 5215, "h": "1fcc85770879b56e", "c": "package cn.iocoder.yudao.module.ai.framework.ai.core.model.chat;\n\nimport cn.iocoder.yudao.module.ai.framework.ai.core.model.hunyuan.HunYuanChatModel;\nimport org.junit.jupiter.api.Disabled;\nimport org.junit.jupiter.api.Test;\nimport org.springframework.ai.chat.messages.Message;\nimport org.springframework.ai.chat.messages.SystemMessage;\nimport org.springframework.ai.chat.messages.UserMessage;\nimport org.springframework.ai.chat.model.ChatResponse;\nimport org.springframework.ai.chat.prompt.Prompt;\nimport org.springframework.ai.deepseek.DeepSeekChatModel;\nimport org.springframework.ai.deepseek.DeepSeekChatOptions;\nimport org.springframework.ai.deepseek.api.DeepSeekApi;\nimport reactor.core.publisher.Flux;\n\nimport java.util.ArrayList;\nimport java.util.List;\n\n/**\n * {@link HunYuanChatModel} 集成测试\n *\n * @author 芋道源码\n */\npublic class HunYuanChatModelTests {\n\n private final DeepSeekChatModel openAiChatModel = DeepSeekChatModel.builder()\n .deepSeekApi(DeepSeekApi.builder()\n .baseUrl(HunYuanChatModel.BASE_URL)\n .completionsPath(HunYuanChatModel.COMPLETE_PATH)\n .apiKey(\"sk-abc\") // apiKey\n .build())\n .defaultOptions(DeepSeekChatOptions.builder()\n .model(HunYuanChatModel.MODEL_DEFAULT) // 模型\n .temperature(0.7)\n .build())\n .build();\n\n private final HunYuanChatModel chatModel = new HunYuanChatModel(openAiChatModel);\n\n @Test\n @Disabled\n public void testCall() {\n // 准备参数\n List<Message> messages = new ArrayList<>();\n messages.add(new SystemMessage(\"你是一个优质的文言文作者,用文言文描述着各城市的人文风景。\"));\n messages.add(new UserMessage(\"1 + 1 = ?\"));\n\n // 调用\n ChatResponse response = chatModel.call(new Prompt(messages));\n // 打印结果\n System.out.println(response);\n }\n\n @Test\n @Disabled\n public void testStream() {\n // 准备参数\n List<Message> messages = new ArrayList<>();\n messages.add(new SystemMessage(\"你是一个优质的文言文作者,用文言文描述着各城市的人文风景。\"));\n messages.add(new UserMessage(\"1 + 1 = ?\"));\n\n // 调用\n Flux<ChatResponse> flux = chatModel.stream(new Prompt(messages));\n // 打印结果\n flux.doOnNext(System.out::println).then().block();\n }\n\n @Test\n @Disabled\n public void testStream_thinking() {\n // 准备参数\n List<Message> messages = new ArrayList<>();\n messages.add(new UserMessage(\"详细分析下,如何设计一个电商系统?\"));\n DeepSeekChatOptions options = DeepSeekChatOptions.builder()\n .model(\"hunyuan-a13b\")\n// .model(\"hunyuan-turbos-latest\")\n .build();\n\n // 调用\n Flux<ChatResponse> flux = chatModel.stream(new Prompt(messages, options));\n // 打印结果\n flux.doOnNext(response -> {\n// System.out.println(response);\n System.out.println(response.getResult().getOutput());\n }).then().block();\n }\n\n private final DeepSeekChatModel deepSeekOpenAiChatModel = DeepSeekChatModel.builder()\n .deepSeekApi(DeepSeekApi.builder()\n .baseUrl(HunYuanChatModel.DEEP_SEEK_BASE_URL)\n .completionsPath(HunYuanChatModel.COMPLETE_PATH)\n .apiKey(\"sk-abc\") // apiKey\n .build())\n .defaultOptions(DeepSeekChatOptions.builder()\n// .model(HunYuanChatModel.DEEP_SEEK_MODEL_DEFAULT) // 模型(\"deepseek-v3\")\n .model(\"deepseek-r1\") // 模型(\"deepseek-r1\")\n .temperature(0.7)\n .build())\n .build();\n\n private final HunYuanChatModel deepSeekChatModel = new HunYuanChatModel(deepSeekOpenAiChatModel);\n\n @Test\n @Disabled\n public void testCall_deepseek() {\n // 准备参数\n List<Message> messages = new ArrayList<>();\n messages.add(new SystemMessage(\"你是一个优质的文言文作者,用文言文描述着各城市的人文风景。\"));\n messages.add(new UserMessage(\"1 + 1 = ?\"));\n\n // 调用\n ChatResponse response = deepSeekChatModel.call(new Prompt(messages));\n // 打印结果\n System.out.println(response);\n }\n\n @Test\n @Disabled\n public void testStream_deepseek() {\n // 准备参数\n List<Message> messages = new ArrayList<>();\n messages.add(new SystemMessage(\"你是一个优质的文言文作者,用文言文描述着各城市的人文风景。\"));\n messages.add(new UserMessage(\"1 + 1 = ?\"));\n\n // 调用\n Flux<ChatResponse> flux = deepSeekChatModel.stream(new Prompt(messages));\n // 打印结果\n flux.doOnNext(System.out::println).then().block();\n }\n\n @Test\n @Disabled\n public void testStream_deepseek_thinking() {\n // 准备参数\n List<Message> messages = new ArrayList<>();\n messages.add(new UserMessage(\"详细分析下,如何设计一个电商系统?\"));\n DeepSeekChatOptions options = DeepSeekChatOptions.builder()\n .model(\"deepseek-r1\")\n .build();\n\n // 调用\n Flux<ChatResponse> flux = deepSeekChatModel.stream(new Prompt(messages, options));\n // 打印结果\n flux.doOnNext(response -> {\n// System.out.println(response);\n System.out.println(response.getResult().getOutput());\n }).then().block();\n }\n\n}\n"}, "dfc3c6227c6180206305996b12bd3e12d416f3ea": {"t": 1785770740.3498414, "n": 5215, "h": "1fcc85770879b56e", "c": "package cn.iocoder.yudao.module.ai.framework.ai.core.model.chat;\n\nimport cn.iocoder.yudao.module.ai.framework.ai.core.model.hunyuan.HunYuanChatModel;\nimport org.junit.jupiter.api.Disabled;\nimport org.junit.jupiter.api.Test;\nimport org.springframework.ai.chat.messages.Message;\nimport org.springframework.ai.chat.messages.SystemMessage;\nimport org.springframework.ai.chat.messages.UserMessage;\nimport org.springframework.ai.chat.model.ChatResponse;\nimport org.springframework.ai.chat.prompt.Prompt;\nimport org.springframework.ai.deepseek.DeepSeekChatModel;\nimport org.springframework.ai.deepseek.DeepSeekChatOptions;\nimport org.springframework.ai.deepseek.api.DeepSeekApi;\nimport reactor.core.publisher.Flux;\n\nimport java.util.ArrayList;\nimport java.util.List;\n\n/**\n * {@link HunYuanChatModel} 集成测试\n *\n * @author 芋道源码\n */\npublic class HunYuanChatModelTests {\n\n private final DeepSeekChatModel openAiChatModel = DeepSeekChatModel.builder()\n .deepSeekApi(DeepSeekApi.builder()\n .baseUrl(HunYuanChatModel.BASE_URL)\n .completionsPath(HunYuanChatModel.COMPLETE_PATH)\n .apiKey(\"sk-abc\") // apiKey\n .build())\n .defaultOptions(DeepSeekChatOptions.builder()\n .model(HunYuanChatModel.MODEL_DEFAULT) // 模型\n .temperature(0.7)\n .build())\n .build();\n\n private final HunYuanChatModel chatModel = new HunYuanChatModel(openAiChatModel);\n\n @Test\n @Disabled\n public void testCall() {\n // 准备参数\n List<Message> messages = new ArrayList<>();\n messages.add(new SystemMessage(\"你是一个优质的文言文作者,用文言文描述着各城市的人文风景。\"));\n messages.add(new UserMessage(\"1 + 1 = ?\"));\n\n // 调用\n ChatResponse response = chatModel.call(new Prompt(messages));\n // 打印结果\n System.out.println(response);\n }\n\n @Test\n @Disabled\n public void testStream() {\n // 准备参数\n List<Message> messages = new ArrayList<>();\n messages.add(new SystemMessage(\"你是一个优质的文言文作者,用文言文描述着各城市的人文风景。\"));\n messages.add(new UserMessage(\"1 + 1 = ?\"));\n\n // 调用\n Flux<ChatResponse> flux = chatModel.stream(new Prompt(messages));\n // 打印结果\n flux.doOnNext(System.out::println).then().block();\n }\n\n @Test\n @Disabled\n public void testStream_thinking() {\n // 准备参数\n List<Message> messages = new ArrayList<>();\n messages.add(new UserMessage(\"详细分析下,如何设计一个电商系统?\"));\n DeepSeekChatOptions options = DeepSeekChatOptions.builder()\n .model(\"hunyuan-a13b\")\n// .model(\"hunyuan-turbos-latest\")\n .build();\n\n // 调用\n Flux<ChatResponse> flux = chatModel.stream(new Prompt(messages, options));\n // 打印结果\n flux.doOnNext(response -> {\n// System.out.println(response);\n System.out.println(response.getResult().getOutput());\n }).then().block();\n }\n\n private final DeepSeekChatModel deepSeekOpenAiChatModel = DeepSeekChatModel.builder()\n .deepSeekApi(DeepSeekApi.builder()\n .baseUrl(HunYuanChatModel.DEEP_SEEK_BASE_URL)\n .completionsPath(HunYuanChatModel.COMPLETE_PATH)\n .apiKey(\"sk-abc\") // apiKey\n .build())\n .defaultOptions(DeepSeekChatOptions.builder()\n// .model(HunYuanChatModel.DEEP_SEEK_MODEL_DEFAULT) // 模型(\"deepseek-v3\")\n .model(\"deepseek-r1\") // 模型(\"deepseek-r1\")\n .temperature(0.7)\n .build())\n .build();\n\n private final HunYuanChatModel deepSeekChatModel = new HunYuanChatModel(deepSeekOpenAiChatModel);\n\n @Test\n @Disabled\n public void testCall_deepseek() {\n // 准备参数\n List<Message> messages = new ArrayList<>();\n messages.add(new SystemMessage(\"你是一个优质的文言文作者,用文言文描述着各城市的人文风景。\"));\n messages.add(new UserMessage(\"1 + 1 = ?\"));\n\n // 调用\n ChatResponse response = deepSeekChatModel.call(new Prompt(messages));\n // 打印结果\n System.out.println(response);\n }\n\n @Test\n @Disabled\n public void testStream_deepseek() {\n // 准备参数\n List<Message> messages = new ArrayList<>();\n messages.add(new SystemMessage(\"你是一个优质的文言文作者,用文言文描述着各城市的人文风景。\"));\n messages.add(new UserMessage(\"1 + 1 = ?\"));\n\n // 调用\n Flux<ChatResponse> flux = deepSeekChatModel.stream(new Prompt(messages));\n // 打印结果\n flux.doOnNext(System.out::println).then().block();\n }\n\n @Test\n @Disabled\n public void testStream_deepseek_thinking() {\n // 准备参数\n List<Message> messages = new ArrayList<>();\n messages.add(new UserMessage(\"详细分析下,如何设计一个电商系统?\"));\n DeepSeekChatOptions options = DeepSeekChatOptions.builder()\n .model(\"deepseek-r1\")\n .build();\n\n // 调用\n Flux<ChatResponse> flux = deepSeekChatModel.stream(new Prompt(messages, options));\n // 打印结果\n flux.doOnNext(response -> {\n// System.out.println(response);\n System.out.println(response.getResult().getOutput());\n }).then().block();\n }\n\n}\n"}, "5caa9e9395b4143da1441fd5b99e201ea4e234c6": {"t": 1785770741.89995, "n": 3742, "h": "7fbc0886f7a68506", "c": "package cn.iocoder.yudao.module.ai.framework.ai.core.model.chat;\n\nimport cn.iocoder.yudao.module.ai.framework.ai.core.model.hunyuan.HunYuanChatModel;\nimport org.junit.jupiter.api.Disabled;\nimport org.junit.jupiter.api.Test;\nimport org.springframework.ai.chat.messages.Message;\nimport org.springframework.ai.chat.messages.SystemMessage;\nimport org.springframework.ai.chat.messages.UserMessage;\nimport org.springframework.ai.chat.model.ChatResponse;\nimport org.springframework.ai.chat.prompt.Prompt;\nimport org.springframework.ai.openai.OpenAiChatModel;\nimport org.springframework.ai.openai.OpenAiChatOptions;\nimport org.springframework.ai.openai.api.OpenAiApi;\nimport reactor.core.publisher.Flux;\n\nimport java.util.ArrayList;\nimport java.util.List;\n\n/**\n * {@link HunYuanChatModel} 集成测试\n *\n * @author 芋道源码\n */\npublic class HunYuanChatModelTests {\n\n private final OpenAiChatModel openAiChatModel = OpenAiChatModel.builder()\n .openAiApi(OpenAiApi.builder()\n .baseUrl(HunYuanChatModel.BASE_URL)\n .apiKey(\"sk-bcd\") // apiKey\n .build())\n .defaultOptions(OpenAiChatOptions.builder()\n .model(HunYuanChatModel.MODEL_DEFAULT) // 模型\n .temperature(0.7)\n .build())\n .build();\n\n private final HunYuanChatModel chatModel = new HunYuanChatModel(openAiChatModel);\n\n @Test\n @Disabled\n public void testCall() {\n // 准备参数\n List<Message> messages = new ArrayList<>();\n messages.add(new SystemMessage(\"你是一个优质的文言文作者,用文言文描述着各城市的人文风景。\"));\n messages.add(new UserMessage(\"1 + 1 = ?\"));\n\n // 调用\n ChatResponse response = chatModel.call(new Prompt(messages));\n // 打印结果\n System.out.println(response);\n }\n\n @Test\n @Disabled\n public void testStream() {\n // 准备参数\n List<Message> messages = new ArrayList<>();\n messages.add(new SystemMessage(\"你是一个优质的文言文作者,用文言文描述着各城市的人文风景。\"));\n messages.add(new UserMessage(\"1 + 1 = ?\"));\n\n // 调用\n Flux<ChatResponse> flux = chatModel.stream(new Prompt(messages));\n // 打印结果\n flux.doOnNext(System.out::println).then().block();\n }\n\n private final OpenAiChatModel deepSeekOpenAiChatModel = OpenAiChatModel.builder()\n .openAiApi(OpenAiApi.builder()\n .baseUrl(HunYuanChatModel.DEEP_SEEK_BASE_URL)\n .apiKey(\"sk-abc\") // apiKey\n .build())\n .defaultOptions(OpenAiChatOptions.builder()\n// .model(HunYuanChatModel.DEEP_SEEK_MODEL_DEFAULT) // 模型(\"deepseek-v3\")\n .model(\"deepseek-r1\") // 模型(\"deepseek-r1\")\n .temperature(0.7)\n .build())\n .build();\n\n private final HunYuanChatModel deepSeekChatModel = new HunYuanChatModel(deepSeekOpenAiChatModel);\n\n @Test\n @Disabled\n public void testCall_deepseek() {\n // 准备参数\n List<Message> messages = new ArrayList<>();\n messages.add(new SystemMessage(\"你是一个优质的文言文作者,用文言文描述着各城市的人文风景。\"));\n messages.add(new UserMessage(\"1 + 1 = ?\"));\n\n // 调用\n ChatResponse response = deepSeekChatModel.call(new Prompt(messages));\n // 打印结果\n System.out.println(response);\n }\n\n @Test\n @Disabled\n public void testStream_deekseek() {\n // 准备参数\n List<Message> messages = new ArrayList<>();\n messages.add(new SystemMessage(\"你是一个优质的文言文作者,用文言文描述着各城市的人文风景。\"));\n messages.add(new UserMessage(\"1 + 1 = ?\"));\n\n // 调用\n Flux<ChatResponse> flux = deepSeekChatModel.stream(new Prompt(messages));\n // 打印结果\n flux.doOnNext(System.out::println).then().block();\n }\n\n\n}\n"}}, "yudao-module-ai/src/test/java/cn/iocoder/yudao/module/ai/framework/ai/core/model/chat/SiliconFlowChatModelTests.java": {"f841241bdd37160e8224c3f99d582488c6c66b37": {"t": 1785747153.9690907, "n": 3244, "h": "ee18510d921fc677", "c": "package cn.iocoder.yudao.module.ai.framework.ai.core.model.chat;\n\nimport cn.iocoder.yudao.module.ai.framework.ai.core.model.siliconflow.SiliconFlowApiConstants;\nimport cn.iocoder.yudao.module.ai.framework.ai.core.model.siliconflow.SiliconFlowChatModel;\nimport org.junit.jupiter.api.Disabled;\nimport org.junit.jupiter.api.Test;\nimport org.springframework.ai.chat.messages.Message;\nimport org.springframework.ai.chat.messages.SystemMessage;\nimport org.springframework.ai.chat.messages.UserMessage;\nimport org.springframework.ai.chat.model.ChatResponse;\nimport org.springframework.ai.chat.prompt.Prompt;\nimport org.springframework.ai.deepseek.DeepSeekChatModel;\nimport org.springframework.ai.deepseek.DeepSeekChatOptions;\nimport org.springframework.ai.deepseek.api.DeepSeekApi;\nimport reactor.core.publisher.Flux;\n\nimport java.util.ArrayList;\nimport java.util.List;\n\n/**\n * {@link SiliconFlowChatModel} 集成测试\n *\n * @author 芋道源码\n */\npublic class SiliconFlowChatModelTests {\n\n private final DeepSeekChatModel openAiChatModel = DeepSeekChatModel.builder()\n .deepSeekApi(DeepSeekApi.builder()\n .baseUrl(SiliconFlowApiConstants.DEFAULT_BASE_URL)\n .apiKey(\"sk-epsakfenqnyzoxhmbucsxlhkdqlcbnimslqoivkshalvdozz\") // apiKey\n .build())\n .defaultOptions(DeepSeekChatOptions.builder()\n .model(SiliconFlowApiConstants.MODEL_DEFAULT) // 模型\n// .model(\"deepseek-ai/DeepSeek-R1\") // 模型(deepseek-ai/DeepSeek-R1)可用赠费\n// .model(\"Pro/deepseek-ai/DeepSeek-R1\") // 模型(Pro/deepseek-ai/DeepSeek-R1)需要付费\n .temperature(0.7)\n .build())\n .build();\n\n private final SiliconFlowChatModel chatModel = new SiliconFlowChatModel(openAiChatModel);\n\n @Test\n @Disabled\n public void testCall() {\n // 准备参数\n List<Message> messages = new ArrayList<>();\n messages.add(new SystemMessage(\"你是一个优质的文言文作者,用文言文描述着各城市的人文风景。\"));\n messages.add(new UserMessage(\"1 + 1 = ?\"));\n\n // 调用\n ChatResponse response = chatModel.call(new Prompt(messages));\n // 打印结果\n System.out.println(response);\n }\n\n @Test\n @Disabled\n public void testStream() {\n // 准备参数\n List<Message> messages = new ArrayList<>();\n messages.add(new SystemMessage(\"你是一个优质的文言文作者,用文言文描述着各城市的人文风景。\"));\n messages.add(new UserMessage(\"1 + 1 = ?\"));\n\n // 调用\n Flux<ChatResponse> flux = chatModel.stream(new Prompt(messages));\n // 打印结果\n flux.doOnNext(System.out::println).then().block();\n }\n\n @Test\n @Disabled\n public void testStream_thinking() {\n // 准备参数\n List<Message> messages = new ArrayList<>();\n messages.add(new UserMessage(\"详细分析下,如何设计一个电商系统?\"));\n DeepSeekChatOptions options = DeepSeekChatOptions.builder()\n .model(\"deepseek-ai/DeepSeek-R1\")\n .build();\n\n // 调用\n Flux<ChatResponse> flux = chatModel.stream(new Prompt(messages, options));\n // 打印结果\n flux.doOnNext(response -> {\n// System.out.println(response);\n System.out.println(response.getResult().getOutput());\n }).then().block();\n }\n\n}\n"}, "2fa5909061a8a36113b0fa4e0bbd311205b59115": {"t": 1785770740.11694, "n": 3244, "h": "ee18510d921fc677", "c": "package cn.iocoder.yudao.module.ai.framework.ai.core.model.chat;\n\nimport cn.iocoder.yudao.module.ai.framework.ai.core.model.siliconflow.SiliconFlowApiConstants;\nimport cn.iocoder.yudao.module.ai.framework.ai.core.model.siliconflow.SiliconFlowChatModel;\nimport org.junit.jupiter.api.Disabled;\nimport org.junit.jupiter.api.Test;\nimport org.springframework.ai.chat.messages.Message;\nimport org.springframework.ai.chat.messages.SystemMessage;\nimport org.springframework.ai.chat.messages.UserMessage;\nimport org.springframework.ai.chat.model.ChatResponse;\nimport org.springframework.ai.chat.prompt.Prompt;\nimport org.springframework.ai.deepseek.DeepSeekChatModel;\nimport org.springframework.ai.deepseek.DeepSeekChatOptions;\nimport org.springframework.ai.deepseek.api.DeepSeekApi;\nimport reactor.core.publisher.Flux;\n\nimport java.util.ArrayList;\nimport java.util.List;\n\n/**\n * {@link SiliconFlowChatModel} 集成测试\n *\n * @author 芋道源码\n */\npublic class SiliconFlowChatModelTests {\n\n private final DeepSeekChatModel openAiChatModel = DeepSeekChatModel.builder()\n .deepSeekApi(DeepSeekApi.builder()\n .baseUrl(SiliconFlowApiConstants.DEFAULT_BASE_URL)\n .apiKey(\"sk-epsakfenqnyzoxhmbucsxlhkdqlcbnimslqoivkshalvdozz\") // apiKey\n .build())\n .defaultOptions(DeepSeekChatOptions.builder()\n .model(SiliconFlowApiConstants.MODEL_DEFAULT) // 模型\n// .model(\"deepseek-ai/DeepSeek-R1\") // 模型(deepseek-ai/DeepSeek-R1)可用赠费\n// .model(\"Pro/deepseek-ai/DeepSeek-R1\") // 模型(Pro/deepseek-ai/DeepSeek-R1)需要付费\n .temperature(0.7)\n .build())\n .build();\n\n private final SiliconFlowChatModel chatModel = new SiliconFlowChatModel(openAiChatModel);\n\n @Test\n @Disabled\n public void testCall() {\n // 准备参数\n List<Message> messages = new ArrayList<>();\n messages.add(new SystemMessage(\"你是一个优质的文言文作者,用文言文描述着各城市的人文风景。\"));\n messages.add(new UserMessage(\"1 + 1 = ?\"));\n\n // 调用\n ChatResponse response = chatModel.call(new Prompt(messages));\n // 打印结果\n System.out.println(response);\n }\n\n @Test\n @Disabled\n public void testStream() {\n // 准备参数\n List<Message> messages = new ArrayList<>();\n messages.add(new SystemMessage(\"你是一个优质的文言文作者,用文言文描述着各城市的人文风景。\"));\n messages.add(new UserMessage(\"1 + 1 = ?\"));\n\n // 调用\n Flux<ChatResponse> flux = chatModel.stream(new Prompt(messages));\n // 打印结果\n flux.doOnNext(System.out::println).then().block();\n }\n\n @Test\n @Disabled\n public void testStream_thinking() {\n // 准备参数\n List<Message> messages = new ArrayList<>();\n messages.add(new UserMessage(\"详细分析下,如何设计一个电商系统?\"));\n DeepSeekChatOptions options = DeepSeekChatOptions.builder()\n .model(\"deepseek-ai/DeepSeek-R1\")\n .build();\n\n // 调用\n Flux<ChatResponse> flux = chatModel.stream(new Prompt(messages, options));\n // 打印结果\n flux.doOnNext(response -> {\n// System.out.println(response);\n System.out.println(response.getResult().getOutput());\n }).then().block();\n }\n\n}\n"}, "5caa9e9395b4143da1441fd5b99e201ea4e234c6": {"t": 1785770741.3632157, "n": 2592, "h": "118f7aa40ff60a3f", "c": "package cn.iocoder.yudao.module.ai.framework.ai.core.model.chat;\n\nimport cn.iocoder.yudao.module.ai.framework.ai.core.model.siliconflow.SiliconFlowApiConstants;\nimport cn.iocoder.yudao.module.ai.framework.ai.core.model.siliconflow.SiliconFlowChatModel;\nimport org.junit.jupiter.api.Disabled;\nimport org.junit.jupiter.api.Test;\nimport org.springframework.ai.chat.messages.Message;\nimport org.springframework.ai.chat.messages.SystemMessage;\nimport org.springframework.ai.chat.messages.UserMessage;\nimport org.springframework.ai.chat.model.ChatResponse;\nimport org.springframework.ai.chat.prompt.Prompt;\nimport org.springframework.ai.openai.OpenAiChatModel;\nimport org.springframework.ai.openai.OpenAiChatOptions;\nimport org.springframework.ai.openai.api.OpenAiApi;\nimport reactor.core.publisher.Flux;\n\nimport java.util.ArrayList;\nimport java.util.List;\n\n/**\n * {@link SiliconFlowChatModel} 集成测试\n *\n * @author 芋道源码\n */\npublic class SiliconFlowChatModelTests {\n\n private final OpenAiChatModel openAiChatModel = OpenAiChatModel.builder()\n .openAiApi(OpenAiApi.builder()\n .baseUrl(SiliconFlowApiConstants.DEFAULT_BASE_URL)\n .apiKey(\"sk-epsakfenqnyzoxhmbucsxlhkdqlcbnimslqoivkshalvdozz\") // apiKey\n .build())\n .defaultOptions(OpenAiChatOptions.builder()\n .model(SiliconFlowApiConstants.MODEL_DEFAULT) // 模型\n// .model(\"deepseek-ai/DeepSeek-R1\") // 模型(deepseek-ai/DeepSeek-R1)可用赠费\n// .model(\"Pro/deepseek-ai/DeepSeek-R1\") // 模型(Pro/deepseek-ai/DeepSeek-R1)需要付费\n .temperature(0.7)\n .build())\n .build();\n\n private final SiliconFlowChatModel chatModel = new SiliconFlowChatModel(openAiChatModel);\n\n @Test\n @Disabled\n public void testCall() {\n // 准备参数\n List<Message> messages = new ArrayList<>();\n messages.add(new SystemMessage(\"你是一个优质的文言文作者,用文言文描述着各城市的人文风景。\"));\n messages.add(new UserMessage(\"1 + 1 = ?\"));\n\n // 调用\n ChatResponse response = chatModel.call(new Prompt(messages));\n // 打印结果\n System.out.println(response);\n }\n\n @Test\n @Disabled\n public void testStream() {\n // 准备参数\n List<Message> messages = new ArrayList<>();\n messages.add(new SystemMessage(\"你是一个优质的文言文作者,用文言文描述着各城市的人文风景。\"));\n messages.add(new UserMessage(\"1 + 1 = ?\"));\n\n // 调用\n Flux<ChatResponse> flux = chatModel.stream(new Prompt(messages));\n // 打印结果\n flux.doOnNext(System.out::println).then().block();\n }\n\n}\n"}}, "yudao-module-ai/src/test/java/cn/iocoder/yudao/module/ai/framework/ai/core/model/chat/DeepSeekChatModelTests.java": {"f841241bdd37160e8224c3f99d582488c6c66b37": {"t": 1785747158.5354085, "n": 2645, "h": "181a9b6a72ac71e4", "c": "package cn.iocoder.yudao.module.ai.framework.ai.core.model.chat;\n\nimport org.junit.jupiter.api.Disabled;\nimport org.junit.jupiter.api.Test;\nimport org.springframework.ai.chat.messages.Message;\nimport org.springframework.ai.chat.messages.SystemMessage;\nimport org.springframework.ai.chat.messages.UserMessage;\nimport org.springframework.ai.chat.model.ChatResponse;\nimport org.springframework.ai.chat.prompt.Prompt;\nimport org.springframework.ai.deepseek.DeepSeekChatModel;\nimport org.springframework.ai.deepseek.DeepSeekChatOptions;\nimport org.springframework.ai.deepseek.api.DeepSeekApi;\nimport reactor.core.publisher.Flux;\n\nimport java.util.ArrayList;\nimport java.util.List;\n\n/**\n * {@link DeepSeekChatModel} 集成测试\n *\n * @author 芋道源码\n */\npublic class DeepSeekChatModelTests {\n\n private final DeepSeekChatModel chatModel = DeepSeekChatModel.builder()\n .deepSeekApi(DeepSeekApi.builder()\n .apiKey(\"sk-eaf4172a057344dd9bc64b1f806b6axx\") // apiKey\n .build())\n .defaultOptions(DeepSeekChatOptions.builder()\n .model(\"deepseek-chat\") // 模型\n .temperature(0.7)\n .build())\n .build();\n\n @Test\n @Disabled\n public void testCall() {\n // 准备参数\n List<Message> messages = new ArrayList<>();\n messages.add(new SystemMessage(\"你是一个优质的文言文作者,用文言文描述着各城市的人文风景。\"));\n messages.add(new UserMessage(\"1 + 1 = ?\"));\n\n // 调用\n ChatResponse response = chatModel.call(new Prompt(messages));\n // 打印结果\n System.out.println(response);\n }\n\n @Test\n @Disabled\n public void testStream() {\n // 准备参数\n List<Message> messages = new ArrayList<>();\n messages.add(new SystemMessage(\"你是一个优质的文言文作者,用文言文描述着各城市的人文风景。\"));\n messages.add(new UserMessage(\"1 + 1 = ?\"));\n\n // 调用\n Flux<ChatResponse> flux = chatModel.stream(new Prompt(messages));\n // 打印结果\n flux.doOnNext(System.out::println).then().block();\n }\n\n @Test\n @Disabled\n public void testStream_thinking() {\n // 准备参数\n List<Message> messages = new ArrayList<>();\n messages.add(new UserMessage(\"详细分析下,如何设计一个电商系统?\"));\n DeepSeekChatOptions options = DeepSeekChatOptions.builder()\n .model(\"deepseek-reasoner\")\n .build();\n\n // 调用\n Flux<ChatResponse> flux = chatModel.stream(new Prompt(messages, options));\n // 打印结果\n flux.doOnNext(response -> {\n// System.out.println(response);\n System.out.println(response.getResult().getOutput());\n }).then().block();\n }\n\n}\n"}, "69d99aa4ea6ab28c4b6f333e8a3e774b41997a51": {"t": 1785770740.302845, "n": 2645, "h": "181a9b6a72ac71e4", "c": "package cn.iocoder.yudao.module.ai.framework.ai.core.model.chat;\n\nimport org.junit.jupiter.api.Disabled;\nimport org.junit.jupiter.api.Test;\nimport org.springframework.ai.chat.messages.Message;\nimport org.springframework.ai.chat.messages.SystemMessage;\nimport org.springframework.ai.chat.messages.UserMessage;\nimport org.springframework.ai.chat.model.ChatResponse;\nimport org.springframework.ai.chat.prompt.Prompt;\nimport org.springframework.ai.deepseek.DeepSeekChatModel;\nimport org.springframework.ai.deepseek.DeepSeekChatOptions;\nimport org.springframework.ai.deepseek.api.DeepSeekApi;\nimport reactor.core.publisher.Flux;\n\nimport java.util.ArrayList;\nimport java.util.List;\n\n/**\n * {@link DeepSeekChatModel} 集成测试\n *\n * @author 芋道源码\n */\npublic class DeepSeekChatModelTests {\n\n private final DeepSeekChatModel chatModel = DeepSeekChatModel.builder()\n .deepSeekApi(DeepSeekApi.builder()\n .apiKey(\"sk-eaf4172a057344dd9bc64b1f806b6axx\") // apiKey\n .build())\n .defaultOptions(DeepSeekChatOptions.builder()\n .model(\"deepseek-chat\") // 模型\n .temperature(0.7)\n .build())\n .build();\n\n @Test\n @Disabled\n public void testCall() {\n // 准备参数\n List<Message> messages = new ArrayList<>();\n messages.add(new SystemMessage(\"你是一个优质的文言文作者,用文言文描述着各城市的人文风景。\"));\n messages.add(new UserMessage(\"1 + 1 = ?\"));\n\n // 调用\n ChatResponse response = chatModel.call(new Prompt(messages));\n // 打印结果\n System.out.println(response);\n }\n\n @Test\n @Disabled\n public void testStream() {\n // 准备参数\n List<Message> messages = new ArrayList<>();\n messages.add(new SystemMessage(\"你是一个优质的文言文作者,用文言文描述着各城市的人文风景。\"));\n messages.add(new UserMessage(\"1 + 1 = ?\"));\n\n // 调用\n Flux<ChatResponse> flux = chatModel.stream(new Prompt(messages));\n // 打印结果\n flux.doOnNext(System.out::println).then().block();\n }\n\n @Test\n @Disabled\n public void testStream_thinking() {\n // 准备参数\n List<Message> messages = new ArrayList<>();\n messages.add(new UserMessage(\"详细分析下,如何设计一个电商系统?\"));\n DeepSeekChatOptions options = DeepSeekChatOptions.builder()\n .model(\"deepseek-reasoner\")\n .build();\n\n // 调用\n Flux<ChatResponse> flux = chatModel.stream(new Prompt(messages, options));\n // 打印结果\n flux.doOnNext(response -> {\n// System.out.println(response);\n System.out.println(response.getResult().getOutput());\n }).then().block();\n }\n\n}\n"}, "3d0eb77148c5869c42699ba1f2831e4ed89f01ab": {"t": 1785770741.7827296, "n": 2021, "h": "814e162b3a28730b", "c": "package cn.iocoder.yudao.module.ai.framework.ai.core.model.chat;\n\nimport org.junit.jupiter.api.Disabled;\nimport org.junit.jupiter.api.Test;\nimport org.springframework.ai.chat.messages.Message;\nimport org.springframework.ai.chat.messages.SystemMessage;\nimport org.springframework.ai.chat.messages.UserMessage;\nimport org.springframework.ai.chat.model.ChatResponse;\nimport org.springframework.ai.chat.prompt.Prompt;\nimport org.springframework.ai.deepseek.DeepSeekChatModel;\nimport org.springframework.ai.deepseek.DeepSeekChatOptions;\nimport org.springframework.ai.deepseek.api.DeepSeekApi;\nimport reactor.core.publisher.Flux;\n\nimport java.util.ArrayList;\nimport java.util.List;\n\n/**\n * {@link DeepSeekChatModel} 集成测试\n *\n * @author 芋道源码\n */\npublic class DeepSeekChatModelTests {\n\n private final DeepSeekChatModel chatModel = DeepSeekChatModel.builder()\n .deepSeekApi(DeepSeekApi.builder()\n .apiKey(\"sk-eaf4172a057344dd9bc64b1f806b6axx\") // apiKey\n .build())\n .defaultOptions(DeepSeekChatOptions.builder()\n .model(\"deepseek-chat\") // 模型\n .temperature(0.7)\n .build())\n .build();\n\n @Test\n @Disabled\n public void testCall() {\n // 准备参数\n List<Message> messages = new ArrayList<>();\n messages.add(new SystemMessage(\"你是一个优质的文言文作者,用文言文描述着各城市的人文风景。\"));\n messages.add(new UserMessage(\"1 + 1 = ?\"));\n\n // 调用\n ChatResponse response = chatModel.call(new Prompt(messages));\n // 打印结果\n System.out.println(response);\n }\n\n @Test\n @Disabled\n public void testStream() {\n // 准备参数\n List<Message> messages = new ArrayList<>();\n messages.add(new SystemMessage(\"你是一个优质的文言文作者,用文言文描述着各城市的人文风景。\"));\n messages.add(new UserMessage(\"1 + 1 = ?\"));\n\n // 调用\n Flux<ChatResponse> flux = chatModel.stream(new Prompt(messages));\n // 打印结果\n flux.doOnNext(System.out::println).then().block();\n }\n\n}\n"}, "5caa9e9395b4143da1441fd5b99e201ea4e234c6": {"t": 1785770743.0643241, "n": 2233, "h": "b0b23971d0b86426", "c": "package cn.iocoder.yudao.module.ai.framework.ai.core.model.chat;\n\nimport cn.iocoder.yudao.module.ai.framework.ai.core.model.deepseek.DeepSeekChatModel;\nimport org.junit.jupiter.api.Disabled;\nimport org.junit.jupiter.api.Test;\nimport org.springframework.ai.chat.messages.Message;\nimport org.springframework.ai.chat.messages.SystemMessage;\nimport org.springframework.ai.chat.messages.UserMessage;\nimport org.springframework.ai.chat.model.ChatResponse;\nimport org.springframework.ai.chat.prompt.Prompt;\nimport org.springframework.ai.openai.OpenAiChatModel;\nimport org.springframework.ai.openai.OpenAiChatOptions;\nimport org.springframework.ai.openai.api.OpenAiApi;\nimport reactor.core.publisher.Flux;\n\nimport java.util.ArrayList;\nimport java.util.List;\n\n/**\n * {@link DeepSeekChatModel} 集成测试\n *\n * @author 芋道源码\n */\npublic class DeepSeekChatModelTests {\n\n private final OpenAiChatModel openAiChatModel = OpenAiChatModel.builder()\n .openAiApi(OpenAiApi.builder()\n .baseUrl(DeepSeekChatModel.BASE_URL)\n .apiKey(\"sk-e52047409b144d97b791a6a46a2d\") // apiKey\n .build())\n .defaultOptions(OpenAiChatOptions.builder()\n .model(\"deepseek-chat\") // 模型\n .temperature(0.7)\n .build())\n .build();\n\n private final DeepSeekChatModel chatModel = new DeepSeekChatModel(openAiChatModel);\n\n @Test\n @Disabled\n public void testCall() {\n // 准备参数\n List<Message> messages = new ArrayList<>();\n messages.add(new SystemMessage(\"你是一个优质的文言文作者,用文言文描述着各城市的人文风景。\"));\n messages.add(new UserMessage(\"1 + 1 = ?\"));\n\n // 调用\n ChatResponse response = chatModel.call(new Prompt(messages));\n // 打印结果\n System.out.println(response);\n }\n\n @Test\n @Disabled\n public void testStream() {\n // 准备参数\n List<Message> messages = new ArrayList<>();\n messages.add(new SystemMessage(\"你是一个优质的文言文作者,用文言文描述着各城市的人文风景。\"));\n messages.add(new UserMessage(\"1 + 1 = ?\"));\n\n // 调用\n Flux<ChatResponse> flux = chatModel.stream(new Prompt(messages));\n // 打印结果\n flux.doOnNext(System.out::println).then().block();\n }\n\n}\n"}}, "yudao-module-ai/src/main/java/cn/iocoder/yudao/module/ai/framework/ai/core/model/hunyuan/HunYuanChatModel.java": {"f841241bdd37160e8224c3f99d582488c6c66b37": {"t": 1785809890.2321947, "n": 1561, "h": "2e1b328b1309367d", "c": "package cn.iocoder.yudao.module.ai.framework.ai.core.model.hunyuan;\n\nimport lombok.RequiredArgsConstructor;\nimport lombok.extern.slf4j.Slf4j;\nimport org.springframework.ai.chat.model.ChatModel;\nimport org.springframework.ai.chat.model.ChatResponse;\nimport org.springframework.ai.chat.prompt.ChatOptions;\nimport org.springframework.ai.chat.prompt.Prompt;\nimport reactor.core.publisher.Flux;\n\n/**\n * 腾云混元 {@link ChatModel} 实现类\n *\n * 1. 混元大模型:基于 <a href=\"https://cloud.tencent.com/document/product/1729/111007\">知识引擎原子能力</a> 实现\n * 2. 知识引擎原子能力:基于 <a href=\"https://cloud.tencent.com/document/product/1772/115969\">知识引擎原子能力</a> 实现\n *\n * @author fansili\n */\n@Slf4j\n@RequiredArgsConstructor\npublic class HunYuanChatModel implements ChatModel {\n\n public static final String BASE_URL = \"https://api.hunyuan.cloud.tencent.com\";\n public static final String COMPLETE_PATH = \"/v1/chat/completions\";\n\n public static final String MODEL_DEFAULT = \"hunyuan-turbo\";\n\n public static final String DEEP_SEEK_BASE_URL = \"https://api.lkeap.cloud.tencent.com\";\n\n public static final String DEEP_SEEK_MODEL_DEFAULT = \"deepseek-v3\";\n\n /**\n * 兼容 OpenAI 接口,进行复用\n */\n private final ChatModel openAiChatModel;\n\n @Override\n public ChatResponse call(Prompt prompt) {\n return openAiChatModel.call(prompt);\n }\n\n @Override\n public Flux<ChatResponse> stream(Prompt prompt) {\n return openAiChatModel.stream(prompt);\n }\n\n @Override\n public ChatOptions getDefaultOptions() {\n return openAiChatModel.getDefaultOptions();\n }\n\n}\n"}}}}