"chat" wrt chat/completions

Some chat AI models are still able to “complete”, but as a task powered by their intelligence, because the flow of tokens is interrupted by the ChatML containers of messages and the unseen “assistant” prompt that indicates it is the AI’s turn to write.

Some are dumb and damaged as a side-effect of being only “chat” models of small size not suitable for arbitrary development.

image

The AI model is and always has been “stateless”. The chat training allows you to place previous user+assistant turns as you wish within those mandated containers to give the impression of memory of the past conversation. Your code builds and manages this conversation history.

While you must do the coding of managing session state and token budget to expend on sending past conversation, “chat” here reflects the overall model behavior and the impression it gives that you are talking to an AI helper that builds on your task and its previous answers. It is more natural to ask “write this code” than to write a hinted function with docstring to have AI complete a function.

“Assistants” provides an front-end where OpenAI does the managing of chat history if you want to give up that control of sending any messages you want.