Function Calling Quality: Completions vs Assistants API

I am noticing a much higher quality of function call invocations from the assistants API vs the completions API.

When using equivalent prompts in both calls the assistants api not just makes better choices for calls, but also does them in the right order in a single reponse. wheras the completions API only ever repsonds with a single tool_call and often makes mistakes.

I prefer the completions API as i have no use for assistant creation and threads.

Is this intended?

They perform the same in my experience. I think the difference you are referring comes from the fact that we do polling in Assistants. That is why you can see the sequence of tool calls. You can do the same with Chat completions as long as you loop your API calls.

1 Like

No I am chaining, assistants is most certainly producing higher quality results. not sure if there is some underlying difference in the internal prompt construction pipeline or not.

Would there be any issue in me using assistant creation on a per run basis as if it was the completions api? (ie just flood my playground with hundereds/thousands of assitants?)

Yeah, I don’t doubt it probably has internal system prompt that do that. I think someone already tried to extract it before.