OCI Speech를 사용하여 자연어 필사

Oracle Cloud Infrastructure (OCI) Speech는 여러 클라우드 네이티브 AI 서비스 중 하나입니다. 음성 서비스를 사용하여 오디오 파일을 JSON 형식으로 저장된 읽기 가능한 텍스트로 변환할 수 있습니다.

Speech는 인간의 연설이 포함된 오디오 파일을 매우 정확한 텍스트 번역으로 쉽게 변환할 수 있도록 하여 음성 언어의 위력을 활용합니다. 이 서비스는 웹 애플리케이션, REST API, SDK, CLI 또는 콘솔을 사용하여 액세스할 수 있는 OCI 네이티브 애플리케이션입니다.

Speech는 자동 음성 인식 (ASR) 기술을 사용하여 문법적으로 올바른 비디오 및 오디오 파일을 전사합니다. Speech는 충실도가 낮은 오디오 녹음을 처리하고 회의 또는 콜 센터 통화와 같은 까다로운 녹음을 번역합니다. Speech를 사용하면 OCI Object Storage 또는 데이터 자산에 저장된 파일을 정확하고, 정규화되고, 타임스탬프가 적용되고, 신성하게 필터링된 텍스트로 전환할 수 있습니다. 이 기능은 다운스트림 서비스에서 사용할 수 있습니다. 예를 들어, 언어 및 예측과 같은 추가 서비스를 사용하여 통화 감성을 분석하고, 광고를 위한 콘텐츠를 타겟팅하고, 미디어 폴더를 인덱스화하고, Oracle Cloud Infrastructure Lakehouse를 사용하여 미디어 검색 엔진을 생성할 수 있습니다.

구조

이 아키텍처는 OCI Speech가 핵심인 일반적인 시스템의 다양한 구성 요소 간 관계를 보여줍니다.

이 구조는 여러 유형의 응용 프로그램에 적용될 수 있습니다. 예를 들어, 웹 응용 프로그램은 문제를 보고하는 고객과의 지원 센터 담당자의 대화를 기록할 수 있습니다. 대화의 오디오 파일은 새 오디오 파일에 대한 이벤트를 내보내는 OCI Object Storage에 저장됩니다. OCI 이벤트는 OCI 음성 서비스에 대한 REST API 호출을 사용하여 필사 요청을 생성하는 OCI Functions 앱을 트리거합니다. Speech는 작업을 수행하고, OCI Object Storage에서 오디오 파일을 검색하고, 사전 학습된 음향 및 언어 모델로 파일을 공급하고, 출력을 JSON 텍스트 파일로 전송합니다. JSON 파일은 OCI Object Storage에 저장됩니다. OCI Object Storage는 새 텍스트 파일을 감지하고 이벤트를 내보냅니다. OCI 이벤트OCI 함수를 트리거하여 텍스트 파일을 가져오고 텍스트 및 메타데이터를 MySQL 데이터베이스에 업로드합니다. 또한 OCI 이벤트OCI 통지를 트리거하여 기록이 준비되면 이벤트에 가입한 웹 애플리케이션에 알리는 메시지를 게시합니다. 웹 응용 프로그램은 Help Desk 담당자가 생성한 티켓에 transcript를 표시합니다.

선택적으로 웹 애플리케이션은 오디오 파일 기간, 크기, 시작 일자 및 시간과 같은 오디오 파일 메타데이터를 검색하고 지원 센터 티켓에 저장할 수 있습니다.

OCI Object Storage에 저장된 오디오 및 텍스트 파일은 Oracle Cloud Infrastructure Lakehouse(다이어그램에는 표시되지 않음)를 사용하여 다운스트림 분석 툴로 제공할 수 있습니다.

다음 다이어그램은 이 참조 아키텍처를 보여 줍니다.

다음은 architecture-ai-speech.png에 대한 설명입니다.
그림 architecture-ai-speech.png에 대한 설명

아키텍처-ai-speech-oracle.zip

