>백엔드 개발 >파이썬 튜토리얼 >Async Deepgram API 탐색: Python을 사용한 음성-텍스트 변환

Async Deepgram API 탐색: Python을 사용한 음성-텍스트 변환

Patricia Arquette
Patricia Arquette원래의
2024-10-21 18:16:30699검색

오늘은 음성을 텍스트로 변환하는 Deepgram API를 살펴보겠습니다. 음성 어시스턴트 구축, 회의 기록, 음성 제어 앱 제작 등 Deepgram을 사용하면 그 어느 때보다 쉽게 ​​시작할 수 있습니다.

Exploring Async Deepgram API: Speech-to-Text using Python

딥그램이란 무엇인가요?

Deepgram은 고급 기계 학습 모델을 사용하여 실시간으로 오디오를 텍스트로 변환하는 강력한 음성 인식 플랫폼입니다. 개발자가 전화 통화 기록, 회의 내용을 텍스트로 변환, 고객 상호 작용 분석 등의 작업을 위해 애플리케이션에 통합할 수 있는 사용하기 쉬운 API를 제공합니다.

Deepgram을 사용하는 이유는 무엇입니까?

  • 정확도: Deepgram은 방대한 데이터세트를 학습한 딥러닝 알고리즘 덕분에 높은 정확도를 자랑합니다.

  • 실시간 전사: 말하는 즉시 결과를 얻을 수 있어 라이브 애플리케이션에 적합합니다.

  • 다중 언어: 여러 언어와 악센트를 지원하므로 글로벌 애플리케이션에 다용도로 사용할 수 있습니다.

Deepgram API 시작하기

설치 - pip install httpx

필수 라이브러리 가져오기

import httpx
import asyncio
import logging
import traceback

비동기 함수 정의

#recording_url: The URL of the audio file to be transcribed.
#callback_url: The URL to which Deepgram will send the #transcription results (optional).
#api_key: Your Deepgram API key.

async def transcribe_audio(recording_url: str, callback_url: str, api_key: str):
    url = "https://api.deepgram.com/v1/listen"

    # Define headers
    headers = {
        "Authorization": f"Token {api_key}"
    }

    # Define query parameters
    query_params = {
        "callback_method": "post",
        "callback": callback_url
    }

    # Define body parameters
    body_params = {
        "url": recording_url
    }

4. 비동기식 요청 보내기

    logger.info(f"Sending request to {url} with headers: {headers}, query: {query_params}, body: {body_params}")

    async with httpx.AsyncClient(timeout=60.0) as client:
        try:
            # Make a POST request with query parameters and body
            response = await client.post(url, headers=headers, params=query_params, json=body_params)
            response.raise_for_status()  # Raise an error for HTTP error responses
            result = response.json()
            logger.info(f"Response received: {result}")

            return result

시간 제한이 60초인 httpx.AsyncClient 인스턴스를 생성합니다. async를 사용하면 블록이 실행된 후 클라이언트가 제대로 닫히게 됩니다.
요청이 성공하면 JSON 응답을 구문 분석하여 기록한 후 결과를 반환합니다.

콜백 URL:

테스트용 샘플 콜백 URL로 사용할 수 있습니다.

결론:

이 구조화된 접근 방식은 Python에서 비동기 프로그래밍을 활용하여 Deepgram API와 효율적으로 상호 작용하는 방법을 강조합니다. 코드를 블록으로 나누고 각 부분을 설명함으로써 독자는 구현과 이를 자신의 필요에 맞게 조정하는 방법을 더 잘 이해할 수 있습니다.

위 내용은 Async Deepgram API 탐색: Python을 사용한 음성-텍스트 변환의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.