diff --git a/CHANGELOG.md b/CHANGELOG.md index 8287b1b50..30742d536 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -5,17 +5,19 @@ All notable changes to **Pipecat** will be documented in this file. The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). -## [Unreleased] +## [0.0.74] - 2025-07-03 ### Added -- Added a new STT service, `SpeechmaticsSTTService`. This service provides +- Added a new STT service, `SpeechmaticsSTTService`. This service provides real-time speech-to-text transcription using the Speechmatics API. It supports - partial and final transcriptions, multiple languages, various audio formats, + partial and final transcriptions, multiple languages, various audio formats, and speaker diarization. - Added `normalize` and `model_id` to `FishAudioTTSService`. +- Added `http_options` argument to `GoogleLLMService`. + - Added `run_llm` field to `LLMMessagesAppendFrame` and `LLMMessagesUpdateFrame` frames. If true, a context frame will be pushed triggering the LLM to respond. @@ -57,9 +59,9 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 tools = ToolsSchema(standard_tools=[do_something]) ``` - - `user_id` is now populated in the `TranscriptionFrame` and - `InterimTranscriptionFrame` when using a transport that provides a - `user_id`, like `DailyTransport` or `LiveKitTransport`. +- `user_id` is now populated in the `TranscriptionFrame` and + `InterimTranscriptionFrame` when using a transport that provides a `user_id`, + like `DailyTransport` or `LiveKitTransport`. - Added `watchdog_coroutine()`. This is a watchdog helper for couroutines. So, if you have a coroutine that is waiting for a result and that takes a long diff --git a/scripts/evals/README.md b/scripts/evals/README.md index ad94e4605..b67d5d75b 100644 --- a/scripts/evals/README.md +++ b/scripts/evals/README.md @@ -49,7 +49,7 @@ python run-release-evals.py -p 07 -a -v You can also run evals for a single example (not part of the release set): ```sh -python run-eval.py YOUR_EXAMPLE_SCRIPT -a -v +python run-eval.py -p "A simple math addition" -a -v YOUR_EXAMPLE_SCRIPT ``` Your script needs to follow any of the foundation examples pattern. diff --git a/scripts/evals/eval.py b/scripts/evals/eval.py index e683ff8e1..71d5c9e9e 100644 --- a/scripts/evals/eval.py +++ b/scripts/evals/eval.py @@ -104,7 +104,7 @@ class EvalRunner: asyncio.create_task(run_example_pipeline(script_path)), asyncio.create_task(run_eval_pipeline(self, example_file, prompt, eval)), ] - _, pending = await asyncio.wait(tasks, timeout=10) + _, pending = await asyncio.wait(tasks, timeout=90) if pending: logger.error(f"ERROR: Eval timeout expired, cancelling pending tasks...") for task in pending: diff --git a/scripts/evals/run-release-evals.py b/scripts/evals/run-release-evals.py index 2e4d563c7..3cf844735 100644 --- a/scripts/evals/run-release-evals.py +++ b/scripts/evals/run-release-evals.py @@ -39,6 +39,7 @@ TESTS_07 = [ # 07 series ("07-interruptible.py", PROMPT_SIMPLE_MATH, None), ("07-interruptible-cartesia-http.py", PROMPT_SIMPLE_MATH, None), + ("07a-interruptible-speechmatics.py", PROMPT_SIMPLE_MATH, None), ("07b-interruptible-langchain.py", PROMPT_SIMPLE_MATH, None), ("07c-interruptible-deepgram.py", PROMPT_SIMPLE_MATH, None), ("07d-interruptible-elevenlabs.py", PROMPT_SIMPLE_MATH, None),