adorable-dentist-65637
07/13/2025, 3:52 AMtall-airline-16756
07/13/2025, 3:53 AMtall-airline-16756
07/13/2025, 3:53 AMfunction_tool
. The main approaches supported in LiveKit are:
• Function tool transfer: This is the most common and LLM-driven approach, where specific @function_tool
-decorated methods handle transfers between agents, often preserving context and providing appropriate conversation handoff messages.
• Direct agent updates: You can also update the current agent programmatically within your session by calling session.update_agent()
and passing the new agent instance. This method bypasses the function tool system and gives you more direct control over agent transfers.
• SIP telephony transfers: In telephony use cases, there are SIP-based mechanisms (such as transfer_sip_participant
) for transferring calls, though these are outside standard agent-to-agent application transfers.
The choice of method depends on whether you want transfers to be autonomously managed by the LLM or strictly under programmatic control.
Let me know if you need specific examples or further details about any of these transfer approaches.
Sources: complex-agents/personal_shopper/README.md | Agents telephony integration | LiveKit Docs | Tool definition and use | LiveKit Docs