Amazon Transcribe를 사용하여 음성 파일을 문자 넘기기

Amazon Transcribe가 일본어에 대응하고 있었기 때문에 사용하고 싶었다.
전체 Terraform 스크립트는 여기에 있습니다.

전체 개요



음성 파일을 S3의 버킷에 업로드하는 것을 트리거로 하고, S3가 Lambda를 실행하고, Lambda는 S3에 업로드된 파일 이름을 키로 하여 Transscribe를 호출합니다.



Terraform의 디렉토리 구성



다음과 같이 디렉토리를 오고 있다.
terraform의 디렉토리를 자르는 방법은 항상 헤매는 · · ·
root
  ┣ iam      # 権限まわり
  ┣ lambda   
  ┗ s3
  main.tf
  variable.tf # これは各自作る

조심



아무것도 생각하지 않고 terraform을 기술해 가면, 이하의 에러가 나온다.
[ERROR] BadRequestException: An error occurred (BadRequestException) when calling the StartTranscriptionJob operation: The S3 URI that you provided can't be accessed. Make sure that you have read permission and try your request again.

Transcribe가 S3에 액세스 할 수 없다는 것을 알았지 만 해결하는 데 도움이되었습니다.
일련의 흐름의 트리거가 되는 S3에 S3에의 액세스권을 준다는, 계란과 닭과 같은 권한을 첨부할 필요가 있다.

lambda/role.tf
resource "aws_iam_role_policy_attachment" "transcribe_access_s3_policy_attachment" {
  policy_arn = aws_iam_policy.transcribe_access_s3_policy.arn
  role = aws_iam_role.execute_transcribe_role.name
}

좋은 웹페이지 즐겨찾기