구조에는 다음과 같은 구성 요소가 있습니다.

  • 지역

    Oracle Cloud Infrastructure 리전은 가용성 도메인이라고 하는 데이터 센터가 하나 이상 포함된 지역화된 지리적 영역입니다. 지역은 다른 지역과 독립적이며, 먼 거리가 그들을 분리 할 수 있습니다 (국가 또는 대륙에 걸쳐).

  • 가용성 도메인

    가용성 도메인은 한 지역 내의 독립형 독립 데이터 센터입니다. 각 가용성 도메인의 물리적 리소스는 결함 허용을 제공하는 다른 가용성 도메인의 리소스와 격리됩니다. 가용성 도메인은 전원, 냉각 또는 내부 가용성 도메인 네트워크와 같은 인프라를 공유하지 않습니다. 따라서 한 가용성 도메인의 장애가 해당 영역의 다른 가용성 도메인에 영향을 미치지 않아야 합니다.

  • 결함 도메인

    장애 도메인은 가용성 도메인 내 하드웨어 및 인프라 그룹입니다. 가용성 도메인에는 독립적인 전원 및 하드웨어를 갖춘 3개의 장애 도메인이 있습니다. 여러 결함 도메인에 리소스를 분배할 때 응용 프로그램은 결함 도메인 내의 물리적 서버 오류, 시스템 유지 관리 및 전원 오류를 허용할 수 있습니다.

  • VCN(가상 클라우드 네트워크) 및 서브넷

    VCN은 Oracle Cloud Infrastructure 지역에서 설정한 맞춤형 소프트웨어 정의 네트워크입니다. 기존의 데이터 센터 네트워크와 마찬가지로 VCN을 통해 네트워크 환경을 제어할 수 있습니다. VCN에는 VCN 생성 후 변경할 수 있는 겹치지 않는 CIDR 블록이 여러 개 있을 수 있습니다. VCN을 서브넷으로 분할할 수 있습니다. 서브넷은 지역 또는 가용성 도메인으로 범위가 지정될 수 있습니다. 각 서브넷은 VCN의 다른 서브넷과 겹치지 않는 연속적인 주소 범위로 구성됩니다. 서브넷 생성 후 크기를 변경할 수 있습니다. 서브넷은 공용 또는 전용일 수 있습니다.

  • 구획

    구획은 Oracle Cloud Infrastructure 테넌시 내의 영역 간 논리적 파티션입니다. 구획을 사용하여 Oracle Cloud에서 리소스를 구성하고, 리소스에 대한 액세스를 제어하고, 사용 할당량을 설정합니다. 지정된 컴파트먼트의 리소스에 대한 액세스를 제어하려면 리소스에 액세스할 수 있는 사용자 및 이들이 수행할 수 있는 작업을 지정하는 정책을 정의합니다.

  • 로드 밸런서

    Oracle Cloud Infrastructure Load Balancing 서비스는 단일 시작점에서 백엔드에 있는 여러 서버로 트래픽을 자동으로 배포합니다.

  • 보안 목록

    각 서브넷에 대해 서브넷에 들어오고 나가도록 허용해야 하는 트래픽의 소스, 대상 및 유형을 지정하는 보안 규칙을 생성할 수 있습니다.

  • Identity and Access Management (IAM)

    Oracle Cloud Infrastructure Identity and Access Management(IAM)는 Oracle Cloud Infrastructure(OCI) 및 Oracle Cloud Applications의 액세스 제어 플레인입니다. IAM API 및 사용자 인터페이스를 통해 ID 도메인 및 ID 도메인 내의 리소스를 관리할 수 있습니다. 각 OCI IAM ID 도메인은 독립형 ID 및 액세스 관리 솔루션 또는 다른 사용자 모집단을 나타냅니다.

  • 객체 스토리지

    오브젝트 스토리지를 사용하면 데이터베이스 백업, 분석 데이터, 이미지 및 비디오와 같은 리치 컨텐츠 등 모든 컨텐츠 유형의 대량의 구조적 데이터와 비구조적 데이터에 빠르게 액세스할 수 있습니다. 인터넷 또는 클라우드 플랫폼 내에서 직접 안전하고 안전하게 데이터를 저장하고 검색할 수 있습니다. 성능 또는 서비스 안정성이 저하되지 않고 스토리지를 확장할 수 있습니다. 빠르고 즉각적이며 자주 액세스하는 데 필요한 "핫" 스토리지에 표준 스토리지를 사용합니다. 장기간 보존하고 거의 또는 거의 액세스하지 않는 "콜드" 스토리지에 아카이브 스토리지를 사용합니다.

  • 함수

    Oracle Cloud Infrastructure Functions는 확장성이 뛰어난 완전 관리형 멀티테넌트 온디맨드 Functions-as-a-Service(FaaS) 플랫폼입니다. 그것은 Fn 프로젝트 오픈 소스 엔진에 의해 구동 됩니다. 함수를 사용하면 코드를 배치하고 직접 호출하거나 이벤트에 대한 응답으로 트리거할 수 있습니다. Oracle Functions는 Oracle Cloud Infrastructure Registry에서 호스팅되는 Docker 컨테이너를 사용합니다.

  • 이벤트

    Oracle Cloud Infrastructure 서비스는 리소스 변경사항을 설명하는 구조화된 메시지인 이벤트를 내보냅니다. 이벤트는 CRUD(생성, 읽기, 업데이트 또는 삭제) 작업, 리소스 수명 주기 상태 변경 및 클라우드 리소스에 영향을 주는 시스템 이벤트를 위해 내보냅니다.

  • 모니터링

    Oracle Cloud Infrastructure Monitoring 서비스는 측정지표를 사용하여 클라우드 리소스를 능동적이고 수동적으로 모니터링하여 리소스 및 알람을 모니터링하고 이러한 측정지표가 알람이 지정된 트리거를 충족할 때 알림을 보냅니다.

  • 감사

    The Oracle Cloud Infrastructure Audit service automatically records calls to all supported Oracle Cloud Infrastructure public application programming interface (API) endpoints as log events. 현재 모든 서비스는 Oracle Cloud Infrastructure Audit의 로깅을 지원합니다.

  • 통지

    Oracle Cloud Infrastructure Notifications 서비스는 Oracle Cloud Infrastructure에서 호스팅되는 애플리케이션에 대해 안전하고 안정적이며 대기시간이 짧고 내구성 있는 메시지를 전달하여 게시-구독 패턴을 통해 분산된 구성요소로 메시지를 방송합니다.

  • Oracle Cloud Infrastructure Speech

    Oracle Cloud Infrastructure Speech는 자동 음성 인식(ASR)을 사용하여 음성을 텍스트로 변환하는 새로운 AI 서비스입니다.

  • Oracle MySQL Database Service

    Oracle MySQL Database Service는 개발자가 안전한 클라우드 네이티브 애플리케이션을 신속하게 개발하고 배포할 수 있는 완전 관리형 Oracle Cloud Infrastructure(OCI) 데이터베이스 서비스입니다. OCI에 최적화되고 독점적으로 제공되는 Oracle MySQL Database Service는 OCI 및 MySQL 엔지니어링 팀이 100% 구축, 관리 및 지원합니다.

    Oracle MySQL Database Service에는 운영 중인 MySQL 데이터베이스에 대해 정교한 실시간 분석을 직접 실행할 수 있는 통합 고성능 분석 엔진(HeatWave)이 있습니다.

