Aleix Conchillo Flaqué
28c729cc36
replace asyncio.wait_for for wait_for2.wait_for
2025-08-20 15:26:57 -07:00
Aleix Conchillo Flaqué
4ff0567025
BaseObject: allow keyword arguments
2025-08-20 15:14:31 -07:00
Aleix Conchillo Flaqué
1377dec01b
DTMFAggregator: no need for interruption task
...
Now that system frames are queued there's no need to have an additional task to
push a `BotInterruptionFrame`.
2025-08-20 14:35:04 -07:00
Aleix Conchillo Flaqué
f1c1ebf852
timeout: fix wait_for2 import
2025-08-20 14:24:16 -07:00
Aleix Conchillo Flaqué
f387776985
add custom asyncio.wait_for()
...
This patch uses `wait_for2` package to implement `asyncio.wait_for()` for
Python < 3.12.
In Python 3.12, `asyncio.wait_for()` is implemented in terms of
`asyncio.timeout()` which fixed a bunch of issues. However, this was never
backported (because of the lack of `async.timeout()`) and there are still many
remainig issues, specially in Python 3.10, in `async.wait_for()`.
See https://github.com/python/cpython/pull/98518
2025-08-20 14:09:05 -07:00
Aleix Conchillo Flaqué
6831e63ec9
PipelineTask: use PipelineSource/PipelineSink and remove tasks
2025-08-20 10:08:54 -07:00
Aleix Conchillo Flaqué
12bcb7db64
ParallelPipeline: use PipelineSource/PipelineSink and remove tasks
2025-08-20 10:08:54 -07:00
Aleix Conchillo Flaqué
1b48b1d860
Pipeline: allow passing user source and sink processors
2025-08-20 10:08:54 -07:00
Aleix Conchillo Flaqué
d161e2767f
FrameProcessor: allow pausing/resuming system frames
2025-08-20 10:08:54 -07:00
Aleix Conchillo Flaqué
4015aedb86
tests: fix unit tests
2025-08-20 10:08:54 -07:00
Aleix Conchillo Flaqué
75a6ee839b
BaseObserver: added new on_process_frame
2025-08-20 10:08:54 -07:00
Aleix Conchillo Flaqué
13ce02c896
FrameProcessor: add new entry_processors() method
2025-08-20 10:08:54 -07:00
Aleix Conchillo Flaqué
2fd5885dc3
pipeline: implement processors property
2025-08-20 07:40:21 -07:00
Aleix Conchillo Flaqué
d743586bfb
BasePipeline: move processors_with_metrics() to FrameProcessor
2025-08-20 07:40:21 -07:00
Aleix Conchillo Flaqué
8051017895
pipeline: wrap with pipelines, use direct mode and reduce tasks
2025-08-20 07:40:21 -07:00
Aleix Conchillo Flaqué
dc7bf98ce5
Pipeline: improve performance by using direct mode
2025-08-20 07:40:21 -07:00
Aleix Conchillo Flaqué
609a43a191
FrameProcessor: added processors/next/previous properties
2025-08-20 07:40:19 -07:00
Aleix Conchillo Flaqué
4fb04422d9
FrameProcessor: remove unused set_parent/get_parent
2025-08-20 07:40:02 -07:00
Mark Backman
5205f56087
Add apply_text_normalization to ElevenLabs TTS services
2025-08-19 21:19:00 -04:00
Mark Backman
694c792af3
Merge pull request #2470 from pipecat-ai/mb/11labs-settings-reconnect
...
Update ElevenLabsTTSService: update runtime configuration
2025-08-19 18:18:14 -07:00
TheNotary
48b3ad8f8f
adds support for creating InterimTranscriptFrames for Azure speech services
2025-08-19 17:00:42 -05:00
Mark Backman
837de5f893
Merge pull request #2468 from pipecat-ai/mb/fix-mistral-docs-errors
...
Fix Mistral docstrings build errors
2025-08-19 12:22:26 -07:00
Mark Backman
b3e4421191
Add retry_on_timeout to AWSBedrockLLMService
2025-08-19 14:20:35 -04:00
Mark Backman
84058c3948
Add retry_on_timeout to AnthropicLLMService
2025-08-19 14:20:35 -04:00
Mark Backman
aebc781419
Update ElevenLabsTTSService to update when voice_settings change
2025-08-19 13:51:10 -04:00
Mark Backman
4160446f4c
Update ElevenLabsTTSService: reconnect on model and language changes
2025-08-19 11:32:54 -04:00
Mark Backman
05a14af184
Fix Mistral docstrings build errors
2025-08-19 10:31:03 -04:00
Filipi Fuchter
f550015efb
Changing heygen log level to trace.
2025-08-18 18:00:25 -03:00
Abhishek
8bbdc7c8d1
Only set last_frame_time when handling OutputAudioRawFrame
...
We don't want to set `last_frame_time` on other frames like `HeartBeatFrame`, `LLMGeneratedTextFrame`, `InterruptionFrames` so that we can calculate `diff_time` and compare it against `vad_stop_secs` properly
2025-08-16 16:25:14 +05:30
vipyne
088cb56922
log: add Disconnected from ElevenLabs debug log
2025-08-15 15:05:07 -05:00
Aleix Conchillo Flaqué
a789e5feea
Merge pull request #2451 from pipecat-ai/aleix/audio-buffer-processor-overlap
...
AudioBufferProcessor: fix overlap when buffer size is set
2025-08-14 15:31:50 -07:00
Aleix Conchillo Flaqué
16ca44131c
Merge pull request #2452 from pipecat-ai/aleix/runner-daily-direct-handlesigint
...
Runner: set handle_sigint to True for Daily direct
2025-08-14 15:25:05 -07:00
Aleix Conchillo Flaqué
e2fc8b3dce
Runner: set handle_sigint to True for Daily direct
2025-08-14 14:55:52 -07:00
Aleix Conchillo Flaqué
8b641089f8
AudioBufferProcessor: fix overlap when buffer size is set
2025-08-14 14:44:08 -07:00
Mark Backman
7f0494aa04
Override build_chat_completion_params for Mistral
2025-08-14 10:32:18 -04:00
Mark Backman
2b2b0f8121
Add MistralLLMService
2025-08-14 09:57:14 -04:00
Ashot
3b55d16a49
fix(asyncai): force flush WS TTS to eliminate stalls
2025-08-14 16:34:34 +04:00
Mark Backman
d7f31e0cbd
Merge pull request #2387 from pipecat-ai/mb/retry-chat-completion
...
Retry chat completions for OpenAILLMService and its subclasses
2025-08-13 14:39:40 -07:00
Mark Backman
71cd0f1c87
fix: Add text support to OpenAIRealtimeBetaLLMService
2025-08-13 11:37:36 -04:00
Filipi Fuchter
bbbbdc459a
Fixed an issue where SmallWebRTCTransport ended before TTS finished.
2025-08-13 11:46:51 -03:00
Mark Backman
d203528dad
Merge pull request #2333 from yohan-altrium/fix/2277-azure-tts-ssml-reserved-characters
...
Fixes 2277 - SSML reserved characters causes Azure TTS to fail
2025-08-13 06:27:30 -07:00
Yohan Liyanage
4bcca7956e
Refactors the code based on PR comments and adds the relevant changelog entry.
2025-08-13 16:34:33 +05:30
Aleix Conchillo Flaqué
0508ddddfb
WatchdogPriorityQueue: fix watchdog sentinel insertion
...
We now force each inserted item in the priority queue to be a tuple and the
actual value to be last in the tuple. All the previous values in the tuple also
need to be numeric.
2025-08-12 17:40:58 -07:00
Mark Backman
8714c9137f
Code review fixes
2025-08-12 17:49:13 -04:00
Mark Backman
4c029fcfa7
Update OpenAILLMService subclasses to use the new build_chat_completion_params function
2025-08-12 17:48:51 -04:00
Mark Backman
5c86f8e687
Add timeout/retry logic and refactor parameter building in BaseOpenAILLMService
...
- Add timeout (default 5.0s) and retry_on_timeout parameters to constructor
- Implement timeout/retry logic in get_chat_completions using asyncio.wait_for
- Extract build_chat_completion_params() as public method for subclass customization
2025-08-12 17:48:51 -04:00
Mark Backman
54a4d8a9f8
Merge pull request #2422 from thsunkid/thu/fix-set-lang-in-base-whisper
...
Fix: assigns string code instead of Language enum to BaseWhisperSTTService._language
2025-08-12 11:57:46 -07:00
Mark Backman
38af514d95
Merge pull request #2407 from pipecat-ai/mb/add-gemini-tts
...
Add GeminiTTSService
2025-08-12 11:56:45 -07:00
Aleix Conchillo Flaqué
6aa80c0b8e
Merge pull request #2424 from pipecat-ai/aleix/system-frame-queues-fix
...
FrameProcessor: fix race condition on FrameProcessorQueue
2025-08-12 11:56:00 -07:00
Mark Backman
541a43905b
Add GeminiTTSService
2025-08-12 14:52:20 -04:00