Summarization

Summarizes content of submitted audio.

Pre-recorded Streaming

We have released our own DSLM-powered summarization feature. Summarization Version 2 provides contextually accurate summaries of complex conversations. This feature significantly enhances the user experience and agent productivity by capturing critical details of the conversations, such as the customer's reason for calling, the agent's response, and any follow-up actions identified.

📘

Support for English + Pre-Recorded Only

The Summarization feature is currently only available for English and Pre-Recorded Audio.

Enable Feature

To enable Summarization v2, use the following parameter in the query string when you call Deepgram’s /listen endpoint :

summarize=v2

To transcribe audio from a file on your computer, run the following curl command in a terminal or your favorite API client.

curl \
  --request POST \
  --header 'Authorization: Token YOUR_DEEPGRAM_API_KEY' \
  --header 'Content-Type: audio/wav' \
  --data-binary @youraudio.wav \
  --url 'https://api.deepgram.com/v1/listen?summarize=v2'

:eyes: Replace YOUR_DEEPGRAM_API_KEY with your Deepgram API Key.

Analyze Response

When the file is finished processing, you’ll receive a JSON response that has the following basic structure:

{
  "metadata": {...},
  "results": {
        "channels": [
            {
                "alternatives": [...]
            }
        ],        
        "summary": { 
            "result":"success"
            "short": "Jake calls the Honda dealership and speaks with Josh about the new Honda Civic 2023. Jake schedules a test drive for the hybrid model on Friday and provides his contact information.Josh confirms the appointment and tells Jake to call if he has any further questions."
        }
  }
}

ℹ️

Use the API reference or the API Playground to view the detailed response.

The summary object contains:

  • result: Status of the request (success | failure).
  • short: Short summary of the audio being summarized.

This summarization feature produces one summary across all channels, so that the summary field ranks at the same place in the JSON response as the channels array.

🚧

Please note that the JSON response for our new Summarization V2 (summarize=v2) differs from the JSON response for Summarization V1 (summarize=true).


summarize values

ParameterValueTypeBehavior
summarizev2stringEnables V2 of our summarization. The output response will include a single object with a result and short summary of the entire audio. It will generate one summary across all channels.

V2 Summarization offers improved performance over v1 in terms of quality, content, and readability of generated summaries. For the best results, we recommend leveraging Summarization v2.
summarizetruebooleanEnables V1 of our summarization. The output response will include an array of objects with summary, start_word, and end_word. It will generate summaries per channel.
summarizefalsebooleanDisables the summarization feature.

API Error and Warning Response

Error

If users request our new summarization with an unsupported language by specifying a language code such as summarize=v2&language=es, they will get an error message as below.

{
    "err_code": "Bad Request",
    "err_msg": "Summarization v2 not supported for non-English languages",
    "request_id": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
}

Warning

If the user requests our new summarization with automatic language detection such as summarize=v2&detect_language=true, where the detected language is unsupported (Spanish, for example), they will get the response, including a transcript and a warning object.

"warnings": [
    {
      "parameter": "TEXT",
      "type": "unsupported_language",
      "message": "TEXT"
    }
]
Warning NameWarning Message
unsupported_languageFeature isn't supported with the specified or detected language.

Example Warning

Here is an example of the JSON structure of a request with warning object.

{
 "metadata": {
...
       },
       "warnings": [
           {
            "parameter": "summarize",
            "type": "unsupported_language",
            "message": "Summarization isn’t supported for the detected language."
           }
       ],
   },
 "results": {
       "channels": [
            {
                "alternatives": [...]
            }
        ], 
        "summary": 
          { 
            "result": "failure", 
            "short": "The summarization feature is currently only available in English. Please check out our API documentation for more details."
      }
    }
}

Use Cases

Some examples of uses for Summarization include:

  • Auto Summarization, which improves Agent Productivity and reduces operational costs by enabling agents to focus on customers rather than manually summarizing interactions.
  • Monitoring and maintaining quality standards for training purposes by analyzing call summaries at scale, without reviewing entire call recordings.
  • Enabling podcast listeners to identify interesting conversations through auto-generated, meaningful podcast previews.

📘

Summarization - V1

The guide to Deepgram's summarization feature V1 can be found here.