Realtime API does not trigger after "conversation.item.create" event

Hi everyone,

I’ve been experimenting with Function Calling using the Realtime API, and I’ve hit a bit of a snag. I’m trying to get the AI model to send audio back immediately after this snippet:

{
  type: "conversation.item.create",
  item: {
    type: "function_call_output",
    call_id: callId,
    output: myOutput
  },
}

Here’s what’s happening: if I say something simple like “hey,” it does trigger the model to generate a response. That response is based on my function_call_output, so the event itself is successfully sent.

The problem is that the response isn’t triggered as expected—it seems like the model only responds to voice input. I haven’t been able to find a way to force it to reply solely through events.

For reference, I didn’t set turn_detection to anything, just to avoid potential complications.

If anyone has insights or suggestions on how to tackle this, I’d really appreciate the help!

Thanks so much! :blush:

I figured it out! As someone else mentioned in another post, the solution is to send another event, right away:

type: 'response.create',
response: {
  instructions: "Reply based on the function's output."
}

It works, but still, I wonder why we really need to do this. If you have an explanation of the logic behind this, I am definitely interested. Thanks and I hope it will be hopeful for others :slight_smile:

1 Like