liurenchaxin/test_vertex_ai_setup.py

90 lines
3.2 KiB
Python

#!/usr/bin/env python3
"""
测试 Vertex AI 配置和连接
"""
import os
import sys
from config.settings import get_google_genai_config
def test_doppler_config():
"""测试 Doppler 配置"""
print("🔍 测试 Doppler 配置...")
try:
config = get_google_genai_config()
print("✅ 成功读取 Google GenAI 配置")
print(f" - API Key: {'已配置' if config.get('api_key') else '未配置'}")
print(f" - Use Vertex AI: {config.get('use_vertex_ai', '未设置')}")
print(f" - Project ID: {config.get('project_id', '未设置')}")
print(f" - Location: {config.get('location', '未设置')}")
print(f" - Memory Bank Enabled: {config.get('memory_bank_enabled', '未设置')}")
return config
except Exception as e:
print(f"❌ 读取 Google GenAI 配置失败: {e}")
return None
def test_environment_variables():
"""测试环境变量"""
print("\n🔍 测试环境变量...")
adc_path = os.path.expanduser("~/.config/gcloud/application_default_credentials.json")
if os.path.exists(adc_path):
print("✅ 找到 Application Default Credentials 文件")
else:
print("❌ 未找到 Application Default Credentials 文件")
google_env_vars = [var for var in os.environ if var.startswith('GOOGLE_')]
if google_env_vars:
print("✅ 找到以下 Google 环境变量:")
for var in google_env_vars:
# 不显示敏感信息
if 'KEY' in var or 'SECRET' in var or 'TOKEN' in var:
print(f" - {var}: {'已设置' if os.environ.get(var) else '未设置'}")
else:
print(f" - {var}: {os.environ.get(var, '未设置')}")
else:
print("⚠️ 未找到 Google 环境变量")
def main():
"""主函数"""
print("🧪 Vertex AI 配置测试\n")
# 测试 Doppler 配置
config = test_doppler_config()
# 测试环境变量
test_environment_variables()
# 检查是否满足基本要求
print("\n📋 配置检查摘要:")
if config:
project_id = config.get('project_id')
api_key = config.get('api_key')
if project_id:
print("✅ Google Cloud Project ID 已配置")
else:
print("❌ 未配置 Google Cloud Project ID")
if api_key:
print("✅ Google API Key 已配置")
else:
print("❌ 未配置 Google API Key")
# 检查是否启用 Vertex AI
use_vertex = config.get('use_vertex_ai', '').upper()
if use_vertex == 'TRUE':
print("✅ Vertex AI 已启用")
else:
print("❌ Vertex AI 未启用 (请检查 GOOGLE_GENAI_USE_VERTEXAI 环境变量)")
# 检查是否启用 Memory Bank
memory_bank_enabled = config.get('memory_bank_enabled', '').upper()
if memory_bank_enabled == 'TRUE':
print("✅ Memory Bank 已启用")
else:
print("❌ Memory Bank 未启用 (请检查 VERTEX_MEMORY_BANK_ENABLED 环境变量)")
else:
print("❌ 无法读取配置,请检查 Doppler 配置")
if __name__ == "__main__":
main()