I’ve been working on a voice-to-voice agent using OpenAI’s realtime models and WebSockets. The pipeline was working fine before, but since yesterday I’ve started running into issues. Specifically, the function-calling event no longer gets triggered when I ask a query that should invoke the retriever function. Could you confirm if this is an issue on your side, or is it likely something on my end? Earlier it was working without problems.
Here is my code to declare functions
{
"type": "session.update",
"session": {
"model": "gpt-4o-realtime-preview", # gpt-4o-realtime-preview
'temperature': 0.6,
"instructions" : System_prompt_updated,
"input_audio_transcription": { "model": "gpt-4o-mini-transcribe" },
"voice":"ash",
"turn_detection": {
"type": "server_vad",
"threshold": 0.9, #how confident the VAD must be before ending a turn
"prefix_padding_ms": 300, #include 300 ms of audio before speech start
"silence_duration_ms": 200, #require 200 ms of silence to mark end
"create_response": True #auto-trigger a response.create for you
},
"tools": \[
{
"type": "function",
"name": "get_qdrantdb_result",
"description": "Fetch relevant info from documents using embeddings.",
"parameters": {
"type": "object",
"properties": {
"query": {
"type": "string",
"description": "The user's query for retrieval."
}
},
"required": \["query"\]
}
}\],
"tool_choice": "auto"
}
}