Skip to content

Add preflight - #196

Open
JosephMarinier wants to merge 4 commits into
mainfrom
joseph/add-preflight
Open

Add preflight#196
JosephMarinier wants to merge 4 commits into
mainfrom
joseph/add-preflight

Conversation

@JosephMarinier

@JosephMarinier JosephMarinier commented Jul 29, 2026

Copy link
Copy Markdown
Collaborator
  • Fix strict LLM check
    See 6886ad6 for more details.
  • Suppress usage: block in eva --help as it is completely redundant with the options below.
  • Migrate deprecated pipecat runner to worker
  • Add preflight
    Probe each configured model before a run starts and abort early on a credential/connectivity failure, instead of discovering it only after every record has exhausted its attempts.
    • eva/orchestrator/preflight.py: run_preflight probes the run's models by reusing the real client/factory paths (LiteLLMClient for the LLM, the pipecat STT/TTS service factories, the audio-LLM client). It is conservative, so only a definitive error fails a probe. S2S has no live probe yet (logged).
    • Wired into BenchmarkRunner._run() — the single point both a fresh run and a rerun funnel through — gated on "there's something to run" (pending records + attempts remaining), so it fires exactly once per invocation and only when conversations will actually run.
    • Added configs --no-preflight and --preflight-timeout-seconds.

See 6886ad6 for more details.
as it is completely redundant with the options bellow.
@JosephMarinier JosephMarinier self-assigned this Jul 29, 2026
Probe each configured model before a run starts and abort early on a credential/connectivity failure, instead of discovering it only after every record has exhausted its attempts.

- eva/orchestrator/preflight.py: run_preflight probes the run's models by reusing the real client/factory paths (LiteLLMClient for the LLM, the pipecat STT/TTS service factories, the audio-LLM client). It is conservative, so only a definitive error fails a probe. S2S has no live probe yet (logged).
- Wired into BenchmarkRunner._run() — the single point both a fresh run and a rerun funnel through — gated on "there's something to run" (pending records + attempts remaining), so it fires exactly once per invocation and only when conversations will actually run.
- Added configs `--no-preflight` and `--preflight-timeout-seconds`.
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.

1 participant