Skip to content

feat(speech): improve dialogue segments and add exact matching - #145

Open
FaiziNerd wants to merge 4 commits into
grayhatdevelopers:mainfrom
FaiziNerd:feat/dialogue-search-improvements
Open

feat(speech): improve dialogue segments and add exact matching#145
FaiziNerd wants to merge 4 commits into
grayhatdevelopers:mainfrom
FaiziNerd:feat/dialogue-search-improvements

Conversation

@FaiziNerd

Copy link
Copy Markdown
Contributor

Related issue

Closes #89

Summary

Speech indexing now keeps Whisper鈥檚 timed words as the shared transcript source, then builds searchable segments from that word list instead of only chopping each ASR cue into fixed fragments.

  • Persist generation-scoped speech_transcript.json with word text and start/end times (speaker labels can attach later via Add speaker diarization and connect speakers to reviewed people聽#86).
  • Keep fixed_words (default, words_per_phrase=5) as the baseline, and add overlapping_windows and sentence for comparison through Add end-to-end retrieval evaluation聽#76.
  • Give segments stable IDs from mode + word span (fixed_words:w00000000-00000004), so the same transcript and settings rebuild the same IDs.
  • Put segmentation settings in speech capability options so a settings change updates the config fingerprint and creates a new index generation.
  • Merge exact/keyword lexical matches with semantic speech search; evidence still returns matched transcript text plus correct start/end, with match_kind in public metadata.

Compatibility: Existing speech indexes must be rebuilt. Segment source_id values and speech metadata shape change.

Validation

.venv\Scripts\python.exe -m pytest -q tests/test_indexing.py tests/test_search.py tests/test_capabilities.py tests/test_runner.py tests/test_storage.py --tb=short
  • 78 passed, 6 subtests passed
  • Covered: timed-word persistence, fixed/overlapping/sentence segmentation, stable segment IDs, fingerprint change on segmentation settings, semantic + exact keyword merge (including no substring false positives), evidence text/timing metadata
  • Not run here: end-to-end retrieval quality comparison across modes (Add end-to-end retrieval evaluation聽#76)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Improve dialogue search with better transcript segments and exact matching

1 participant