Zbuduj wielojęzyczny przepływ pracy tłumaczenia dokumentów z dostosowaniem PlatoBlockchain Data Intelligence do domeny i języka. Wyszukiwanie pionowe. AI.

Zbuduj wielojęzyczny przepływ pracy tłumaczenia dokumentów z dostosowaniem do specyfiki domeny i języka

W cyfrowym świecie dostarczanie informacji w lokalnym języku nie jest nowością, ale może być żmudnym i kosztownym zadaniem. Postępy w uczeniu maszynowym (ML) i przetwarzaniu języka naturalnego (NLP) sprawiły, że zadanie to jest znacznie łatwiejsze i tańsze.

Zauważyliśmy wzrost wykorzystania ML w wielojęzycznych obciążeniach przetwarzania danych i dokumentów. Klienci korporacyjni i rządowi migrują swoje obciążenia związane z tłumaczeniem ręcznym, aby skorzystać z usług automatycznego tłumaczenia ML. Tłumacz Amazon to tłumaczenie maszyny neuronowej usługa zapewniająca szybkie, wysokiej jakości i przystępne cenowo tłumaczenie między kilkoma tysiącami par językowych, które mogą być używane do zadań tłumaczeniowych synchronicznych (w czasie rzeczywistym) lub asynchronicznych. Aby uzyskać pełną listę dostępnych par tłumaczeń, zobacz Obsługiwane języki i kody języków.

Klienci migrujący i modernizujący swoje zadania tłumaczeniowe potrzebują możliwości dostosowania tłumaczeń do swojej domeny biznesowej. Obciążenie pracą tłumaczeniową może również wymagać umiejętności dostosowania się do regionalnych dialektów lub użycia języka. Na przykład hiszpańskie tłumaczenie słowa „starsi” to anciano(a), ale w Portoryko preferowane jest słowo envejeciente.

W tym poście pokazujemy, jak włączyć funkcję Active Custom Translation (ACT) w Amazon Translate. Proponujemy rozwiązanie umożliwiające stworzenie wielojęzycznego przepływu pracy tłumaczenia dokumentów z dostosowaniami specyficznymi dla domeny i języka, które można przeglądać i rozszerzać w razie potrzeby, aby stale poprawiać wyniki i zachwycać użytkowników końcowych.

Omówienie rozwiązania

ACT tworzy niestandardowe przetłumaczone dane wyjściowe bez konieczności budowania i utrzymywania niestandardowego modelu tłumaczenia. Korzystając z ACT, Amazon Translate użyje preferowanych przykładów tłumaczeń jako danych równoległych, aby dostosować wynik tłumaczenia, eliminując czas i koszty potrzebne do zbudowania i przeszkolenia nowego modelu uczenia maszynowego.

Rozwiązanie omówione w tym poście wyjaśnia, jak stworzyć przepływ pracy typu „human-in-the-loop” za pomocą Amazon AI Augmented (Amazon A2I) w celu ciągłego ulepszania dostosowanego tłumaczenia. Amazon A2I zapewnia prosty sposób na zintegrowanie ludzkiego nadzoru z przepływami pracy ML, bez konieczności posiadania doświadczenia w ML. Amazon A2I ułatwia integrację osądu ludzkiego i sztucznej inteligencji w dowolnej aplikacji ML, niezależnie od tego, czy jest uruchomiona na AWS, czy na innej platformie.

Aby uzyskać więcej informacji, zobacz Projektowanie przepływów pracy z recenzjami użytkowników za pomocą Amazon Translate i Amazon Augmented AI stanowisko.

Poniższy diagram przedstawia przepływ poleceń i przepływ danych rozwiązania. Przepływ poleceń przedstawia logiczną sekwencję zdarzeń w przepływie pracy. Przepływ danych wskazuje, w jaki sposób dane są tworzone lub używane przez różne składniki rozwiązania.

Zbuduj wielojęzyczny przepływ pracy tłumaczenia dokumentów z dostosowaniem PlatoBlockchain Data Intelligence do domeny i języka. Wyszukiwanie pionowe. AI.