권장사항

요구 사항은 여기에 설명된 아키텍처와 다를 수 있습니다. 다음 권장 사항을 시작점으로 사용합니다.

  • VCN

    VCN을 생성할 때 VCN의 서브넷에 연결하려는 리소스 수에 따라 필요한 CIDR 블록 수와 각 블록의 크기를 결정합니다. 표준 전용 IP 주소 공간 내에 있는 CIDR 블록을 사용합니다.

    프라이빗 접속을 설정하려는 다른 네트워크(Oracle Cloud Infrastructure, 온프레미스 데이터 센터 또는 다른 클라우드 제공자)와 겹치지 않는 CIDR 블록을 선택합니다.

    VCN을 생성한 후 해당 CIDR 블록을 변경, 추가 및 제거할 수 있습니다.

    서브넷을 설계할 때는 트래픽 플로우 및 보안 요구사항을 고려하십시오. 특정 계층 또는 역할 내의 모든 리소스를 동일한 서브넷에 연결합니다. 이 서브넷은 보안 경계 역할을 할 수 있습니다.

  • 보안

    Oracle Cloud Guard를 사용하여 Oracle Cloud Infrastructure의 리소스 보안을 사전에 모니터링하고 유지 관리할 수 있습니다. Cloud Guard는 정의 가능한 감지기 레시피를 사용하여 리소스의 보안 취약성을 검사하고 운영자 및 사용자를 모니터하여 위험한 작업을 모니터합니다. 잘못 구성되거나 안전하지 않은 작업이 감지되면 Cloud Guard는 정의할 수 있는 응답기 레시피를 기반으로 수정 조치를 권장하고 해당 작업을 수행하는 데 도움을 줍니다.

    최대 보안이 필요한 리소스의 경우 Oracle은 보안 영역을 사용할 것을 권장합니다. 보안 영역은 모범 사례를 기반으로 하는 Oracle 정의 보안 정책 레시피와 연관된 컴파트먼트입니다. 예를 들어, 보안 영역의 리소스는 공용 인터넷에서 액세스할 수 없어야 하며 고객 관리 키를 사용하여 암호화해야 합니다. 보안 영역에서 리소스를 생성 및 업데이트할 때 Oracle Cloud Infrastructure는 보안 영역 레시피의 정책에 대해 작업을 검증하고 정책을 위반하는 작업을 거부합니다.

  • 클라우드 가드

    사용자정의 감지기 및 응답기 레시피를 생성하도록 Oracle에서 제공하는 기본 레시피를 복제 및 사용자정의합니다. 이러한 레시피를 통해 경고를 생성하는 보안 위반 유형과 경고에 대해 수행할 수 있는 작업을 지정할 수 있습니다. 예를 들어 가시성이 퍼블릭으로 설정된 오브젝트 스토리지 버킷을 감지할 수 있습니다.

    테넌시 레벨에서 Cloud Guard를 적용하여 가장 광범위한 범위를 다루고 여러 구성을 유지 관리하는 데 따르는 관리 부담을 줄이십시오.

    관리 목록 기능을 사용하여 감지기에 특정 구성을 적용할 수도 있습니다.

  • Security Zones

    사용자정의 감지기 및 응답기 레시피를 생성하도록 Oracle에서 제공하는 기본 레시피를 복제 및 사용자정의합니다. 이러한 레시피를 통해 경고를 생성하는 보안 위반 유형과 경고에 대해 수행할 수 있는 작업을 지정할 수 있습니다. 예를 들어 가시성이 퍼블릭으로 설정된 오브젝트 스토리지 버킷을 감지할 수 있습니다.

    테넌시 레벨에서 Cloud Guard를 적용하여 가장 광범위한 범위를 다루고 여러 구성을 유지 관리하는 데 따르는 관리 부담을 줄이십시오.

    관리 목록 기능을 사용하여 감지기에 특정 구성을 적용할 수도 있습니다.

  • 로드 밸런서 대역폭

    로드 밸런서를 생성하는 동안 고정 대역폭을 제공하는 미리 정의된 구성을 선택하거나, 대역폭 범위를 설정하고 트래픽 패턴에 따라 서비스가 대역폭을 자동으로 확장하도록 사용자 정의 가변 구성을 지정할 수 있습니다. 두 접근 방법 중 하나를 사용하면 로드 밸런서를 생성한 후 언제든지 구성을 변경할 수 있습니다.

