deepgram-rust-audio-intelligence
Utiliser lors de l'implémentation de l'intelligence audio Deepgram depuis le SDK Rust, en particulier lorsque les fonctionnalités d'intelligence sont attachées aux options STT et aux réponses par lots…
npx skills add https://github.com/deepgram/deepgram-rust-sdk --skill deepgram-rust-audio-intelligenceUsing Deepgram Audio Intelligence (Rust SDK)
Use this skill when the user wants transcript plus enrichment from audio, not a standalone text analysis request.
When to use this product
- Running summarization, topics, intents, sentiments, entity detection, paragraphs, search, diarization, or utterances against audio.
- Explaining that the Rust crate exposes these features through STT
Options, not a separateaudio_intelligencemodule.
Authentication
Audio intelligence rides on the listen feature because it is implemented through prerecorded transcription.
[dependencies]
deepgram = { version = "0.10.0", default-features = false, features = ["listen"] }
tokio = { version = "1", features = ["full"] }
let dg = deepgram::Deepgram::new(std::env::var("DEEPGRAM_API_KEY")?)?;
Quick start
Quick start: prerecorded audio + intelligence flags
use deepgram::{
common::{
audio_source::AudioSource,
options::{Language, Options},
},
Deepgram,
};
use tokio::fs::File;
#[tokio::main]
async fn main() -> Result<(), Box<dyn std::error::Error>> {
let api_key = std::env::var("DEEPGRAM_API_KEY")?;
let dg = Deepgram::new(&api_key)?;
let file = File::open("examples/audio/bueller.wav").await?;
let source = AudioSource::from_buffer_with_mime_type(file, "audio/wav");
let options = Options::builder()
.language(Language::en_US)
.punctuate(true)
.detect_entities(true)
.intents(true)
.sentiment(true)
.topics(true)
.summarize(true)
.paragraphs(true)
.utterances(true)
.diarize(true)
.build();
let response = dg.transcription().prerecorded(source, &options).await?;
println!("transcript: {}", response.results.channels[0].alternatives[0].transcript);
println!("summary: {:?}", response.results.summary);
println!("topics: {:?}", response.results.topics);
println!("intents: {:?}", response.results.intents);
println!("sentiments: {:?}", response.results.sentiments);
println!("entities: {:?}", response.results.channels[0].alternatives[0].entities);
Ok(())
}
Key parameters
- Intelligence flags on
common::options::OptionsBuilder:detect_entities,intents,sentiment,topics,summarize,paragraphs,utterances,diarize,search,keywords,keyterms,multichannel. - Result locations:
response.results.summaryresponse.results.topicsresponse.results.intentsresponse.results.sentimentsresponse.results.channels[0].alternatives[0].entitiesresponse.results.channels[0].alternatives[0].paragraphsresponse.results.utterancesresponse.results.channels[0].search
API reference (layered)
- In-repo
src/common/options.rssrc/common/batch_response.rssrc/listen/rest.rsexamples/transcription/rest/prerecorded_from_file.rs
- OpenAPI
- Raw spec:
https://developers.deepgram.com/openapi.yaml - Endpoint reference:
https://developers.deepgram.com/reference/speech-to-text/listen-pre-recorded
- Raw spec:
- AsyncAPI
- Usually not the primary source for full audio-intelligence response shapes in this crate
- Raw spec:
https://developers.deepgram.com/asyncapi.yaml
- Context7
/llmstxt/developers_deepgram_llms_txt
- Product docs
https://developers.deepgram.com/docs/audio-intelligence
Gotchas
- No separate Rust module exists. Audio intelligence is expressed as STT options plus prerecorded response fields.
- Use prerecorded for full coverage. The richest typed results live in
common::batch_response; liveStreamResponsedoes not expose the same intelligence objects. - Response fields are nested. Some features live on
results, others underchannels[...].alternatives[...]. - Feature availability varies by API mode. The crate shares one
Optionsbuilder, but not every flag is equally meaningful for live streaming.
Example files in this repo
examples/transcription/rest/prerecorded_from_file.rsexamples/transcription/rest/prerecorded_from_url.rsexamples/transcription/rest/callback.rs
Central product skills
For cross-language Deepgram product knowledge — the consolidated API reference, documentation finder, focused runnable recipes, third-party integration examples, and MCP setup — install the central skills:
npx skills add deepgram/skills
This SDK ships language-idiomatic code skills; deepgram/skills ships cross-language product knowledge (see api, docs, recipes, examples, starters, setup-mcp).