From 727b7701c10928d0b0c363ee2cd38704c35b65f7 Mon Sep 17 00:00:00 2001 From: Adolfo Reyna Date: Tue, 17 Mar 2026 01:21:36 -0400 Subject: [PATCH] Update project history with LLM debugging changes --- history.md | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/history.md b/history.md index 349fc05..358b8e4 100644 --- a/history.md +++ b/history.md @@ -255,3 +255,27 @@ The project now features a high-performance, Apple Silicon-optimized pipeline th - Aligned published English output with the exact text chosen for translation and added the missing Ollama-related config/plumbing to `main_v2`. - Replaced infinite ingest retry loops with bounded retry logic so failed delivery degrades gracefully instead of freezing caption flow. - **Outcome:** The `main_v2` pipeline now keeps an English-first contract across transcription, refinement, and Marian translation while behaving more predictably under API outages and mixed-language input. + +## Phase 29: Output Semantics + Model Defaults Cleanup +- **Goal:** Make the live console reflect the real pipeline stages and choose safer small-model defaults for local LLM use. +- **Approach:** + - Split raw ASR, Whisper English bridge, line-level LLM corrections, and paragraph output into distinct console labels instead of grouping multiple stages under `[LLM]`. + - Updated the default local post-correction model configuration to prefer a smaller Qwen 3.5 variant for experimentation, then kept the code flexible so model choice can be overridden per run. + - Added metadata flow through the translation/distribution stages so downstream output can distinguish true LLM paragraphs from deterministic paragraph fallback. +- **Outcome:** Terminal output is easier to interpret during multilingual runs, especially when comparing source ASR against the English bridge and later refinement stages. + +## Phase 30: Local LLM Warmup + Fallback Transparency +- **Goal:** Reduce cold-start timeout confusion for local Ollama-backed correction and paragraph modes. +- **Approach:** + - Added Ollama startup health checks and model presence checks before live processing begins. + - Added a warmup request for local models so working Ollama models can pay the cold-load cost before live captions arrive. + - Split paragraph output labels into true LLM paragraphs versus deterministic fallback paragraphs to avoid overstating when a model actually answered. +- **Outcome:** Local-model failures are surfaced earlier, cold-start behavior is easier to understand, and fallback output is clearly labeled. + +## Phase 31: OpenAI/Ollama Prompt Parity + Better API Diagnostics +- **Goal:** Make remote and local LLM behavior easier to compare and make API failures actionable. +- **Approach:** + - Improved OpenAI error reporting to print the full API error body instead of only a generic HTTP 400 message. + - Removed the explicit Chat Completions temperature override after discovering current GPT-5-family models reject non-default temperature values on this endpoint. + - Aligned the Ollama path with the OpenAI path by forwarding the same system instructions to local generation requests, including warmup calls. +- **Outcome:** GPT-backed runs now fail with useful diagnostics, OpenAI requests are compatible with current GPT-5-mini behavior, and local-vs-remote prompting is more consistent.