Cloud Translation - Advanced에서는 커스텀 AutoML Translation 모델을 사용하여 텍스트 번역을 지원하고 Cloud Translation API가 고객의 분야별 용어를 정확하게 번역하도록 용어집 만들기를 지원합니다.
프로젝트에 AutoML 커스텀 모델을 사용하려면 AutoML API(automl.googleapis.com)를 사용 설정해야 합니다. Google Cloud CLI 설치, 서비스 계정으로 프로젝트 설정, 액세스 토큰 획득 방법은 설정 페이지를 참조하세요. 용어집 또는 일괄 요청 기능을 사용하려면 Cloud Storage 버킷을 만들고 서비스 계정에 이 버킷에 대한 액세스 권한을 부여해야 합니다.
PDF와 같이 형식이 지정된 문서를 번역하려면 문서 번역을 참조하세요.
시작하기 전에
Cloud Translation API 사용을 시작하려면 Cloud Translation API가 사용 설정된 프로젝트가 있고 적절한 사용자 인증 정보를 포함하는 비공개 키가 있어야 합니다. 공통 프로그래밍 언어용 클라이언트 라이브러리를 설치하여 API를 호출할 수도 있습니다. 자세한 내용은 설정 페이지를 참조하세요.
모델 비교
Cloud Translation - Advanced에서 번역을 요청할 때 사용할 번역 모델을 지정할 수 있습니다. 모델이 지정되지 않으면 nmt
모델이 사용됩니다.
모델 | 적합한 분야 | 예 |
---|---|---|
인공신경망 기계 번역(NMT) 모델 |
분야와 관련이 없는 일반 웹사이트 콘텐츠와 같은 일반 텍스트 사용 사례(예: 뉴스 기사) |
뉴스 기사, 소셜 미디어, 채팅 애플리케이션, 리뷰 |
AutoML Translation 모델 | 분야별 텍스트. 사용자는 주어진 언어 조합에서 사용 사례별 학습 데이터를 제공하여 Google의 분야별 NMT 모델을 맞춤설정합니다. | 금융 뉴스, 기술 문서, 특정 필드에 고유한 용어와 특수 용어를 사용하는 모든 텍스트 |
모델 ID를 사용하여 번역 모델을 지정합니다. NMT 모델의 경우 모델 ID는 general/nmt
입니다. AutoML Translation 모델 ID에 대한 자세한 내용은 다음 섹션을 참조하세요.
텍스트 번역
입력 텍스트로 일반 텍스트 또는 HTML을 사용할 수 있습니다. Cloud Translation API는 입력된 HTML 태그를 번역하지 않으며 태그 사이에 표시되는 텍스트만 번역합니다. 출발어와 도착어의 차이로 인해 출력에는 (번역되지 않은) HTML 태그가 태그 사이에 번역된 텍스트를 포함한 상태로 가능한 범위까지 유지됩니다. 번역 시 어순 변경으로 인해 출력의 HTML 태그 순서가 입력 텍스트의 태그 순서와 다를 수 있습니다.
입력 문자열 번역
REST 및 명령줄
텍스트를 번역하려면 POST
요청을 실행하고 출발어(source_language_code
), 도착어(target_language_code
), 번역할 텍스트(contents
)를 식별하는 JSON을 요청 본문에 삽입합니다. 번역할 여러 텍스트 문자열을 JSON에 포함하여 제공할 수 있습니다(예시 참조). ISO-639-1 코드를 사용하여 출발어와 도착어를 지정하세요.
다음은 curl
또는 PowerShell을 사용한 POST
요청의 예시입니다. 이 예시에서는 Google Cloud Google Cloud CLI를 사용하여 프로젝트에 설정된 서비스 계정의 액세스 토큰을 사용합니다.
Google Cloud CLI 설치, 서비스 계정으로 프로젝트 설정, 액세스 토큰 획득 방법은 설정 페이지를 참조하세요.
요청 데이터를 사용하기 전에 다음을 바꿉니다.
- PROJECT_NUMBER_OR_ID: Google Cloud 프로젝트 번호 또는 ID
HTTP 메서드 및 URL:
POST https://translation.googleapis.com/v3/projects/PROJECT_NUMBER_OR_ID:translateText
JSON 요청 본문:
{ "sourceLanguageCode": "en", "targetLanguageCode": "ru", "contents": ["Dr. Watson, come here!", "Bring me some coffee!"] }
요청을 보내려면 다음 옵션 중 하나를 선택합니다.
curl
요청 본문을 request.json
파일에 저장하고 다음 명령어를 실행합니다.
curl -X POST \
-H "Authorization: Bearer "$(gcloud auth application-default print-access-token) \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://translation.googleapis.com/v3/projects/PROJECT_NUMBER_OR_ID:translateText "
PowerShell
요청 본문을 request.json
파일에 저장하고 다음 명령어를 실행합니다.
$cred = gcloud auth application-default print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://translation.googleapis.com/v3/projects/PROJECT_NUMBER_OR_ID:translateText " | Select-Object -Expand Content
다음과 비슷한 JSON 응답이 표시됩니다.
{ "translations": [ { "translatedText": "Доктор Ватсон, иди сюда!", }, { "translatedText": "Принеси мне кофе!", } ] }
translations
배열에는 요청한 targetLanguageCode
언어(ru
: 러시아어)로 번역된 translatedText
필드 2개가 포함되어 있습니다. 번역은 요청에 있는 원본 텍스트 배열과 동일한 순서로 표시됩니다.
Go
이 샘플을 사용해 보기 전에 Translation 빠른 시작: 클라이언트 라이브러리 사용의 Go 설정 안내를 따르세요. 자세한 내용은 Translation Go API 참조 문서를 확인하세요.
자바
이 샘플을 사용해 보기 전에 Translation 빠른 시작: 클라이언트 라이브러리 사용의 자바 설정 안내를 따르세요. 자세한 내용은 Translation Java API 참조 문서를 확인하세요.
Node.js
이 샘플을 사용해 보기 전에 Translation 빠른 시작: 클라이언트 라이브러리 사용의 Node.js 설정 안내를 따르세요. 자세한 내용은 Translation Node.js API 참조 문서를 확인하세요.
Python
이 샘플을 사용해 보기 전에 Translation 빠른 시작: 클라이언트 라이브러리 사용의 Python 설정 안내를 따르세요. 자세한 내용은 Translation Python API 참조 문서를 확인하세요.
추가 언어
C#: 클라이언트 라이브러리 페이지의 C# 설정 안내를 따른 후 .NET용 번역 참조 문서를 참조하세요.
PHP: 클라이언트 라이브러리 페이지의 PHP 설정 안내를 따른 후 PHP용 번역 참조 문서를 참조하세요.
Ruby: 클라이언트 라이브러리 페이지의 Ruby 설정 안내를 따른 다음 Ruby용 번역 참조 문서를 참조하세요.
AutoML Translation 커스텀 모델을 사용하여 텍스트 번역
REST 및 명령줄
이 예시에서는 모델 ID가 TRL1395675701985363739
인 AutoML Translation 모델을 사용하여 텍스트를 번역합니다. AutoML Translation UI의 모델 목록 또는 모델을 학습시킬 때 API 응답에서 AutoML Translation 모델의 모델 ID를 가져올 수 있습니다.
요청 데이터를 사용하기 전에 다음을 바꿉니다.
- PROJECT_NUMBER_OR_ID: Google Cloud 프로젝트 번호 또는 ID
HTTP 메서드 및 URL:
POST https://translation.googleapis.com/v3/projects/PROJECT_NUMBER_OR_ID/locations/us-central1:translateText
JSON 요청 본문:
{ "model": "projects/PROJECT_NUMBER_OR_ID/locations/us-central1/models/TRL1395675701985363739", "sourceLanguageCode": "en", "targetLanguageCode": "ru", "contents": ["Dr. Watson, please discard your trash. You've shared unsolicited email with me. Let's talk about spam and importance ranking in a confidential mode."] }
요청을 보내려면 다음 옵션 중 하나를 선택합니다.
curl
요청 본문을 request.json
파일에 저장하고 다음 명령어를 실행합니다.
curl -X POST \
-H "Authorization: Bearer "$(gcloud auth application-default print-access-token) \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://translation.googleapis.com/v3/projects/PROJECT_NUMBER_OR_ID/locations/us-central1:translateText "
PowerShell
요청 본문을 request.json
파일에 저장하고 다음 명령어를 실행합니다.
$cred = gcloud auth application-default print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://translation.googleapis.com/v3/projects/PROJECT_NUMBER_OR_ID/locations/us-central1:translateText " | Select-Object -Expand Content
다음과 비슷한 JSON 응답이 표시됩니다.
{ "translation": { "translatedText": "Доктор Ватсон, пожалуйста, откажитесь от своего мусора. Вы поделились нежелательной электронной почтой со мной. Давайте поговорим о спаме и важности рейтинга в конфиденциальном режиме.", "model": "projects/project-number/locations/us-central1/models/TRL1395675701985363739" } }
Go
이 샘플을 사용해 보기 전에 Translation 빠른 시작: 클라이언트 라이브러리 사용의 Go 설정 안내를 따르세요. 자세한 내용은 Translation Go API 참조 문서를 확인하세요.
자바
이 샘플을 사용해 보기 전에 Translation 빠른 시작: 클라이언트 라이브러리 사용의 자바 설정 안내를 따르세요. 자세한 내용은 Translation Java API 참조 문서를 확인하세요.
Node.js
이 샘플을 사용해 보기 전에 Translation 빠른 시작: 클라이언트 라이브러리 사용의 Node.js 설정 안내를 따르세요. 자세한 내용은 Translation Node.js API 참조 문서를 확인하세요.
Python
이 샘플을 사용해 보기 전에 Translation 빠른 시작: 클라이언트 라이브러리 사용의 Python 설정 안내를 따르세요. 자세한 내용은 Translation Python API 참조 문서를 확인하세요.
추가 언어
C#: 클라이언트 라이브러리 페이지의 C# 설정 안내를 따른 후 .NET용 번역 참조 문서를 참조하세요.
PHP: 클라이언트 라이브러리 페이지의 PHP 설정 안내를 따른 후 PHP용 번역 참조 문서를 참조하세요.
Ruby: 클라이언트 라이브러리 페이지의 Ruby 설정 안내를 따른 다음 Ruby용 번역 참조 문서를 참조하세요.
모델 매개변수 사용
REST 및 명령줄
model
쿼리 매개변수를 사용하면 번역에 사용할 모델을 지정할 수 있습니다. 예를 들어 NMT 모델을 사용하려면 nmt
를 지정합니다.
다음 샘플은 번역 요청에서 model
매개변수를 사용하는 방법을 보여줍니다.
요청 데이터를 사용하기 전에 다음을 바꿉니다.
- PROJECT_NUMBER_OR_ID: Google Cloud 프로젝트 번호 또는 ID
HTTP 메서드 및 URL:
POST https://translation.googleapis.com/v3/projects/PROJECT_NUMBER_OR_ID/locations/global:translateText
JSON 요청 본문:
{ "model": "projects/PROJECT_NUMBER_OR_ID/locations/global/models/general/nmt", "sourceLanguageCode": "en", "targetLanguageCode": "de", "contents": ["Come here!"] }
요청을 보내려면 다음 옵션 중 하나를 선택합니다.
curl
요청 본문을 request.json
파일에 저장하고 다음 명령어를 실행합니다.
curl -X POST \
-H "Authorization: Bearer "$(gcloud auth application-default print-access-token) \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://translation.googleapis.com/v3/projects/PROJECT_NUMBER_OR_ID/locations/global:translateText "
PowerShell
요청 본문을 request.json
파일에 저장하고 다음 명령어를 실행합니다.
$cred = gcloud auth application-default print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }
Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://translation.googleapis.com/v3/projects/PROJECT_NUMBER_OR_ID/locations/global:translateText " | Select-Object -Expand Content
다음과 비슷한 JSON 응답이 표시됩니다.
{ "translations": [ { "translatedText": "Komm her!", "model": "projects/project-number/locations/global/models/general/nmt" } ] }
추가 리소스
- 일반적인 문제 또는 오류를 해결하는 데 도움이 필요하면 문제 해결 페이지를 참조하세요.