「労働者が自分の仕事をうまくやりたいなら、まず自分の道具を研ぎ澄まさなければなりません。」 - 孔子、「論語。陸霊公」
表紙 > プログラミング > 非同期ディープグラム API の探索: Python を使用した Speech-to-Text

非同期ディープグラム API の探索: Python を使用した Speech-to-Text

2024 年 11 月 7 日に公開
ブラウズ:368

今日は、音声をテキストに変換するための Deepgram API [文字起こし] について説明します。音声アシスタントの構築、会議の文字起こし、音声制御アプリの作成など、Deepgram を使用すると、これまでよりも簡単に始めることができます。

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

ディープグラムとは何ですか?

Deepgram は、高度な機械学習モデルを使用してリアルタイムで音声を書き起こす強力な音声認識プラットフォームです。これは、開発者が電話の文字起こし、会議のテキストへの変換、さらには顧客とのやり取りの分析などのタスクのためにアプリケーションに統合できる使いやすい API を提供します。

ディープグラムを使用する理由

  • 精度: 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 with を使用すると、ブロックの実行後にクライアントが適切に閉じられることが保証されます。
リクエストが成功した場合、JSON レスポンスを解析してログに記録し、結果を返します。

コールバック URL :

テスト用のサンプル コールバック URL として使用できます。

結論:

この構造化されたアプローチでは、Python で非同期プログラミングを利用して Deepgram API と効率的に対話する方法を強調します。コードをブロックに分割し、各部分を説明することで、読者は実装とそれを自分のニーズに適応させる方法をよりよく理解できます。

リリースステートメント この記事は次の場所に転載されています: 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