Poniższy diagram sekwencji przedstawia dwa oddzielne procesy w rozwiązaniu: przepływ pracy tłumaczenia (A) i proces aktualizacji danych równoległych (B).

Obieg tłumaczenia jest inicjowany przez Amazon Cloud Watch zaplanowane wydarzenie, które uruchamia Wywołującego zadanie tłumaczenia AWS Lambda funkcjonować. Ta funkcja tworzy asynchroniczne zadanie tłumaczenia w Amazon Translate, przekazując dokument do przetłumaczenia i lokalizację równoległych danych w celu dostosowania tłumaczenia. Zadanie tłumaczenia odczytuje równoległe dane, wykonuje tłumaczenie i zapisuje przetłumaczony wynik z powrotem do Amazon S3 wiaderko. W chwili pisania tego tekstu tylko asynchroniczne zadania tłumaczenia mogą używać danych równoległych.

Po zakończeniu zadania tłumaczenia generowane jest zdarzenie, które wyzwala funkcję Lambda obsługi zakończenia zadania tłumaczenia. Ta funkcja tworzy ludzką pętlę przepływu pracy — główny składnik części przepływu pracy Amazon A2I.

Recenzenci oceniają tłumaczenie i akceptują lub modyfikują tłumaczenie. Wszelkie poprawki są wykorzystywane do aktualizacji przetłumaczonego dokumentu, a także dodawane do słownika dostosowywania. Po sfinalizowaniu przeglądu generowane jest kolejne zdarzenie, które wyzwala funkcję obsługi ukończenia przepływu pracy. Ta funkcja zapisuje najnowszy przetłumaczony dokument z powrotem do Amazon S3. Dane dostosowywania służą do aktualizacji i Amazon DynamoDB tabela z parami tekstu źródłowego i przetłumaczonego.

Aby zamknąć pętlę, musimy włączyć te dane dostosowywania przechowywane w DynamoDB z powrotem do równoległych danych przechowywanych w Amazon S3. Aby to osiągnąć, używamy zaplanowanego zdarzenia CloudWatch, aby wyzwolić funkcję Parallel Data Refresher, która odczytuje dane z tabeli DynamoDB, formatuje je jako dane równoległe i aktualizuje wiadro S3, przechowując dane równoległe.

Wdróż rozwiązanie z AWS CloudFormation

Uruchom dostarczony Tworzenie chmury AWS szablon do wdrożenia rozwiązania na swoim koncie. Ten stos działa tylko w regionie us-wschód-1. Jeśli chcesz wdrożyć to rozwiązanie w innych regionach, zapoznaj się z poniższymi informacjami GitHub repo.

  1. Dodaj Uruchom stos:
    Zbuduj wielojęzyczny przepływ pracy tłumaczenia dokumentów z dostosowaniem PlatoBlockchain Data Intelligence do domeny i języka. Wyszukiwanie pionowe. AI.
  2. Postępuj zgodnie z instrukcjami, aby wypełnić niezbędne parametry. Jeśli uruchamiasz ten stos po raz pierwszy, E-mail SNS jest jedynym wymaganym parametrem.
  3. Na Review strona w Nasze możliwości sekcji, zaznacz pole wyboru i wybierz Utwórz stos.

Zbuduj wielojęzyczny przepływ pracy tłumaczenia dokumentów z dostosowaniem PlatoBlockchain Data Intelligence do domeny i języka. Wyszukiwanie pionowe. AI.

