Преглед на файлове

【增加】增加 google gemini

cherishsince преди 11 месеца
родител
ревизия
10ca7a93ac

+ 5 - 0
yudao-module-ai/yudao-spring-boot-starter-ai/pom.xml

@@ -22,6 +22,11 @@
             <artifactId>spring-ai-openai-spring-boot-starter</artifactId>
             <version>1.0.3</version>
         </dependency>
+        <dependency>
+            <groupId>io.springboot.ai</groupId>
+            <artifactId>spring-ai-vertex-ai-gemini</artifactId>
+            <version>1.0.3</version>
+        </dependency>
 
         <dependency>
             <groupId>cn.iocoder.boot</groupId>

+ 1 - 0
yudao-module-ai/yudao-spring-boot-starter-ai/src/main/java/cn/iocoder/yudao/framework/ai/core/enums/AiPlatformEnum.java

@@ -21,6 +21,7 @@ public enum AiPlatformEnum {
 
     OPEN_AI_DALL("dall", "dall"),
     MIDJOURNEY("midjourney", "midjourney"),
+    GEMIR ("gemir ", "gemir "), // google gemir
 
     ;
 

+ 11 - 0
yudao-module-ai/yudao-spring-boot-starter-ai/src/main/java/cn/iocoder/yudao/framework/ai/core/factory/AiClientFactoryImpl.java

@@ -169,4 +169,15 @@ public class AiClientFactoryImpl implements AiClientFactory {
         return new QianWenChatClient(qianWenApi);
     }
 
+
+    private static VertexAiGeminiChatClient buildGoogleGemir(String key) {
+        List<String> keys = StrUtil.split(key, '|');
+        Assert.equals(keys.size(), 2, "VertexAiGeminiChatClient 的密钥需要 (projectId|location) 格式");
+        VertexAI vertexApi =  new VertexAI(keys.get(0), keys.get(1));
+        return new VertexAiGeminiChatClient(vertexApi,
+                VertexAiGeminiChatOptions.builder()
+                        .withTemperature(0.4F)
+                        .build());
+    }
+
 }