이것은 Süddeutsche Zeitung의 소프트웨어 개발자인 Jakob Kohl의 게스트 게시물입니다. Süddeutsche Zeitung은 유료 구독 및 고유 사용자와 관련하여 독일 최고의 품질 일간지 중 하나입니다. 그것의 웹사이트, Sz.de, 15년 2021월 기준으로 XNUMX만 명 이상의 월간 순 사용자에게 도달했습니다.
스마트 스피커와 팟캐스트 덕분에 오디오 산업은 최근 몇 년 동안 진정한 붐을 경험했습니다. ~에 Süddeutsche Zeitung, 우리는 다양한 저널리즘을 더욱 쉽게 이용할 수 있는 새로운 방법을 끊임없이 찾고 있습니다. 디지털 저널리즘의 선구자로서 우리는 더 많은 기회를 열고자 합니다. Süddeutsche Zeitung 기사를 소비하는 독자. 우리는 기사에 고품질 오디오 내레이션을 제공할 수 있는 솔루션을 찾기 시작했습니다. 우리의 궁극적인 목표는 "기사 듣기" 기능을 출시하는 것이었습니다.
이 게시물에서는 음성 내레이션 프로세스를 Amazon Polly로 최적화한 방법을 공유합니다. 생생한 연설로 텍스트 고급 딥 러닝 기술을 사용합니다.
왜 Amazon Polly인가?
우리는 독일의 신경망인 Vicki가 아마존 폴리 보이스, 현재 시장에서 최고의 독일어 음성입니다. Amazon Polly는 다음과 같은 인상적인 기능을 제공합니다. 언어 간 전환, 예를 들어 영어 영화 제목과 다른 언어로 된 개인 이름을 올바르게 발음합니다(예: 기사 듣기 샬 운트 반 우리 웹 사이트).
인프라의 상당 부분이 이미 AWS에서 실행되고 있으므로 Amazon Polly를 사용하여 완벽한 핏이었다. Amazon Polly를 다음 구성 요소와 결합할 수 있습니다.
- An 아마존 단순 알림 서비스 (Amazon SNS) 기사를 구독할 수 있는 주제입니다. 기사는 편집자가 저장할 때마다 CMS에 의해 이 주제로 전송됩니다.
- An 아마존 CloudFront를 배포 람다@에지 기사의 오디오 버전에 재사용할 수 있는 페이월 프리미엄 기사에.
XNUMXD덴탈의 아마존 폴리 API 사용하기 쉽고 잘 문서화되어 있습니다. 개념 증명이 작동하는 데 일주일도 채 걸리지 않았습니다.
난제
SZ.de에는 매일 수백 개의 새로운 기사가 게시됩니다. 최초 발행 후, 뉴스 중심 기사에 새로운 단락이 추가되거나, 오타가 수정되거나, 티저가 변경되거나, 메타데이터가 검색 엔진에 최적화된 등 다양한 이유로 여러 번 업데이트될 수 있습니다.
전체 텍스트를 합성해야 하기 때문에 기사의 초기 출판을 위한 연설을 생성하는 것은 간단합니다. 그러나 동일한 콘텐츠에 대해 두 번 비용을 지불하지 않고 어떻게 기사의 업데이트된 버전에 대한 오디오를 신속하게 생성할 수 있습니까? 우리의 가장 큰 과제는 모든 단일 업데이트에 대해 전체 텍스트를 Amazon Polly에 반복적으로 보내는 것을 방지하는 것이었습니다.
우리의 기술 솔루션
편집자가 기사를 저장할 때마다 기사의 새 버전이 SNS 주제에 게시됩니다. 안 AWS 람다 함수는 이 주제를 구독하고 기사의 모든 새 버전에 대해 호출됩니다. 이 함수는 다음 단계를 실행합니다.
- 새 버전의 기사가 이미 완전히 합성되었는지 확인하십시오. 그렇다면 기능이 즉시 중지됩니다(오디오에 영향을 주지 않는 메타데이터만 변경된 경우 발생할 수 있음).
- 기사를 여러 개로 변환 SSML 문서, 각 텍스트 단락에 대해 대략 하나.
- 각 SSML 문서에 대해 함수는 계산된 해시를 사용하여 이미 오디오로 합성되었는지 확인합니다. 예를 들어:
- 기사를 처음 저장하는 경우 모든 SSML 문서를 합성해야 합니다.
- 단일 단락에서 오타가 수정된 경우 이 단락에 대한 SSML 문서만 재합성해야 합니다.
- 기사에 새로운 단락이 추가되면 이 새로운 단락에 대한 SSML 문서만 합성해야 합니다.
- 아직 합성되지 않은 모든 SSML 문서를 Amazon Polly로 개별적으로 보냅니다.
이러한 검사는 전체 기사가 여러 번 합성되는 것을 방지하여 성능을 최적화하고 비용을 줄이는 데 도움이 됩니다. SEO상의 이유로 제목 편집 또는 메타데이터 조정과 같은 사소한 변경으로 인해 추가 비용이 발생하지 않습니다.
다음 다이어그램은 솔루션 워크 플로우를 보여줍니다.
Amazon Polly가 SSML 문서를 합성한 후 오디오 파일은 다음의 출력 버킷으로 전송됩니다. 아마존 단순 스토리지 서비스 (아마존 S3). 두 번째 Lambda 함수는 해당 버킷에서 객체 생성을 수신 대기하고 기사의 모든 오디오 조각이 완료될 때까지 기다렸다가 다음을 사용하여 최종 오디오 파일로 병합합니다. Lambda 계층의 FFmpeg. 이 최종 오디오는 CloudFront 배포에서 오리진으로 사용되는 다른 S3 버킷으로 전송됩니다. CloudFront에서는 해당 오디오 버전의 프리미엄 기사에 대해 기존 페이월을 재사용합니다.
프리미엄 모델을 기반으로 프리미엄 기사의 단축된 오디오 버전을 제공합니다. 비구독자는 첫 번째 단락을 무료로 들을 수 있지만 전체 기사를 보려면 구독을 구입해야 합니다.
결론
Amazon Polly를 기존 인프라에 통합하는 것은 매우 간단했습니다. 우리 콘텐츠는 단락과 몇 가지 추가 휴식만 포함하기 때문에 최소한의 사용자 정의가 필요합니다. 가장 어려웠던 부분은 성능과 비용 최적화였습니다. 우리는 기사를 단락에 해당하는 여러 SSML 문서로 나누고, 각 SSML 문서의 변경 사항을 확인하고, 조각을 병합하여 전체 오디오 파일을 빌드하여 달성했습니다. 이러한 최적화를 통해 다음을 달성할 수 있습니다.
- 실제 변경 사항만 합성하여 합성된 캐릭터의 양을 50% 이상 줄이십시오.
- 합성할 오디오가 적기 때문에 기사 텍스트의 변경 사항이 오디오에 나타나는 데 걸리는 시간을 줄입니다.
- 전체 기사를 다시 합성하지 않고 단락 사이에 임의의 오디오 파일을 추가합니다. 예를 들어, 프리미엄 기사의 단축된 오디오 버전에 사운드 파일을 포함하여 정식 버전을 들으려면 구독이 필요하다는 이어지는 메모와 첫 번째 단락을 분리할 수 있습니다.
SZ.de 기사에서 "기사 듣기" 기능을 출시한 후 첫 달에 많은 긍정적인 사용자 피드백을 받았습니다. 출시 후 첫 30,000개월 동안 거의 2명의 사용자에게 도달할 수 있었습니다. 이 사용자들 중에서 약 200명이 우리 페이월 뒤에 있는 기사의 티저를 듣고 유료 구독으로 전환했습니다. "기사 듣기" 기능은 페이월 뒤에 있지 않지만 사용자는 구독이 있는 경우에만 프리미엄 기사를 완전히 들을 수 있습니다. 저희 웹사이트는 페이월이 없는 무료 기사도 제공합니다. 앞으로 다른 SZ 플랫폼, 특히 모바일 뉴스 앱으로 기능을 확장할 예정입니다.
저자에 관하여
야콥 콜 Süddeutsche Zeitung의 소프트웨어 개발자로 민첩한 웹사이트 팀에서 현대 기술 작업을 즐깁니다. 그는 "SZ 기사 듣기" 기능의 주요 개발자 중 한 명입니다. 여가 시간에는 웹 개발만큼 기술 및 시각적 디자인이 중요한 목재 가구를 만드는 것을 좋아합니다.
- "
- 000
- 100
- 2021
- ACCESS
- 달성
- 추가
- 많은
- 기민한
- All
- 이미
- 아마존
- 양
- 다른
- 앱
- 기사
- 기사
- 오디오
- AWS
- BEST
- 가장 큰
- 붐
- 건물
- 도전
- 이전 단계로 돌아가기
- 요금
- 확인
- 확인하는 것이 좋다.
- 개념
- 소비
- 함유량
- 수
- 일
- 디자인
- 개발자
- 개발자
- 개발
- 다른
- 디지털
- 분포
- 서류
- 하지 않습니다
- 편집자
- 영어
- 특히
- 예
- 펼치기
- 경험
- 특색
- 피드백
- 먼저,
- 처음으로
- 맞게
- 수행원
- 무료
- 가득 찬
- 기능
- 미래
- 생성
- 독일
- 골
- 손님
- 고객 포스트
- 도움
- 방법
- HTTPS
- 중대한
- 포함
- 산업
- 인프라
- IT
- 저널리즘
- 언어
- 시작
- 지도
- 배우기
- 청취
- 찾고
- 시장
- 백만
- 모바일
- 모델
- 개월
- 가장
- 영화
- 이름
- news
- 공고
- 제공
- 열 수
- 기회
- 기타
- 지급
- 성능
- 확인
- 플랫폼
- 팟 캐스트
- 프리미엄
- 방지
- 방법
- 증명
- 개념 증명
- 제공
- 매수
- 품질
- 빨리
- 이유
- 감소
- 필수
- 검색
- 검색 엔진
- 서비스
- 공유
- 단순, 간단, 편리
- 스마트 한
- So
- 소프트웨어
- 솔루션
- 스피커
- 시작
- 저장
- 가입
- 신청
- 팀
- 테크니컬
- 기술
- 시간
- 유일한
- 업데이트
- us
- 사용
- 사용자
- 목소리
- 웹
- 웹 사이트
- 주
- 없이
- 작업
- 일하는
- 년