관심분야/클라우드

#1 AWS 음성지원 서비스를 활용한 신문 읽어주는 프로젝트

뱅노 2019. 10. 13. 20:02

AWS Service 탐방을 하고 있던 중에 "이 서비스 하나로 무언가 어플리케이션을 만들 수 있겠는데?" 라고 생각이든 서비스를 찾았다. 서비스 이름 Polly라고 하는 음성인식 서비스 이다.

 

Polly에 대해서 간략하게 설명을 하자면, 텍스트로 되어있는 내용을 음성으로 읽어주는 시스템이다. 우리가 흔히 알고 있는 TTS 역할을 하는 서비스이다. Polly는 영어, 브라질식 포르투칼어, 덴마크어, 프랑스어, 일본어, 한국어, 중국어, 북경어, 스페인어를 지원해 준다. 한국어의 경우 서연이라는 이름의 한국말 음성만 된다. 생각보다 로봇 같은 느낌이 없었다. 여기서 Polly에 대한 설명은 마무리를 하고 내가 이제부터 하고자 하는 음성지원 서비스 프로젝트를 아키텍처를 설명하도록 하겠다.

작업은 상당히 간단하게 할 예정이다. 먼저 EC2에 python으로 배치 프로그램을 만들 것이다. python 라이브러리로는 bebeautifulsoup를 사용하여서 신문 기사를 크롤링 할 예정이다. 크롤링한 신문 기사는 DynamoDB에 적재를 할 것이다.

 

DynamoDB에 적재를 하게 되면 Lambda Trigger를 이용하여 DynamoDB에 데이터가 들어온다. 이후 기사 내용을 Polly로 요청하여서 mp3 파일을 만든다. mp3 파일을 만든 직후 S3에 적재 하도록 한다. mp3를 적재한 이후에 Lambda는 다시 DynamoDB에 mp3의 저장 디렉토리 정보를 Update 한다.

 

사용자는 S3에 올라가 있는 html 화면을 통해서 접근을 한다. 그리고 Lambda 서비스를 호출하여서 크롤링 목록을 조회하고 원한 기사를 클릭하면, 기사 내용 및 음성으로 기사 내용을 읽어준다. 또한 원할 경우 mp3로 다운로드를 할 수 있도록 지원을 한다.

 

여기까지가 작업할 내용이다. 각 작업의 세부내용을 추가적으로 올릴 예정이다. DynamoDB 생성 작업부터 보실려면 다음 포스팅부터 보시면 된다.

 

▶ 참고

https://aws.amazon.com/ko/blogs/machine-learning/build-your-own-text-to-speech-applications-with-amazon-polly/

 

Build Your Own Text-to-Speech Applications with Amazon Polly | Amazon Web Services

In general, speech synthesis isn’t easy.  You can’t just assume that when an application reads each letter of a sentence the output will make sense. A few common challenges for text-to-speech applications include: Words that are written the same way, but t

aws.amazon.com