You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

已有Gemini API Key,Spring AI仍要求CredentialsUri?能否用API Key替代?

关于Spring AI调用Gemini使用API Key的解决方案

核心问题说明

Spring AI的Vertex AI Gemini客户端默认基于Google Cloud的服务账号/OAuth2凭据(即ADC机制)完成认证,这和Gemini Studio直接用API Key的调用分属两套不同的认证体系,因此你会触发"默认凭据未找到"的错误。

使用API Key替代ADC的配置方法

你可以通过以下方式让Spring AI使用Gemini API Key认证,无需依赖ADC:

1. 调整依赖

确保引入面向通用API Key的Spring AI Gemini依赖(区别于面向Google Cloud环境的Vertex AI依赖):

<!-- Maven示例 -->
<dependency>
    <groupId>org.springframework.ai</groupId>
    <artifactId>spring-ai-google-gemini-spring-boot-starter</artifactId>
    <version>最新稳定版</version>
</dependency>

2. 配置文件设置

在application.properties或application.yml中直接指定API Key:

# application.properties
spring.ai.google.gemini.api-key=你的Gemini API Key
spring.ai.google.gemini.model=geminipro

YAML格式示例:

# application.yml
spring:
  ai:
    google:
      gemini:
        api-key: 你的Gemini API Key
        model: geminipro

3. 代码显式配置(可选)

若需要在代码中自定义客户端,可创建GeminiChatClient的Bean:

import org.springframework.ai.google.gemini.GeminiChatClient;
import org.springframework.ai.google.gemini.GeminiChatOptions;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;

@Configuration
public class GeminiConfig {

    @Bean
    public GeminiChatClient geminiChatClient() {
        return new GeminiChatClient(new GeminiChatOptions.Builder()
                .setApiKey("你的Gemini API Key")
                .setModel("geminipro")
                .build());
    }
}

关键区分点

  • Vertex AI客户端:面向Google Cloud环境,依赖ADC/OAuth2认证,对应依赖为spring-ai-vertex-ai-spring-boot-starter,需绑定Google Cloud项目及服务账号。
  • Gemini通用客户端:面向Gemini Studio的API Key认证,对应依赖为spring-ai-google-gemini-spring-boot-starter,仅需配置API Key即可调用。

你之前参考的是Vertex AI的文档,因此默认走ADC认证流程,切换到Gemini通用客户端并配置API Key即可解决问题。

内容的提问来源于stack exchange,提问作者east cukt

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.25 15:02:17