filipi87
63bbfc3b27
Creating the concept of a group_id for the function calls.
2026-04-01 12:05:09 -03:00
filipi87
2458b9d42b
Delaying the response for the get_current_weather in the openai example.
2026-04-01 10:47:29 -03:00
filipi87
4543aef3d9
Only pushing a context frame when we receive the function call result if the user is not speaking.
2026-04-01 10:45:00 -03:00
filipi87
260368b6f4
Fixing an issue where the BotOutputTransport was discarding the UninterruptibleFrames.
2026-04-01 10:32:11 -03:00
filipi87
3ad2675b24
Creating UninterruptibleProcessQueue.
2026-04-01 10:28:52 -03:00
filipi87
970d713d7a
Using a JSON to send the result.
2026-04-01 10:28:03 -03:00
filipi87
f7012c570c
Fixed an issue in the FrameProcessor where only the current frame was checked for being an UninterruptibleFrame, not other frames in the queue.
2026-03-31 18:38:11 -03:00
filipi87
4bfa084f77
Updating the openai example to be async.
2026-03-31 17:37:39 -03:00
filipi87
780d6c476d
Merge branch 'main' into filipi/async_tools
2026-03-31 17:36:40 -03:00
filipi87
dfdb92958b
Fix async tool handling for compatibility with all LLMs.
2026-03-31 17:26:06 -03:00
mattie ruth backman
0f47076703
More RTVI version parsing improvements
2026-03-31 16:05:53 -04:00
mattie ruth backman
3e255f3d21
improve version format check
2026-03-31 16:05:53 -04:00
mattie ruth backman
565b9b961d
add tests for rtvi versioning
2026-03-31 16:05:53 -04:00
mattie ruth backman
692c3c74d1
We should now expect clients to be version 1.0.0 with valid versioning info
2026-03-31 16:05:53 -04:00
Mark Backman
7d309b3340
Merge pull request #4208 from pipecat-ai/mb/remove-deprecated-services
...
Remove deprecated service module shims
2026-03-31 15:37:12 -04:00
Mark Backman
04e8444096
Add changelog for #4208
2026-03-31 15:34:16 -04:00
Mark Backman
7501effad5
Remove deprecated service module shims and old implementations
...
Delete deprecated import shims that only re-export from new locations:
- services/ai_services.py
- services/gemini_multimodal_live/
- services/aws_nova_sonic/
- services/openai_realtime/
- services/deepgram/{stt,tts}_sagemaker.py
- services/google/{llm_openai,llm_vertex,google}.py
- services/google/gemini_live/llm_vertex.py
- services/riva/
- services/nim/
Remove deprecated implementations replaced by newer services:
- services/openai_realtime_beta/ (use openai.realtime)
- services/google/openai/ (use google.llm)
Also removes associated examples and tests for deleted services.
2026-03-31 15:34:14 -04:00
Mark Backman
0c8ff9c4c3
Merge pull request #4209 from pipecat-ai/mb/grok-3-default
...
Change GrokLLMService default model to grok-3
2026-03-31 15:29:34 -04:00
Mark Backman
53f6426b0b
Merge pull request #4216 from pipecat-ai/mb/add-missing-google-vertex
...
Add missing google-vertex.py file
2026-03-31 15:29:04 -04:00
Mark Backman
9e32ade44b
Merge pull request #4203 from pipecat-ai/mb/fix-json-decode-tool-calls
...
Handle incomplete function call arguments from interrupted LLM streams
2026-03-31 15:28:53 -04:00
Mark Backman
2574d24400
Merge pull request #4202 from pipecat-ai/mb/fix-inworld-tts-streaming-utf8
...
Fix UTF-8 decode error in Inworld TTS streaming response
2026-03-31 15:28:37 -04:00
Mark Backman
27cb078716
Add missing google-vertex.py file
2026-03-31 15:25:52 -04:00
Mark Backman
ca636813a8
Merge pull request #4206 from pipecat-ai/mb/flatten-examples-dir
...
Move foundational examples to examples/
2026-03-31 15:23:49 -04:00
Mark Backman
47b41a0ff7
Rename services/ to voice/ and function-calling/, flatten to top level
...
Replace the nested services/speech/ and services/function-calling/ with
top-level voice/ and function-calling/ directories. Update eval script
paths and README to match.
2026-03-31 15:20:03 -04:00
Mark Backman
f14638a1fd
Revert "Flatten services/ nesting: promote speech and function-calling to top level"
...
This reverts commit e1939ecd44 .
2026-03-31 14:59:23 -04:00
Mark Backman
e1939ecd44
Flatten services/ nesting: promote speech and function-calling to top level
...
Move services/speech/* directly into services/ and services/function-calling/*
into top-level function-calling/. Update eval script paths and README.
2026-03-31 14:55:22 -04:00
Mark Backman
dc5b94f9e0
Merge pull request #4213 from pipecat-ai/mb/google-imagen-4
...
Update default Google Imagen model to imagen-4.0
2026-03-31 13:20:20 -04:00
Mark Backman
1d85aedcae
Split features/ into audio/, observability/, and rag/ subfolders
...
Extract focused example groups from the catch-all features/ folder:
- audio/: audio recording, background sound, sound effects
- observability/: observer, heartbeats, sentry metrics
- rag/: mem0, gemini-rag, gemini grounding metadata
Update README to document the new folders.
2026-03-31 13:15:06 -04:00
Mark Backman
e719cbbe6d
Reorganize examples into topic-based subfolders
...
Move 304 examples from a flat numbered directory into 14 descriptive
subfolders: getting-started, services (speech + function-calling),
transcription, vision, realtime, persistent-context,
context-summarization, update-settings (stt/tts/llm), turn-management,
thinking-and-mcp, transports, video-avatar, video-processing, and
features.
Strip numbered prefixes from filenames (e.g. 07c-interruptible-deepgram.py
becomes services/speech/deepgram.py) since the folder context makes them
redundant. Keep numbered prefixes only in getting-started/ where ordering
matters.
Update eval script paths and README to match the new structure.
2026-03-31 13:12:24 -04:00
Mark Backman
f2ce7ececc
Move foundational examples to examples/
2026-03-31 13:12:24 -04:00
kompfner
bd7496fa27
Merge pull request #4211 from pipecat-ai/pk/openai-responses-websocket-service-refactor
...
Introduce WebsocketLLMService and refactor OpenAIResponsesLLMService …
2026-03-31 13:02:45 -04:00
Paul Kompfner
0a8bcf58c4
Register on_connection_error event handler in WebsocketLLMService
2026-03-31 10:52:33 -04:00
Paul Kompfner
0fb45c6114
Guard _drain_cancelled_response against None websocket
2026-03-31 10:32:47 -04:00
Paul Kompfner
657a5def57
Use consistent 'inference' terminology in error messages
2026-03-31 10:17:29 -04:00
Paul Kompfner
30903042e5
Work around OpenAI Python SDK temperature bug in example
2026-03-31 10:16:30 -04:00
Mark Backman
9936ec16cb
Add changelog for #4213
2026-03-31 09:28:31 -04:00
Mark Backman
212aff15c9
Update default Google Imagen model to imagen-4.0-generate-001
2026-03-31 09:16:24 -04:00
Paul Kompfner
f2b3f87661
Clarify discrete vs continuous contrast in WebsocketLLMService docstring
2026-03-30 23:46:23 -04:00
Paul Kompfner
77cfb181f6
Clarify per-inference helper usage in WebsocketLLMService docstring
2026-03-30 23:25:56 -04:00
Paul Kompfner
0b256936c6
Add ConnectionClosed to _receive_response_events raises docstring
2026-03-30 23:14:45 -04:00
Paul Kompfner
3922963c7a
Extract helpers in _process_context to reduce repeated code
2026-03-30 23:10:38 -04:00
Paul Kompfner
ab9f2a35b6
Clean up TTFB metrics and previous_response state on inference failure
2026-03-30 23:04:06 -04:00
Paul Kompfner
f19d1183d8
Clean up TTFB metrics and previous_response state on retry failure
2026-03-30 23:00:22 -04:00
Paul Kompfner
9ad4fe6344
Use concrete inference language instead of abstract transaction terminology
2026-03-30 22:42:40 -04:00
Paul Kompfner
04882f6f2a
Simplify _connect_websocket guard and remove unused State import
2026-03-30 22:32:08 -04:00
Paul Kompfner
712e42533d
Introduce WebsocketLLMService and refactor OpenAIResponsesLLMService to use it
...
Add WebsocketLLMService as a base class for WebSocket-based LLM services,
parallel to WebsocketTTSService/WebsocketSTTService but codifying a
transactional request-response model rather than a continuous background
receive loop.
WebsocketLLMService provides:
- Connection lifecycle (start/stop/cancel → connect/disconnect)
- _ws_send/_ws_recv with transparent ConnectionClosed handling
(auto-reconnect via exponential backoff → WebsocketReconnectedError)
- _ensure_connected with retry via _try_reconnect
OpenAIResponsesLLMService now inherits from WebsocketLLMService, removing
duplicated connection management code (_connect, _disconnect, _reconnect,
_ensure_connected, _ws_send, start, stop, cancel) and simplifying
_process_context from a loop with attempt tracking to a flat try/except
with a single retry.
2026-03-30 22:26:31 -04:00
Mark Backman
7d8b436018
Add changelog for #4209
2026-03-30 21:40:17 -04:00
Mark Backman
bf1856f610
Change GrokLLMService default model from grok-3-beta to grok-3
...
The grok-3 model is now generally available, so update the default
from the beta variant.
2026-03-30 21:39:33 -04:00
Mark Backman
248e0a4c90
Merge pull request #4207 from pipecat-ai/mb/remove-krisp
...
Remove docs uses of krisp optional dependency
2026-03-30 19:54:14 -04:00
Mark Backman
89dcd57577
Remove docs uses of krisp optional dependency
2026-03-30 19:50:40 -04:00