Stos tworzy następujące kluczowe elementy:

  • Dane dostosowywania – Tabela DynamoDB (translate_parallel_data) w celu zachowania danych personalizacyjnych. Do tej tabeli przenosisz istniejące dane dostosowywania. Ta tabela służy do ciągłego dodawania i aktualizowania dostosowań.
  • Równoległe odświeżanie danych – Funkcja Lambda do konwersji danych dostosowywania w tabeli DynamoDB na równoległy format danych — CSV, TSV lub TMX — i przechowywania ich w Amazon S3. Tworzy i aktualizuje dane równoległe za pomocą nowego pliku danych równoległych w Amazon S3.
  • Wywołujący zlecenie tłumaczenia – Funkcja Lambda do uruchomienia zadania wsadowego Amazon Translate z danymi równoległymi.
  • Program obsługi ukończenia zadania tłumaczeniowego – Ta funkcja Lambda jest wyzwalana po zakończeniu zadania wsadowego Amazon Translate. Funkcja tworzy jedną pętlę ludzką na dokument (dostosujemy to w przyszłości, aby utworzyć pętlę ludzką tylko dla wybranego procentu przetworzonych dokumentów). Wykorzystuje oryginalne i przetłumaczone dokumenty do stworzenia ludzkiej pętli.
  • Dostosowany szablon Amazon A2I – Ten szablon służy do renderowania pary tłumaczeń do weryfikacji przez człowieka. Szablon ma Dodaj opcja dla każdego segmentu tłumaczenia. Użytkownicy mogą wybrać tę opcję, aby dodać poprawki do danych dostosowywania. Nowe dane dostosowywania są używane w następnym zadaniu tłumaczenia wsadowego.
  • Program obsługi ukończenia przepływu pracy – Ta funkcja Lambda jest wyzwalana po zakończeniu pracy człowieka. Funkcja aktualizuje przetłumaczony dokument o poprawki i sprawdza równoległe aktualizacje danych. Nowe dane równoległe są dodawane do tabeli DynamoDB.
  • Prywatny zespół Amazon A2I – Za pomocą podanego adresu e-mail tworzony jest prywatny zespół Amazon A2I z pracownikiem ludzkim. Wstępne poświadczenia są wysyłane e-mailem po pomyślnym utworzeniu prywatnego zespołu. Używasz tego adresu e-mail i poświadczeń, aby zalogować się do portalu pracownika Amazon A2I.

Przetestuj rozwiązanie

Połączenia sample_text.txt plik zostałby utworzony pod prefiksem wejściowym wiadra S3 utworzonego przez stos. Używamy tego pliku do naszych testów. Zawiera następującą treść:

Life insurance companies have the freedom to charge different premiums based on risk
factors that predict mortality. Purchasing a life insurance policy often entails a health 
status check or medical exam, and asking for vaccination status is not banned.

Health insurers are a different story. A slew of state and federal regulations in the 
last three decades have heavily restricted their ability to use health factors in issuing 
or pricing polices. The use of health status in any group health insurance policy is 
prohibited by law. The Affordable Care Act, passed in 2014, prevents insurers from pricing 
plans according to health – with one exception: smoking status.

