57 lines
2.4 KiB
Markdown
57 lines
2.4 KiB
Markdown
# Audita
|
|
|
|
Audita takes raw audio transcripts, deterministically merges short same-speaker segments into speaking turns, and uses an LLM to identify and fix misheard words, jargon, domain-specific terms, and conservative readability issues.
|
|
|
|
## Development
|
|
|
|
This project is set up for `uv`.
|
|
|
|
```sh
|
|
uv sync --extra dev
|
|
uv run pytest
|
|
```
|
|
|
|
## Usage
|
|
|
|
Set an OpenRouter API key, then process a transcript with a glossary:
|
|
|
|
```sh
|
|
export OPENROUTER_API_KEY=...
|
|
uv run audita process transcript.json --glossary glossary.yaml --output corrected.json
|
|
```
|
|
|
|
From a checked-out repository, you can also use the root launcher:
|
|
|
|
```sh
|
|
./audita process transcript.json --glossary glossary.yaml --output corrected.json
|
|
```
|
|
|
|
For a system-wide command, install the source tree under `/usr/local/src/audita`, sync dependencies there, and symlink the root launcher into your `PATH`:
|
|
|
|
```sh
|
|
cd /usr/local/src/audita
|
|
uv sync --extra dev
|
|
ln -s /usr/local/src/audita/audita /usr/local/bin/audita
|
|
audita process transcript.json --glossary glossary.yaml --output corrected.json
|
|
```
|
|
|
|
Without `--output`, Audita writes the corrected transcript JSON to stdout and progress logs to stderr.
|
|
|
|
Useful configuration can be supplied by CLI flag or environment variable:
|
|
|
|
- `AUDITA_MODEL`, default `openrouter/mistralai/mistral-small-3.2-24b-instruct`
|
|
- `AUDITA_BASE_URL`, default `https://openrouter.ai/api/v1`
|
|
- `AUDITA_MAX_SECTION_TOKENS`, default `16000`
|
|
- `AUDITA_GLOSSARY_CONFIDENCE_THRESHOLD`, default `0.60`
|
|
- `AUDITA_GRAMMAR_CONFIDENCE_THRESHOLD`, default `0.60`
|
|
- `AUDITA_MAX_RETRIES`, default `3`
|
|
- `AUDITA_GLOSSARY_MAX_LLM_PASSES`, default `3`, for total glossary correction passes
|
|
- `AUDITA_GRAMMAR_MAX_LLM_PASSES`, default `3`, for total grammar/readability correction passes
|
|
- `AUDITA_NORMALIZE_MAX_SEGMENT_GAP`, default `5.0`, for same-speaker gaps eligible for merging
|
|
- `AUDITA_NORMALIZE_ELLIPSIS_GAP`, default `2.0`, for same-speaker gaps that should be joined with ` ... `
|
|
- `AUDITA_NORMALIZE_MAX_SEGMENT_DURATION`, default `60.0`, for maximum merged segment duration
|
|
- `AUDITA_NORMALIZE_MAX_SEGMENT_TOKENS`, default `2048`, for maximum merged segment prompt payload size
|
|
- `AUDITA_WORK_DIR`, default `/tmp/audita`
|
|
|
|
`AUDITA_WORK_DIR` stores per-run diagnostics while processing. Successful runs clean up their run directory unless corrections are skipped; failed runs and skipped-correction runs preserve diagnostics for debugging.
|