如何为VertexAi Java Chat Language Model配置JSON凭证文件
解决VertexAiChatModel的JSON凭证认证问题
针对你遇到的VertexAiChatModel本地IDE运行时认证失败的问题,有两种可靠的解决方式:
方式一:通过环境变量配置(推荐本地调试)
设置环境变量GOOGLE_APPLICATION_CREDENTIALS,值为你的JSON凭证文件的绝对路径:
- Windows命令行:
set GOOGLE_APPLICATION_CREDENTIALS=C:\绝对路径\你的凭证文件.json - Linux/macOS终端:
export GOOGLE_APPLICATION_CREDENTIALS=/绝对路径/你的凭证文件.json
配置完成后,无需修改现有代码,VertexAi的客户端会自动读取该环境变量加载凭证,和你在GCP控制台登录后的认证逻辑一致。
方式二:代码中显式加载凭证
如果需要在代码中指定凭证文件路径,可以直接构建GoogleCredentials对象并传入模型构建器:
import com.google.auth.oauth2.GoogleCredentials; import java.io.FileInputStream; import java.io.IOException; // ... 其他业务代码 ... try { // 加载JSON凭证文件 GoogleCredentials credentials = GoogleCredentials.fromStream( new FileInputStream("/你的凭证文件绝对路径/credential.json") ); // 构建带凭证的VertexAiChatModel ChatLanguageModel chatModel = VertexAiChatModel.builder() .endpoint(llm_endpoint) .project(project_name) .location(region) .publisher("google") .modelName("text-bison@001") .temperature(0.7) .maxOutputTokens(1024) .topK(40) .topP(0.95) .maxRetries(3) .credentials(credentials) // 传入加载好的凭证 .build(); } catch (IOException e) { e.printStackTrace(); }
说明
Vertex AI采用GCP统一的服务账号凭证体系,和OpenAI直接传入API Key的方式不同,它依赖服务账号的JSON文件完成身份认证。上述两种方式都能让你的本地IDE环境正确完成认证,调用generate方法正常工作。
内容的提问来源于stack exchange,提问作者Sachu
相关产品推荐
相关产品推荐