Aby przetestować rozwiązanie, wykonaj następujące czynności:

  1. Wywołaj funkcję Translation Job Invoker ręcznie lub poczekaj, aż zostanie wyzwolona przez CloudWatch na podstawie określonego harmonogramu crona.
    Ta funkcja uruchamia zadanie wsadowe Amazon Translate. Postęp pracy możesz obserwować w konsoli Amazon Translate.
    Zbuduj wielojęzyczny przepływ pracy tłumaczenia dokumentów z dostosowaniem PlatoBlockchain Data Intelligence do domeny i języka. Wyszukiwanie pionowe. AI.Wykonanie tego zadania wsadowego zajmuje około 30 minut. Kiedy to się skończy, TextTranslationJob Zdarzenie zmiany stanu wyzwala funkcję obsługi zakończenia zadania tłumaczenia. Ta funkcja tworzy jedną ludzką pętlę na przetłumaczony dokument.
  2. Nawiguj do Pracownicy Amazon A2I strona.
  3. Wybierz Sprawy Prywatne patka.
    Zbuduj wielojęzyczny przepływ pracy tłumaczenia dokumentów z dostosowaniem PlatoBlockchain Data Intelligence do domeny i języka. Wyszukiwanie pionowe. AI.
  4. Zaloguj się do portalu pracownika Amazon A2I, wybierając link do Oznaczanie adresu URL logowania do portalu.
  5. Wybierz zadanie Human review task na liście zadań.
  6. Dodaj Rozpocząć pracę.
    Zbuduj wielojęzyczny przepływ pracy tłumaczenia dokumentów z dostosowaniem PlatoBlockchain Data Intelligence do domeny i języka. Wyszukiwanie pionowe. AI.
    Możesz zobaczyć następującą stronę.
    Zbuduj wielojęzyczny przepływ pracy tłumaczenia dokumentów z dostosowaniem PlatoBlockchain Data Intelligence do domeny i języka. Wyszukiwanie pionowe. AI.
  7. Postępuj zgodnie z instrukcjami, aby wprowadzić poprawki specyficzne dla domeny i języka.
    Na poprzednim zrzucie ekranu wyrażenie „Używanie statusu zdrowia w jakiejkolwiek polisie grupowego ubezpieczenia zdrowotnego jest prawnie zabronione” zostało przetłumaczone jako „La ley prohíbe el uso del estado de salud en cualquier póliza de seguro médico de grupo”. Chociaż tłumaczenie jest dokładne, zwroty zostały przearanżowane.
  8. Zmieńmy to na „El uso del estado de salud en cualquier póliza de seguro de salud grupal está prohibido por ley”, aby było to bardziej bezpośrednie tłumaczenie, odzwierciedlające oryginalną frazeologię.
  9. Wybierz Dodaj aby dodać to do słownika.
  10. Kiedy skończysz, wybierz Prześlij.
    Zbuduj wielojęzyczny przepływ pracy tłumaczenia dokumentów z dostosowaniem PlatoBlockchain Data Intelligence do domeny i języka. Wyszukiwanie pionowe. AI.

Spowoduje to wywołanie funkcji Workflow Completion Handler, a dane dostosowania zostaną zaktualizowane w tabeli DynamoDB. Funkcja przechowuje również poprawione tłumaczenie pod prefiksem po edycji.

Możesz obserwować dostosowania dodawane do translate_parallel_data tabeli w konsoli DynamoDB.

Zbuduj wielojęzyczny przepływ pracy tłumaczenia dokumentów z dostosowaniem PlatoBlockchain Data Intelligence do domeny i języka. Wyszukiwanie pionowe. AI.

Przebieg poleceń

Funkcja równoległego odświeżania danych jest wyzwalana co godzinę przez zaplanowane zdarzenie CloudWatch. Ta funkcja sprawdza dostępność nowych aktualizacji w translate_parallel_data tabeli, tworzy nowy równoległy plik danych TMX w Amazon S3 pod parallel_data prefiksu i aktualizuje komponent danych równoległych Amazon Translate. Możesz uruchomić tę funkcję ręcznie, jeśli nie chcesz czekać na wyzwolenie zaplanowanego zdarzenia.

Możesz obserwować aktualizowane równolegle dane w konsoli Amazon Translate.

Zbuduj wielojęzyczny przepływ pracy tłumaczenia dokumentów z dostosowaniem PlatoBlockchain Data Intelligence do domeny i języka. Wyszukiwanie pionowe. AI.

Po zakończeniu status zadania powinien być Aktywna i wartość dla Zaktualizowane rekordy powinien odzwierciedlać liczbę dodanych dostosowań (w tym przypadku 1).

Zbuduj wielojęzyczny przepływ pracy tłumaczenia dokumentów z dostosowaniem PlatoBlockchain Data Intelligence do domeny i języka. Wyszukiwanie pionowe. AI.

Teraz możemy ponownie uruchomić zadanie tłumaczenia ze zaktualizowanymi danymi. Uruchom ponownie funkcję Translation Job Invoker, aby zaobserwować dostosowywanie dodawane do tłumaczenia w drugiej iteracji. Amazon Translate używa teraz dostarczonych równoległych danych w celu dostosowania tłumaczenia.

Zbuduj wielojęzyczny przepływ pracy tłumaczenia dokumentów z dostosowaniem PlatoBlockchain Data Intelligence do domeny i języka. Wyszukiwanie pionowe. AI.

