From 9bad721754fe8bbe2e5f459d0706e0fefac569f3 Mon Sep 17 00:00:00 2001
From: 云 <2163098428@qq.com>
Date: 星期日, 20 九月 2026 09:05:41 +0800
Subject: [PATCH] feat(mes): 添加智能质检报告功能与AI导入能力
---
yudao-module-ai/src/main/java/cn/iocoder/yudao/module/ai/framework/ai/core/model/AiModelFactory.java | 94 +++-------------------------------------------
1 files changed, 7 insertions(+), 87 deletions(-)
diff --git a/yudao-module-ai/src/main/java/cn/iocoder/yudao/module/ai/framework/ai/core/model/AiModelFactory.java b/yudao-module-ai/src/main/java/cn/iocoder/yudao/module/ai/framework/ai/core/model/AiModelFactory.java
index 1c0b808..57e2ea8 100644
--- a/yudao-module-ai/src/main/java/cn/iocoder/yudao/module/ai/framework/ai/core/model/AiModelFactory.java
+++ b/yudao-module-ai/src/main/java/cn/iocoder/yudao/module/ai/framework/ai/core/model/AiModelFactory.java
@@ -1,111 +1,31 @@
package cn.iocoder.yudao.module.ai.framework.ai.core.model;
import cn.iocoder.yudao.module.ai.enums.model.AiPlatformEnum;
-import cn.iocoder.yudao.module.ai.framework.ai.core.model.midjourney.api.MidjourneyApi;
-import cn.iocoder.yudao.module.ai.framework.ai.core.model.suno.api.SunoApi;
import org.springframework.ai.chat.model.ChatModel;
import org.springframework.ai.embedding.EmbeddingModel;
-import org.springframework.ai.image.ImageModel;
import org.springframework.ai.vectorstore.VectorStore;
-
+import java.time.Duration;
import java.util.Map;
/**
* AI Model 妯″瀷宸ュ巶鐨勬帴鍙g被
- *
- * @author fansili
*/
public interface AiModelFactory {
/**
- * 鍩轰簬鎸囧畾閰嶇疆锛岃幏寰� ChatModel 瀵硅薄
+ * 鑾峰彇锛堟垨鍒涘缓骞剁紦瀛橈級Chat 妯″瀷
*
- * 濡傛灉涓嶅瓨鍦紝鍒欒繘琛屽垱寤�
- *
- * @param platform 骞冲彴
- * @param apiKey API KEY
- * @param url API URL
- * @return ChatModel 瀵硅薄
+ * @param temperature 閲囨牱娓╁害锛宯ull 琛ㄧず鐢ㄩ粯璁ゅ��
+ * @param maxTokens 鍗曟鍥炲鏈�澶� token 鏁帮紝null 琛ㄧず娌跨敤妯″瀷榛樿鍊�
+ * @param timeout 鍗曟璋冪敤瓒呮椂
*/
- ChatModel getOrCreateChatModel(AiPlatformEnum platform, String apiKey, String url);
+ ChatModel getOrCreateChatModel(AiPlatformEnum platform, String apiKey, String url, String model,
+ Double temperature, Integer maxTokens, Duration timeout);
- /**
- * 鍩轰簬榛樿閰嶇疆锛岃幏寰� ChatModel 瀵硅薄
- *
- * 榛樿閰嶇疆锛屾寚鐨勬槸鍦� application.yaml 閰嶇疆鏂囦欢涓殑 spring.ai 鐩稿叧鐨勯厤缃�
- *
- * @param platform 骞冲彴
- * @return ChatModel 瀵硅薄
- */
ChatModel getDefaultChatModel(AiPlatformEnum platform);
- /**
- * 鍩轰簬榛樿閰嶇疆锛岃幏寰� ImageModel 瀵硅薄
- *
- * 榛樿閰嶇疆锛屾寚鐨勬槸鍦� application.yaml 閰嶇疆鏂囦欢涓殑 spring.ai 鐩稿叧鐨勯厤缃�
- *
- * @param platform 骞冲彴
- * @return ImageModel 瀵硅薄
- */
- ImageModel getDefaultImageModel(AiPlatformEnum platform);
-
- /**
- * 鍩轰簬鎸囧畾閰嶇疆锛岃幏寰� ImageModel 瀵硅薄
- *
- * 濡傛灉涓嶅瓨鍦紝鍒欒繘琛屽垱寤�
- *
- * @param platform 骞冲彴
- * @param apiKey API KEY
- * @param url API URL
- * @return ImageModel 瀵硅薄
- */
- ImageModel getOrCreateImageModel(AiPlatformEnum platform, String apiKey, String url);
-
- /**
- * 鍩轰簬鎸囧畾閰嶇疆锛岃幏寰� MidjourneyApi 瀵硅薄
- *
- * 濡傛灉涓嶅瓨鍦紝鍒欒繘琛屽垱寤�
- *
- * @param apiKey API KEY
- * @param url API URL
- * @return MidjourneyApi 瀵硅薄
- */
- MidjourneyApi getOrCreateMidjourneyApi(String apiKey, String url);
-
- /**
- * 鍩轰簬鎸囧畾閰嶇疆锛岃幏寰� SunoApi 瀵硅薄
- *
- * 濡傛灉涓嶅瓨鍦紝鍒欒繘琛屽垱寤�
- *
- * @param apiKey API KEY
- * @param url API URL
- * @return SunoApi 瀵硅薄
- */
- SunoApi getOrCreateSunoApi(String apiKey, String url);
-
- /**
- * 鍩轰簬鎸囧畾閰嶇疆锛岃幏寰� EmbeddingModel 瀵硅薄
- *
- * 濡傛灉涓嶅瓨鍦紝鍒欒繘琛屽垱寤�
- *
- * @param platform 骞冲彴
- * @param apiKey API KEY
- * @param url API URL
- * @param model 妯″瀷
- * @return ChatModel 瀵硅薄
- */
EmbeddingModel getOrCreateEmbeddingModel(AiPlatformEnum platform, String apiKey, String url, String model);
- /**
- * 鍩轰簬鎸囧畾閰嶇疆锛岃幏寰� VectorStore 瀵硅薄
- *
- * 濡傛灉涓嶅瓨鍦紝鍒欒繘琛屽垱寤�
- *
- * @param type 鍚戦噺瀛樺偍绫诲瀷
- * @param embeddingModel 鍚戦噺妯″瀷
- * @param metadataFields 鍏冩暟鎹瓧娈�
- * @return VectorStore 瀵硅薄
- */
VectorStore getOrCreateVectorStore(Class<? extends VectorStore> type,
EmbeddingModel embeddingModel,
Map<String, Class<?>> metadataFields);
--
Gitblit v1.9.3