„Wenn ein Arbeiter seine Arbeit gut machen will, muss er zuerst seine Werkzeuge schärfen.“ – Konfuzius, „Die Gespräche des Konfuzius. Lu Linggong“
Titelseite > Programmierung > Erkundung der Async Deepgram API: Speech-to-Text mit Python

Erkundung der Async Deepgram API: Speech-to-Text mit Python

Veröffentlicht am 07.11.2024
Durchsuche:247

Heute wird die Deepgram-API zum Konvertieren von Sprache in Text [Transkription] untersucht. Ob Sie einen Sprachassistenten erstellen, Meetings transkribieren oder eine sprachgesteuerte App erstellen, Deepgram macht den Einstieg einfacher denn je.

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

Was ist Deepgram?

Deepgram ist eine leistungsstarke Spracherkennungsplattform, die fortschrittliche Modelle des maschinellen Lernens verwendet, um Audio in Echtzeit zu transkribieren. Es bietet eine benutzerfreundliche API, die Entwickler in ihre Anwendungen integrieren können, um Aufgaben wie das Transkribieren von Telefongesprächen, das Umwandeln von Besprechungen in Text oder sogar das Analysieren von Kundeninteraktionen zu erledigen.

Warum Deepgram verwenden?

  • Genauigkeit: Deepgram verfügt dank seiner Deep-Learning-Algorithmen, die auf riesigen Datensätzen trainiert wurden, über hohe Genauigkeitsraten.

  • Echtzeit-Transkription: Erhalten Sie sofortige Ergebnisse, während Sie sprechen, perfekt für Live-Anwendungen.

  • Mehrere Sprachen: Unterstützt mehrere Sprachen und Akzente und ist somit vielseitig für globale Anwendungen.

Erste Schritte mit der Deepgram-API

Installieren – pip install httpx

Erforderliche Bibliotheken importieren

import httpx
import asyncio
import logging
import traceback

Definieren der asynchronen Funktion

#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. Senden der asynchronen Anfrage

    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

Wir erstellen eine Instanz von httpx.AsyncClient mit einem Timeout von 60 Sekunden. Durch die Verwendung von async with wird sichergestellt, dass der Client ordnungsgemäß geschlossen wird, nachdem der Block ausgeführt wurde.
Wenn die Anfrage erfolgreich ist, analysieren wir die JSON-Antwort, protokollieren sie und geben dann das Ergebnis zurück.

Rückruf-URL:

Sie können eine Beispiel-Rückruf-URL zum Testen verwenden.

Abschluss:

Dieser strukturierte Ansatz zeigt, wie man die asynchrone Programmierung in Python nutzt, um effizient mit der Deepgram-API zu interagieren. Durch die Aufteilung des Codes in Blöcke und die Erläuterung jedes Teils können Leser die Implementierung besser verstehen und wissen, wie sie sie an ihre eigenen Bedürfnisse anpassen können.

Freigabeerklärung Dieser Artikel ist abgedruckt unter: https://dev.to/shadow_b/exploring-async-deepgram-api-speech-to-text-using-python-5ckl?1 Bei Verstößen wenden Sie sich bitte an [email protected] um es zu löschen
Neuestes Tutorial Mehr>

Haftungsausschluss: Alle bereitgestellten Ressourcen stammen teilweise aus dem Internet. Wenn eine Verletzung Ihres Urheberrechts oder anderer Rechte und Interessen vorliegt, erläutern Sie bitte die detaillierten Gründe und legen Sie einen Nachweis des Urheberrechts oder Ihrer Rechte und Interessen vor und senden Sie ihn dann an die E-Mail-Adresse: [email protected] Wir werden die Angelegenheit so schnell wie möglich für Sie erledigen.

Copyright© 2022 湘ICP备2022001581号-3