Merge pull request #1690 from pipecat-ai/aleix/rtvi-function-call-single-param
RTVIProcessor: use single FunctionCallParams
This commit is contained in:
@@ -61,6 +61,9 @@ from pipecat.processors.aggregators.openai_llm_context import (
|
|||||||
OpenAILLMContextFrame,
|
OpenAILLMContextFrame,
|
||||||
)
|
)
|
||||||
from pipecat.processors.frame_processor import FrameDirection, FrameProcessor
|
from pipecat.processors.frame_processor import FrameDirection, FrameProcessor
|
||||||
|
from pipecat.services.llm_service import (
|
||||||
|
FunctionCallParams, # TODO(aleix): we shouldn't import `services` from `processors`
|
||||||
|
)
|
||||||
from pipecat.transports.base_input import BaseInputTransport
|
from pipecat.transports.base_input import BaseInputTransport
|
||||||
from pipecat.transports.base_output import BaseOutputTransport
|
from pipecat.transports.base_output import BaseOutputTransport
|
||||||
from pipecat.transports.base_transport import BaseTransport
|
from pipecat.transports.base_transport import BaseTransport
|
||||||
@@ -658,16 +661,11 @@ class RTVIProcessor(FrameProcessor):
|
|||||||
async def handle_message(self, message: RTVIMessage):
|
async def handle_message(self, message: RTVIMessage):
|
||||||
await self._message_queue.put(message)
|
await self._message_queue.put(message)
|
||||||
|
|
||||||
async def handle_function_call(
|
async def handle_function_call(self, params: FunctionCallParams):
|
||||||
self,
|
|
||||||
function_name: str,
|
|
||||||
tool_call_id: str,
|
|
||||||
arguments: Mapping[str, Any],
|
|
||||||
):
|
|
||||||
fn = RTVILLMFunctionCallMessageData(
|
fn = RTVILLMFunctionCallMessageData(
|
||||||
function_name=function_name,
|
function_name=params.function_name,
|
||||||
tool_call_id=tool_call_id,
|
tool_call_id=params.tool_call_id,
|
||||||
arguments=arguments,
|
arguments=params.arguments,
|
||||||
)
|
)
|
||||||
message = RTVILLMFunctionCallMessage(data=fn)
|
message = RTVILLMFunctionCallMessage(data=fn)
|
||||||
await self._push_transport_message(message, exclude_none=False)
|
await self._push_transport_message(message, exclude_none=False)
|
||||||
|
|||||||
Reference in New Issue
Block a user