Skip to content

chore(main): release 7.5.0#743

Merged
GregHolmes merged 3 commits into
mainfrom
release-please--branches--main--components--deepgram-sdk
Jul 15, 2026
Merged

chore(main): release 7.5.0#743
GregHolmes merged 3 commits into
mainfrom
release-please--branches--main--components--deepgram-sdk

Conversation

@github-actions

@github-actions github-actions Bot commented Jul 13, 2026

Copy link
Copy Markdown
Contributor

Release PR for 7.5.0compare v7.4.0...v7.5.0

What's in 7.5.0

  • #742 — Flux TTS streaming (Speak V2) + agent listen reconfigure

    • Speak V2 streaming (WebSocket)client.speak.v2.connect(...): new speak/v2/ package (client, socket client, request/response types), top-level SpeakV2Encoding / SpeakV2MipOptOut / SpeakV2Model / SpeakV2SampleRate / SpeakV2Tag, and optional send_flush() / send_close() control messages.
    • Agent mid-session listen reconfiguresend_update_listen(...) with AgentV1UpdateListen / AgentV1UpdateListenListen, plus the AgentV1ListenUpdated server acknowledgement.
    • Flux end-of-turn tuning — new listen-provider fields eot_threshold, eager_eot_threshold, eot_timeout_ms.
  • #744 — Flux TTS batch (REST) + agent latency report

    • Speak V2 batch (REST)client.speak.v2.audio.generate(...) (+ raw client): the REST companion to streaming. model required (flux-only); optional encoding / container / sample_rate / bit_rate / callback / callback_method / tag / mip_opt_out / priority. No speed (GA-only, excluded for EA).
      • sample_rate / bit_rate are typed as int — a float like 24000.0 is rejected on the wire.
      • Callback mode returns the SpeakV2AcceptedResponse JSON ack through the audio byte iterator as raw bytes; join the chunks and parse request_id yourself (documented in the docstring; typed content-type dispatch tracked as a follow-up).
    • AgentV1LatencyReport — new latency-report type + request, wired into the agent socket-client response union.
    • Agent inject-message interrupt — new value on AgentV1InjectAgentMessageBehavior.

This PR was generated with Release Please.

@github-actions github-actions Bot force-pushed the release-please--branches--main--components--deepgram-sdk branch from 4d7e204 to 099f815 Compare July 14, 2026 14:54
GregHolmes
GregHolmes previously approved these changes Jul 15, 2026
The .fern/metadata.json sdkVersion drifted one release behind (7.4.1 vs
the 7.5.0 stamped in pyproject.toml, client_wrapper.py user-agent, and
X-Fern-SDK-Version) because release-please never bumped it. JS and Java
already list .fern/metadata.json ($.sdkVersion) in their extra-files;
add the matching entry here and correct the current stale value.
@GregHolmes GregHolmes merged commit 5f82d10 into main Jul 15, 2026
10 checks passed
@GregHolmes GregHolmes deleted the release-please--branches--main--components--deepgram-sdk branch July 15, 2026 19:14
@github-actions

Copy link
Copy Markdown
Contributor Author

🤖 Created releases:

🌻

GregHolmes added a commit to deepgram/cli that referenced this pull request Jul 15, 2026
## Flux TTS in `dg speak` (Speak v2, WebSocket streaming)

Adds Flux TTS to the `speak` command, websocket-first per the Flux TTS
CLI ticket.

### What's in it
- **`flux-*` models → Speak v2 WebSocket streaming**
(`speak.v2.connect`); `aura-*` stay on Speak v1 batch REST. Raw
`linear16` output is wrapped in **WAV** so it's directly playable. New
`client.speak_text_stream()` helper + an `--encoding` guard (Flux
streaming is `linear16`/`mulaw`/`alaw` only).
- **Bug fixes (surfaced by non-prod base URLs):**
- `_create_client` environment now derives `https` (REST) + `wss`
(WebSocket) from the host and includes `agent_rest` — the old builder
crashed on any custom base URL.
- `verify_api_key` validates against the configured base URL instead of
hardcoded production, so staging/non-prod keys pass the auth guard.
- **New global options:** `--base-url` and `--api-key` (the
explicit-credential path already existed; nothing fed it).
- **Docs:** Flux (v1 vs v2) documented in `speak
--help`/examples/agent_help, the `skills` Developer Guide (also migrated
off the removed pre-Fern `SpeakOptions` API), and the README.

### Verification
- `pytest`: **967 passing** (incl. new Flux speak tests).
- `ruff` clean on changed files.
- Live-tested against **staging**: `dg speak -m flux-alexis-en` → valid
WAV; plus `aura` speak, `listen`, `read`, `models`, and manage commands.

## ⚠️ Restrictions — do NOT merge/release yet

1. **Depends on an unreleased SDK.** This pins `deepgram-sdk>=7.5.0`,
which is **not yet published** — it's the pending Python SDK
release-please PR **deepgram/deepgram-python-sdk#743** (`chore(main):
release 7.5.0`), which contains the Speak v2 streaming client this uses.
**This PR must not merge/release until `deepgram-sdk` 7.5.0 is live on
PyPI.**
2. **`uv sync` will fail until 7.5.0 ships** (can't resolve `>=7.5.0`).
The lockfile needs regenerating once 7.5.0 is published. Local testing
so far used an editable install of the SDK checkout (not part of this
PR).
3. **EA scope — WebSocket only for Flux.** No Flux REST/batch in the CLI
(per the ticket).
4. **No Flux voice listing.** `dg models` does not list Flux voices —
the models service doesn't expose them yet (GA/API-side), so it's
intentionally omitted.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant