【问题标题】:How to check character count for Google Translation API?如何检查 Google Translation API 的字符数?
【发布时间】:2020-06-18 03:45:30
【问题描述】:

我正在使用以下代码使用谷歌翻译 API 进行翻译

from google.cloud import translate_v2 as translate
translate_client = translate.Client(credentials=credentials)

# if isinstance(text, six.binary_type):
#     text = text.decode('utf-8')

# Text can also be a sequence of strings, in which case this method
# will return a sequence of results for each text.
result = translate_client.translate(
    text, target_language='en')

print(u'Text: {}'.format(result['input']))
print(u'Translation: {}'.format(result['translatedText']))
print(u'Detected source language: {}'.format(
    result['detectedSourceLanguage']))

我如何跟踪剩余的字符数或到目前为止已使用的字符数?我有 100 万个免费字符。

【问题讨论】:

    标签: python google-cloud-platform google-translate google-translation-api


    【解决方案1】:

    即使我认为没有直接请求此类信息的方法(除了控制台),也有一种在内部创建警报策略的方法。

    您可以设置针对特定数量的请求字节触发的警报政策并应用 1 char = 8 bit = 1 byte。

    为了做到这一点,你应该去监控 -> 警报 -> 创建新策略 ->

      ·Resource type: Consumed API
      ·Metric: Request sizes 
      ·Filter -> Service = translate.googleapis.com
    

    并根据需要配置尽可能多的触发器。 希望一切顺利!

    【讨论】:

      【解决方案2】:

      尝试将值存储在文件中?每次翻译n个字符,

      1. 从文件中读取count
      2. count 增加n
      3. count写回文件

      【讨论】:

      • 嗯,这是我实施的解决方法。我想要它来自官方来源。
      • 还有,汉字怎么算?
      • @Shawn 与我们在发送到 google api 之前将测试和计数存储在日志数据库中的方式相同,根据我们的日志,计数为 18k+,但 google billing 显示为 48k+,所以我们正在寻找什么是其他请求已发送给谷歌,你有什么解决办法吗
      • @Thom AFAIK 当您翻译某些内容时,输入和输出字符都会被考虑在内。前任。如果发送 10,000 个字符进行翻译,结果文本为 11,000 个字符,则总数为 21,000 个字符。
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-03-24
      • 2018-05-05
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多