이 튜토리얼에서는 Cloud Translation API 커넥터를 사용하여 비동기 배치 모드에서 파일을 다른 언어로 번역하는 워크플로를 만드는 방법을 보여줍니다. 이는 입력이 처리되는 동안 실시간 출력을 제공합니다.
목표
이 가이드에서는 다음 단계를 진행합니다.
- 입력 Cloud Storage 버킷을 만듭니다.
- 영어로 파일 2개를 만들어 입력 버킷에 업로드합니다.
- Cloud Translation API 커넥터를 사용하여 두 파일을 프랑스어 및 스페인어로 번역하고 결과를 출력 버킷에 저장하는 워크플로를 만듭니다.
- 워크플로를 배포하고 실행하여 전체 프로세스를 조정합니다.
비용
이 문서에서는 비용이 청구될 수 있는 다음과 같은 Google Cloud 구성요소를 사용합니다.
프로젝트 사용량을 기준으로 예상 비용을 산출하려면 가격 계산기를 사용하세요.
시작하기 전에
조직에서 정의한 보안 제약조건으로 인해 다음 단계를 완료하지 못할 수 있습니다. 문제 해결 정보는 제한된 Google Cloud 환경에서 애플리케이션 개발을 참조하세요.
- Google Cloud 계정에 로그인합니다. Google Cloud를 처음 사용하는 경우 계정을 만들고 Google 제품의 실제 성능을 평가해 보세요. 신규 고객에게는 워크로드를 실행, 테스트, 배포하는 데 사용할 수 있는 $300의 무료 크레딧이 제공됩니다.
- Install the Google Cloud CLI.
-
To initialize the gcloud CLI, run the following command:
gcloud init
-
Create or select a Google Cloud project.
-
Create a Google Cloud project:
gcloud projects create PROJECT_ID
Replace
PROJECT_ID
with a name for the Google Cloud project you are creating. -
Select the Google Cloud project that you created:
gcloud config set project PROJECT_ID
Replace
PROJECT_ID
with your Google Cloud project name.
-
-
Enable the Cloud Storage, Translation, and Workflows APIs:
gcloud services enable storage.googleapis.com
translate.googleapis.com workflows.googleapis.com - Install the Google Cloud CLI.
-
To initialize the gcloud CLI, run the following command:
gcloud init
-
Create or select a Google Cloud project.
-
Create a Google Cloud project:
gcloud projects create PROJECT_ID
Replace
PROJECT_ID
with a name for the Google Cloud project you are creating. -
Select the Google Cloud project that you created:
gcloud config set project PROJECT_ID
Replace
PROJECT_ID
with your Google Cloud project name.
-
-
Enable the Cloud Storage, Translation, and Workflows APIs:
gcloud services enable storage.googleapis.com
translate.googleapis.com workflows.googleapis.com - gcloud 구성요소를 업데이트합니다.
gcloud components update
- 계정을 사용하여 로그인합니다.
gcloud auth login
- 이 튜토리얼에서 사용한 기본 위치를 다음과 같이 설정합니다.
gcloud config set workflows/location us-central1
이 튜토리얼에서는
us-central1
에 있는 기본 AutoML Translation 모델을 사용하므로 위치를us-central1
로 설정해야 합니다.기본값이 아닌 AutoML Translation 모델 또는 용어를 사용하는 경우 커넥터에 대한 호출과 동일한 위치에 있어야 합니다. 그렇지 않으면
INVALID_ARGUMENT (400)
오류가 반환됩니다. 자세한 내용은 batchTranslateText 메서드를 참조하세요.
입력 Cloud Storage 버킷 및 파일 만들기
Cloud Storage를 사용하여 객체를 저장할 수 있습니다. 객체는 모든 형식의 파일로 구성된 변경할 수 없는 데이터 조각이며 버킷이라고 하는 컨테이너에 저장됩니다.
번역할 파일을 저장할 Cloud Storage 버킷을 만듭니다.
BUCKET_INPUT=${GOOGLE_CLOUD_PROJECT}-input-files gcloud storage buckets create gs://${BUCKET_INPUT}
영어로 파일 2개를 만들어 입력 버킷에 업로드합니다.
echo "Hello World!" > file1.txt gcloud storage cp file1.txt gs://${BUCKET_INPUT} echo "Workflows connectors simplify calling services." > file2.txt gcloud storage cp file2.txt gs://${BUCKET_INPUT}
워크플로 배포 및 실행
워크플로 정의는 YAML 또는 JSON 형식으로 작성할 수 있는 Workflows 구문을 사용하여 기술되는 일련의 단계들로 구성됩니다. 이것이 워크플로의 정의입니다. 워크플로를 만든 후 실행에 사용할 수 있도록 워크플로를 배포합니다.
다음 콘텐츠가 포함된 파일 이름이
workflow.yaml
인 텍스트 파일을 만듭니다.이 워크플로는 변수를 할당하고 출력 버킷을 만든 다음 파일 번역을 시작하여 결과를 출력 버킷에 저장합니다.
워크플로를 만든 후 배포합니다.
gcloud workflows deploy batch-translation --source=workflow.yaml
워크플로를 실행합니다.
gcloud workflows execute batch-translation
워크플로 상태를 보려면 반환된 명령어를 실행하면 됩니다. 예를 들면 다음과 같습니다.
gcloud workflows executions describe eb4a6239-cffa-4672-81d8-d4caef7d8424 / --workflow batch-translation / --location us-central1
워크플로는
ACTIVE
여야 합니다. 몇 분 후 번역된 파일(프랑스어 및 스페인어)이 출력 버킷에 업로드됩니다.
출력 버킷의 객체 나열
출력 버킷의 객체를 나열하여 워크플로가 예상대로 작동하는지 확인할 수 있습니다.
출력 버킷 이름을 검색합니다.
gcloud storage ls
출력은 다음과 비슷합니다.
gs://PROJECT_ID-input-files/ gs://PROJECT_ID-output-files-TIMESTAMP/
출력 버킷의 객체 나열
gcloud storage ls gs://PROJECT_ID-output-files-TIMESTAMP/** --recursive
몇 분 후 프랑스어와 스페인어로 번역된 파일 두 개가 나열됩니다.
삭제
이 튜토리얼용으로 새 프로젝트를 만든 경우 이 프로젝트를 삭제합니다. 기존 프로젝트를 사용한 경우 이 튜토리얼에 추가된 변경사항은 제외하고 보존하려면 튜토리얼용으로 만든 리소스를 삭제합니다.
프로젝트 삭제
비용이 청구되지 않도록 하는 가장 쉬운 방법은 튜토리얼에서 만든 프로젝트를 삭제하는 것입니다.
프로젝트를 삭제하려면 다음 안내를 따르세요.
- In the Google Cloud console, go to the Manage resources page.
- In the project list, select the project that you want to delete, and then click Delete.
- In the dialog, type the project ID, and then click Shut down to delete the project.
가이드 리소스 삭제
튜토리얼 설정 중에 추가한 gcloud 기본 구성을 삭제합니다.
gcloud config unset workflows/location
이 튜토리얼에서 만든 워크플로를 삭제합니다.
gcloud workflows delete WORKFLOW_NAME
이 튜토리얼에서 만든 버킷을 삭제합니다.
gcloud storage rm gs://BUCKET_NAME --recursive
여기서
BUCKET_NAME
은 삭제할 버킷의 이름입니다.my-bucket
).응답은 다음 예시와 유사합니다.
Removing gs://my-bucket/...
다음 단계
- Workflows에 대해 자세히 알아보려면 Workflows 이해를 참조하세요.
- Workflows 구문에 대한 자세한 내용은 Workflows 구문 참조를 확인하세요.
- Workflows 커넥터에 대한 자세한 내용은 커넥터 이해를 참조하세요.