«Если рабочий хочет хорошо выполнять свою работу, он должен сначала заточить свои инструменты» — Конфуций, «Аналитики Конфуция. Лу Лингун»
титульная страница > программирование > Изучение Async Deepgram API: преобразование речи в текст с использованием Python

Изучение Async Deepgram API: преобразование речи в текст с использованием Python

Опубликовано 7 ноября 2024 г.
Просматривать:575

Сегодня мы рассмотрим API Deepgram для преобразования голоса в текст [транскрипция]. Независимо от того, создаете ли вы голосового помощника, расшифровываете встречи или создаете приложение с голосовым управлением, Deepgram упрощает начало работы, как никогда.

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

Что такое Дипграмма?

Deepgram — это мощная платформа распознавания речи, которая использует передовые модели машинного обучения для расшифровки аудио в режиме реального времени. Он предлагает простой в использовании API, который разработчики могут интегрировать в свои приложения для таких задач, как расшифровка телефонных звонков, преобразование встреч в текст или даже анализ взаимодействия с клиентами.

Зачем использовать Deepgram?

  • Точность: Deepgram может похвастаться высокой точностью благодаря алгоритмам глубокого обучения, обученным на обширных наборах данных.

  • Транскрипция в реальном времени: получайте мгновенные результаты прямо во время речи, идеально подходит для живых выступлений.

  • Несколько языков: поддерживает несколько языков и акцентов, что делает его универсальным для глобальных приложений.

Начало работы с API Deepgram

Установить — установка по протоколу 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

Мы создаем экземпляр httpx.AsyncClient с таймаутом 60 секунд. Использование async with гарантирует правильное закрытие клиента после выполнения блока.
Если запрос успешен, мы анализируем ответ JSON и регистрируем его, а затем возвращаем результат.

URL обратного звонка:

Вы можете использовать образец URL обратного вызова для тестирования.

заключение:

Этот структурированный подход показывает, как использовать асинхронное программирование на Python для эффективного взаимодействия с API Deepgram. Разбивая код на блоки и объясняя каждую часть, читатели смогут лучше понять реализацию и способы ее адаптации к своим потребностям.

Заявление о выпуске Эта статья воспроизведена по адресу: https://dev.to/shadow_b/exploring-async-deepgram-api-speech-to-text-using-python-5ckl?1 Если есть какие-либо нарушения, пожалуйста, свяжитесь с [email protected] удалить его
Последний учебник Более>

Изучайте китайский

Отказ от ответственности: Все предоставленные ресурсы частично взяты из Интернета. В случае нарушения ваших авторских прав или других прав и интересов, пожалуйста, объясните подробные причины и предоставьте доказательства авторских прав или прав и интересов, а затем отправьте их по электронной почте: [email protected]. Мы сделаем это за вас как можно скорее.

Copyright© 2022 湘ICP备2022001581号-3