如何在 Python 中使用自定义 AutoML 模型进行翻译

如果你已成功训练了第一个自定义 AutoML 神经翻译模型,下一步是将其集成到你的应用程序中。

这是一个 python3 实用类,可轻松使用你的自定义模型进行翻译:

automl_translate.py
class GNTMAutoMLTranslationDriver(object):
    """
    自定义 AutoML 模型翻译器。

    用法示例(确保在此使用你自己的模型!):

    >>> translator = GNTMAutoMLTranslationDriver('myproject-101472', 'TRL455090968000816104449')
    >>> translator.translate("This is a translation test")
    """
    def __init__(self, project_id, model_id):
        self.client = automl_v1beta1.PredictionServiceClient()
        self._name = 'projects/{}/locations/us-central1/models/{}'.format(project_id, model_id)

    def translate(self, engl):
        payload = {'text_snippet': {'content': engl}}
        params = {}
        request = self.client.predict(self._name, payload, params)
        return request.payload[0].translation.translated_content.content

请参见类文档了解用法示例。大部分代码也出现在官方 AutoML 示例中,但我必须自己弄清楚一些部分,例如如何从 protobuf 中提取字符串(request.payload[0].translation.translated_content.content)。

还要注意 AutoML 目前处于 Beta 阶段,因此 API 可能会更改而不事先通知。


Check out similar posts by category: Machine Learning, Python