deepgram-python-text-intelligence
/deepgram-python-text-intelligence
Use when writing or reviewing Python code in this repo that calls Deepgram Text Intelligence / Read (`/v1/read`) for sentiment, summarization, topic detection, and intent recognition on text input. Covers `client.read.v1.text.analyze(...)` with body `text` or `url`. Use `deepgram-python-audio-intelligence` when the source is audio instead of text. Triggers include "read API", "text intelligence", "analyze text", "sentiment", "summarize text", "topics", "intents", "read.v1".
- Author
- deepgram ↗
- Repository
- deepgram-python-sdk ↗
- Licence
- MIT
- Last repository change
- 27.10.2026
Assessment and security
- Files in this package
- 1
- Scripts
- 0
- HTML comments
- 0
- URLs in SKILL.md
- 5
No signals detected. Repository changed on 27.10.2026, without references to retired models or APIs.
MIT, open: use and modify while retaining author attribution.
What it does and when to use it
Use when writing or reviewing Python code in this repo that calls Deepgram Text Intelligence / Read (`/v1/read`) for sentiment, summarization, topic detection, and intent recognition on text input. Covers `client.read.v1.text.analyze(...)` with body `text` or `url`. Use `deepgram-python-audio-intelligence` when the source is audio instead of text. Triggers include "read API", "text intelligence", "analyze text", "sentiment", "summarize text", "topics", "intents", "read.v1".
Triggers from the description
Original author description
Use when writing or reviewing Python code in this repo that calls Deepgram Text Intelligence / Read (`/v1/read`) for sentiment, summarization, topic detection, and intent recognition on text input. Covers `client.read.v1.text.analyze(...)` with body `text` or `url`. Use `deepgram-python-audio-intelligence` when the source is audio instead of text. Triggers include "read API", "text intelligence", "analyze text", "sentiment", "summarize text", "topics", "intents", "read.v1".
How it works
- When to use this product
- Authentication
- Quick start
- Async equivalent
- Key parameters
- Response shape (abridged)
- API reference (layered)
- Gotchas
- Example files in this repo
- Central product skills
SKILL.md preview
---
name: deepgram-python-text-intelligence
description: Use when writing or reviewing Python code in this repo that calls Deepgram Text Intelligence / Read (`/v1/read`) for sentiment, summarization, topic detection, and intent recognition on text input. Covers `client.read.v1.text.analyze(...)` with body `text` or `url`. Use `deepgram-python-audio-intelligence` when the source is audio instead of text. Triggers include "read API", "text intelligence", "analyze text", "sentiment", "summarize text", "topics", "intents", "read.v1".
---
# Using Deepgram Text Intelligence (Python SDK)
Analyze plain text (or a hosted text URL) for sentiment, summarization, topics, and intents via `/v1/read`.
## When to use this product
- You have **text already** (a transcript, document, chat log, email) and want analytics.
- You want a quick one-shot analysis — REST only, no streaming.
**Use a different skill when:**
- The source is audio and you want analytics overlays → `deepgram-python-audio-intelligence` (same analytics, applied at transcription time).
## Authentication
```python
from dotenv import load_dotenv
load_dotenv()
from deepgram import DeepgramClient
client = DeepgramClient()
```
Header: `Authorization: Token <api_key>`.
## Quick start
```python
response = client.read.v1.text.analyze(
request={"text": "Hello, world! This is a sample text for analysis."},
language="en",
sentiment=True,
summarize=True, # /v1/read is boolean-only (see gotchas)
topics=True,
intents=True,
)
if response.results.sentiments:
print("sentiment avg:", response.results.sentiments.average)
if response.results.summary:
print("summary:", response.results.summary.text)
if response.results.topics:
print("topics:", response.results.topics.segments)
if response.results.intents:
print("intents:", response.results.intents.segments)
```
Pass `request={"text": "..."}` for raw text OR `request={"url": "https://..."}` for a hosted plain-text document.
## Async equivalent
```python
from deepgram import AsyncDeepgramClient
client = AsyncDeepgramClient()
response = await client.read.v1.text.analyze(request={"text": "..."}, language="en", sentiment=True)
```
## Key parameters
| Param | Type | Notes |
|---|---|---|
| `request` | `{"text": str}` or `{"url": str}` | One of these is required |
| `language` | `str` | Required for most analytics. English only today. |
| `sentiment` | `bool` | Per-segment + average sentiment |
| `summarize` | `bool` | `/v1/read` accepts **boolean only**. The SDK type alias `TextAnalyzeRequestSummarize = typing.Union[typing.Literal["v2"], typing.Any]` is shared with Listen and is broader than what Read actually supports — the `analyze` method docstring states: "For Read API, accepts boolean only." (Listen's `summarize="v2"` is a different product — see `deepgram-python-audio-intelligence`.) |
| `topics` | `bool` | Topic detection per segment |
| `intents` | `bool` | Intent recognition per segment |
| `custom_topic` / `custom_topic_mode` | `list[str]` / `str` | User-defined topics |
| `custom_intent` / `custom_intent_mode` | `list[str]` / `str` | User-defined intents |
| `callback`, `callback_method`, `tag` | | Async callback + metadata |
## Response shape (abridged)
```
response.results.summary.text
response.results.sentiments.segments[]
response.results.sentiments.average
response.results.topics.segments[]
response.results.intents.segments[]
response.metadata
```
See `reference.md` → "Read V1 Text" for full shape. Request body model: `ReadV1RequestParams`.
## API reference (layered)
1. **In-repo reference**: `reference.md` — "Read V1 Text".
2. **OpenAPI (REST)**: https://developers.deepgram.com/openapi.yaml
3. **Context7**: library ID `/llmstxt/developers_deepgram_llms_txt`.
4. **Product docs**:
- https://developers.deepgram.com/reference/text-intelligence/analyze-text
- https://developers.deepgram.com/docs/text-intelligence
- https://developers.deepgram.com/docs/text-sentiment-analysis
## Gotchas
1. **`Token` auth, not `Bearer`.**
2. **English-only** for sentiment / summarize / topics / intents today.
3. **`summarize` on `/v1/read` is boolean only.** Pass `True` or `False`. Do not pass `"v2"` on `/v1/read` — that's a Listen-only option (see `deepgram-python-audio-intelligence`). The SDK type `Union[Literal["v2"], Any]` is shared with Listen and wider than Read actually accepts; the `analyze` docstring clarifies: "For Read API, accepts boolean only." The generated wire test passing `summarize="v2"` against a mock server is a Fern artifact and does not indicate real `/v1/read` support.
4. **`language` is required** for the gated analytics features above.
5. **Body is JSON `request=`**, not query parameters. Don't confuse with `/v1/listen` which takes audio as the body.
6. **Custom topics/intents need a mode** (`custom_topic_mode="extended"`, `"strict"`) or they are ignored.
## Example files in this repo
- `examples/40-text-intelligence.py`
- `tests/wire/test_read_v1_text.py`
## 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`).
Versions
The database has no other skills named deepgram-python-text-intelligence.
Database snapshot: 13.11.2026 · package version d153e7dcdcc6 (SHA-256 digest of the entire package)
Downloads in the last 30 days: 0 · ranking
Report a problem with this skill: harmful content, incorrect descriptions or an author’s removal request.
Similar skills
- 100deepgram-js-text-intelligence
Use when writing or reviewing JavaScript/TypeScript in this repo that calls Deepgram Text Intelligence / Read (`/v1/read`) for sentiment, summarization, topic detection, and intent recognition on text input. Covers `client.read.v1.text.analyze(...)` with `body: { text }` or… - 100deepgram-dotnet-text-intelligence
Use when writing or reviewing C# code in this repo that calls Deepgram Text Intelligence / Read (`/read`) for sentiment, summarization, topic detection, and intent recognition on text or hosted text URLs. Covers `ClientFactory.CreateAnalyzeClient()` with `AnalyzeText`,… - 100deepgram-java-text-intelligence
Use when writing or reviewing Java code in this repo that calls Deepgram Text Intelligence / Read (`/v1/read`) for text analysis. Covers `client.read().v1().text().analyze(...)` with `ReadV1Request` or `TextAnalyzeRequest`. Use `deepgram-java-audio-intelligence` when the source… - 100deepgram-python-audio-intelligence
Use when writing or reviewing Python code in this repo that calls Deepgram audio analytics overlays on `/v1/listen` - summarize, topics, intents, sentiment, diarize, redact, detect_language, entity detection. Same endpoint as plain STT but with analytics params. Covers both REST… - 100deepgram-go-text-intelligence
Use when writing or reviewing Go code in this repo that sends text to Deepgram Read via the analyze client. Route speech/audio inputs to deepgram-go-speech-to-text or deepgram-go-audio-intelligence, and management/admin work to deepgram-go-management-api. - 100deepgram-js-audio-intelligence
Use when writing or reviewing JavaScript/TypeScript in this repo that calls Deepgram audio analytics overlays on `/v1/listen` - summarize, topics, intents, sentiment, diarize, redact, detect_language, and entity detection. Same endpoint as plain STT, different params. Covers…