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

在Google Colab中使用google.cloud.translate_v3报错:无TranslationClient属性

解决方案

核心错误修正:客户端类名

Google Cloud Translate V3的官方客户端类是TranslationServiceClient,而非你代码中的TranslationClient——这是触发AttributeError的直接原因。

适配V3 API调用逻辑

Translate V3的调用方式和V2完全不同,必须指定项目ID、位置参数,且翻译方法为translate_text,返回结果的结构也有变化。

解决Colab凭证认证问题

在Colab中可通过两种方式完成身份验证:

  • 方式1:使用Colab内置认证工具
    from google.colab import auth
    auth.authenticate_user()
    
  • 方式2:上传服务账号密钥文件并设置环境变量
    import os
    os.environ["GOOGLE_APPLICATION_CREDENTIALS"] = "/content/your-service-account-key.json"
    

完整修正代码

# 安装依赖(如果未安装)
!pip install google-cloud-translate

# 身份认证
from google.colab import auth
auth.authenticate_user()

from google.cloud import translate_v3 as translate
import pandas as pd

def translate_sentence(sentence, target_language, project_id="your-project-id"):
    # 初始化V3客户端
    client = translate.TranslationServiceClient()
    location = "global"
    parent = f"projects/{project_id}/locations/{location}"

    # 调用翻译API
    response = client.translate_text(
        request={
            "parent": parent,
            "contents": [sentence],
            "mime_type": "text/plain",
            "source_language_code": "en",
            "target_language_code": target_language,
        }
    )

    # 返回翻译结果
    return response.translations[0].translated_text

# 创建测试数据
df = pd.DataFrame({'sentence': ['This is a sentence to be translated.']})

# 翻译为法语(替换为你的项目ID)
df['translated_sentence'] = df['sentence'].apply(lambda x: translate_sentence(x, 'fr', project_id="your-project-id"))

# 输出结果
print(df['translated_sentence'][0])

额外注意事项

  • 替换代码中的your-project-id为你自己的Google Cloud项目ID
  • 确保你的项目已启用Cloud Translation API,且认证账号拥有该API的调用权限
  • 如果使用服务账号密钥,需先将密钥文件上传至Colab的文件目录中

内容的提问来源于stack exchange,提问作者Damian Okorie

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.06 05:10:20