Skip to main content

deepgram-rust-audio-intelligence

Use when implementing Deepgram audio intelligence from the Rust SDK, especially when intelligence features are attached to STT Options and batch responses instead of a separate audio-intelligence module.

소스 정보

저장소
deepgram/deepgram-rust-sdk
최근 소스 활동
2026년 5월 12일 10:01
감지된 SKILL.md 언어
영어
스타
67
포크
45

설치 방법

기본적으로 소스를 먼저 확인하는 Prompt가 선택됩니다. 직접 명령으로 전환하거나 로컬 사본을 다운로드할 수도 있습니다.

소스 파일 검토

설치 여부를 결정하기 전에 SKILL.md와 SkillsMP에 표시된 보조 파일을 읽어 보세요.

SKILL.md 표시 중

SKILL.md
소스 지침 · 읽기 전용 미리보기
name
deepgram-rust-audio-intelligence
description
Use when implementing Deepgram audio intelligence from the Rust SDK, especially when intelligence features are attached to STT Options and batch responses instead of a separate audio-intelligence module.
# Using 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 separate `audio_intelligence` module. ## Authentication Audio intelligence rides on the `listen` feature because it is implemented through prerecorded transcription. ```toml [dependencies] deepgram = { version = "0.10.0", default-features = false, features = ["listen"] } tokio = { version = "1", features = ["full"] } ``` ```rust let dg = deepgram::Deepgram::new(std::env::var("DEEPGRAM_API_KEY")?)?; ``` ## Quick start ## Quick start: prerecorded audio + intelligence flags ```rust 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.summary` - `response.results.topics` - `response.results.intents` - `response.results.sentiments` - `response.results.channels[0].alternatives[0].entities` - `response.results.channels[0].alternatives[0].paragraphs` - `response.results.utterances` - `response.results.channels[0].search` ## API reference (layered) 1. **In-repo** - `src/common/options.rs` - `src/common/batch_response.rs` - `src/listen/rest.rs` - `examples/transcription/rest/prerecorded_from_file.rs` 2. **OpenAPI** - Raw spec: `https://developers.deepgram.com/openapi.yaml` - Endpoint reference: `https://developers.deepgram.com/reference/speech-to-text/listen-pre-recorded` 3. **AsyncAPI** - Usually not the primary source for full audio-intelligence response shapes in this crate - Raw spec: `https://developers.deepgram.com/asyncapi.yaml` 4. **Context7** - `/llmstxt/developers_deepgram_llms_txt` 5. **Product docs** - `https://developers.deepgram.com/docs/audio-intelligence` ## Gotchas 1. **No separate Rust module exists.** Audio intelligence is expressed as STT options plus prerecorded response fields. 2. **Use prerecorded for full coverage.** The richest typed results live in `common::batch_response`; live `StreamResponse` does not expose the same intelligence objects. 3. **Response fields are nested.** Some features live on `results`, others under `channels[...].alternatives[...]`. 4. **Feature availability varies by API mode.** The crate shares one `Options` builder, but not every flag is equally meaningful for live streaming. ## Example files in this repo - `examples/transcription/rest/prerecorded_from_file.rs` - `examples/transcription/rest/prerecorded_from_url.rs` - `examples/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: ```bash 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`).
GitHub에서 보기