고려사항

  • 성능

    Oracle 클라우드 네이티브 서비스(이벤트, 함수, 통지 및 AI 음성)를 사용하여 워크로드에 따라 자동으로 확장되는 서버리스 애플리케이션을 배포할 수 있습니다. 서비스는 Oracle에서 관리합니다.

    AI 음성 작업은 엄격한 선입선출 방식으로 처리됩니다. 테넌트 레벨에서 최대 10,000개의 작업을 가진 작업 큐를 생성할 수 있습니다. 최대 작업을 초과하는 작업을 제출하면 해당 작업이 실패합니다. 작업은 90일 동안 유지됩니다.

  • 액세스

    OCI Speech는 OCI 콘솔, Java 및 Python SDK 클라이언트, OCI CLI를 통한 액세스를 지원합니다. 테스트할 때는 CLI 도구 또는 콘솔을 사용하는 것이 좋습니다.

  • 가용성

    이 예제에서는 데이터베이스의 가용성이 높지 않습니다. 중요한 애플리케이션의 경우 3개의 복제본이 있는 HA 모드에서 MySQL Database Service를 실행하는 것이 좋습니다.

  • 비용

    Oracle 클라우드 네이티브 서비스(이벤트, 함수, 통지 및 AI 음성)를 사용하여 고정 비용 없이 서버리스 애플리케이션을 배포할 수 있습니다. 서비스 요청은 사용할 때만 지불합니다.

확인

  • 작성자: Wei Han, Zaid Al Qaddoumi
  • 제공자: Sreya Dutta

변경 로그

이 로그는 중요한 변경 사항을 나열합니다.