Zmiany w wynikach tłumaczenia można zaobserwować w portalu etykietowania. Zamiast domyślnego tłumaczenia widzimy zastosowane tłumaczenie niestandardowe.

Zbuduj wielojęzyczny przepływ pracy tłumaczenia dokumentów z dostosowaniem PlatoBlockchain Data Intelligence do domeny i języka. Wyszukiwanie pionowe. AI.

Ten przepływ pracy pomaga w tworzeniu prawidłowego cyklu ciągłego ulepszania wyników tłumaczenia za pomocą funkcji dostosowywania Amazon A2I i Amazon Translate.

Koszty:

Dzięki Amazon Translate i Amazon A2I płacisz na bieżąco na podstawie liczby przetworzonych znaków tekstu i za każdy obiekt oceniony przez człowieka. W tym przykładzie używamy trybu na żądanie DynamoDB. DynamoDB pobiera opłaty za odczyty i zapisy wykonane na Twoich stołach. Zapoznaj się ze stronami z cenami Tłumacz Amazon, Amazonka A2I, Amazon DynamoDB dla kosztów rzeczywistych.

Sprzątać

Po zakończeniu eksperymentowania z tym rozwiązaniem wyczyść zasoby, korzystając z konsoli AWS CloudFormation, aby usunąć wszystkie zasoby wdrożone w tym przykładzie. Pomaga to uniknąć dalszych kosztów na koncie.

Wnioski

Możesz użyć rozwiązania przedstawionego w tym poście, aby zbudować wielojęzyczny przepływ pracy tłumaczeń, który stopniowo wykorzystuje i rozszerza dostosowywanie specyficzne dla domeny, aby stale poprawiać wyniki tłumaczenia. Zapewniliśmy prosty mechanizm integracji istniejących zasobów dostosowywania z zarządzanymi usługami AI, takimi jak Amazon Translate i Amazon A2I, aby zbudować solidną usługę tłumaczenia dla Twojej aplikacji. Amazon Translate może pomóc w skalowaniu tego rozwiązania do obsługi ponad 5,550 par tłumaczeń po wyjęciu z pudełka. Amazon A2I może pomóc w łatwej integracji z wewnętrznym ekspertem lingwistycznym lub skorzystać z zewnętrznej siły roboczej w celu skalowania rozwiązania.

Aby uzyskać więcej informacji o Tłumaczu Amazon, odwiedź Zasoby Amazon Translate aby znaleźć zasoby wideo i posty na blogu oraz odnieść się do Najczęściej zadawane pytania dotyczące Tłumacza AWS. Podziel się z nami swoimi przemyśleniami w sekcji komentarzy lub w sekcji problemów projektu Repozytorium Github.


O autorach

Zbuduj wielojęzyczny przepływ pracy tłumaczenia dokumentów z dostosowaniem PlatoBlockchain Data Intelligence do domeny i języka. Wyszukiwanie pionowe. AI.Sathya Balakrishnan jest Sr Customer Delivery Architect w zespole Professional Services w AWS, specjalizującym się w rozwiązaniach Data/ML. Pracuje z federalnymi klientami finansowymi USA. Pasjonuje się budowaniem pragmatycznych rozwiązań do rozwiązywania problemów biznesowych klientów. W wolnym czasie lubi oglądać filmy i wędrować z rodziną.

Zbuduj wielojęzyczny przepływ pracy tłumaczenia dokumentów z dostosowaniem PlatoBlockchain Data Intelligence do domeny i języka. Wyszukiwanie pionowe. AI.Paul W. Joireman jest starszym architektem obsługi klienta w zakresie usług profesjonalnych w AWS, specjalizującym się w migracji aplikacji i pracującym z federalnymi klientami finansowymi USA. Paul lubi tworzyć rozwiązania technologiczne, podróżować z rodziną i wędrować po Parku Narodowym Shenandoah, o ile wędrówka kończy się w lokalnym browarze rzemieślniczym.

Znak czasu:

Więcej z Uczenie maszynowe AWS