Mit deinem benutzerdefinierten AutoML-Modell in Python übersetzen

English Deutsch

Wenn du erfolgreich dein erstes benutzerdefiniertes AutoML-Neuronales-Translation-Modell trainiert hast, ist der nächste Schritt, es in deine Anwendung zu integrieren.

Hier ist eine Python3-Utility-Klasse, die es dir einfach ermöglicht, mit deinem benutzerdefinierten Modell zu übersetzen:

automl_translate.py
class GNTMAutoMLTranslationDriver(object):
    """
    Benutzerdefinierter AutoML-Modell-Übersetzer.

    Verwendungsbeispiel (stelle sicher, dass du hier dein eigenes Modell verwendest!):

    >>> 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

Siehe die Klassendokumentation für ein Verwendungsbeispiel. Der größte Teil des Codes ist auch im offiziellen AutoML-Beispiel vorhanden, aber ich musste einige Teile selbst herausfinden, z.B. wie man den String aus dem protobuf extrahiert (request.payload[0].translation.translated_content.content).

Beachte auch, dass AutoML sich derzeit in der Beta-Phase befindet und sich die API daher ohne Vorankündigung ändern kann.


Check out similar posts by category: Machine Learning, Python