fix(diarize): expose diarize_model so the v2 diarizer is reachable at all#13
Merged
Conversation
… all
The params panel could not produce the v2 diarizer by any path.
`diarize` is a deprecated boolean that ALWAYS routes to v1. `diarize_model` is
the current parameter and both enables diarization and picks the version, so it
must be sent WITHOUT `diarize`. The panel instead offered the legacy
`diarize_version` select gated behind `x-if="params.diarize"`, so the only way
to see the version control was to enable the thing that forces v1.
Confirmed on the wire against production:
diarize=true 200, speaker labels (v1)
diarize_version=latest (alone) 400 Failed to parse query string
diarize=true + diarize_version=latest 200
diarize_model=v2 (alone) 200
diarize_model=latest (alone) 200
diarize=true + diarize_model=v2 400 diarize_model cannot be used
together with diarize or
diarize_version.
(INVALID_QUERY_PARAMETER)
diarize_model=v2 on streaming handshake rejected
Note Deepgram does not pick a winner between them, it rejects the pair outright,
so this is a mutual exclusion rather than a precedence rule.
Changes:
- UI models `diarize_model` (v1 / v2 / latest) instead of `diarize_version`, and
the select is no longer gated behind the checkbox.
- The two controls clear each other, since sending both is a hard 400.
- Hints state that v2 is batch only and that the checkbox means v1.
- `clean_params` drops `diarize` and `diarize_version` when `diarize_model` is
present. The UI already prevents the pair; this covers the `extra` escape
hatch and any saved preset from before the rename, so an old config degrades
to the modern parameter instead of a hard 400.
- The deprecated boolean still works alone, because replicating a legacy
customer config is a job this tool has.
`diarize_model` is one of the params deepgram-sdk 7 added, so it rides as a real
connect() kwarg rather than through the passthrough; a test pins that.
Semantics confirmed via DeepHive against the Deepgram docs, then verified on the
wire rather than taken on faith.
116 passed, 1 skipped. UI probe: select reachable with diarize unchecked,
exclusion holds both ways, preview emits diarize_model=latest with no diarize,
no console errors.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
The params panel could not produce the v2 diarizer by any path.
diarizeis a deprecated boolean that always routes to v1.diarize_modelis the current parameter and both enables diarization and selects the version, so it must be sent withoutdiarize. The panel instead offered the legacydiarize_versionselect gated behindx-if="params.diarize"— so the only way to see the version control was to enable the thing that forces v1.Confirmed on the wire, against production
Deepgram does not pick a winner between them — it rejects the pair outright. This is a mutual exclusion, not a precedence rule.
Changes
diarize_model(v1/v2/latest) instead ofdiarize_version, and the select is no longer gated behind the checkbox.clean_paramsdropsdiarize/diarize_versionwhendiarize_modelis present. The UI already prevents the pair; this covers theextraescape hatch and saved presets from before the rename, so an old config degrades to the modern parameter instead of a 400.diarize_modelis one of the params deepgram-sdk 7 added, so it rides as a realconnect()kwarg rather than through the passthrough. A test pins that.Verification
Semantics confirmed via DeepHive against the Deepgram docs, then verified on the wire rather than taken on faith.
116 passed, 1 skipped. UI probe: