ChatGPT is currently powered by gpt-3.5-turbo-0301, the most advanced OpenAI language model. Although OpenAI has made the API for this model accessible, the API does not automatically manage conversations contextually...
GPT-3.5-Turbo-0301 is effective at single-turn tasks, even without any conversational dialog turns.
Therefore, a ChatGPT implementation should be able to keep track of conversation context and logical connections in order to respond appropriately.
The ChatGPT models hold no memory of past requests, all relevant information must be supplied via the conversation.
The ChatML document submitted must include conversational history in order to maintain conversational context and manage dialog state. This allows the model to answer contextual questions by leveraging prior dialog turns.
OpenAI explicitly indicates that their models lack the capacity to retain memory of prior and subsequent queries. Therefore, all necessary information must be provided in the conversation.
Remember, if the conversation exceeds the model's token limit, it must be condensed. This can be done by creating a rolling log that stores the last n dialog turns for re-submission.
Below are a few practical examples. You can enter a sequence of messages and the model will return a text output, as seen below:
Below is a different question relating to motor sport and the ChatML document submitted to the gpt-3.5-turbo-0301 model:
The correct response given to the last question:
Note, when a follow-up question is asked with no context provided in the ChatML document…as seen below:
The context is lost and the ChatGPT API states that fact.
What is the correct way to ask a follow-up question, providing the necessary contextual reference to the system?
The correct response is given:
OpenAI states that gpt-3.5-turbo-0301 does not pay strong attention to system messages, so extra focus is needed for instructions in a user message in addition to context management.
If the model's generated output is not satisfactory, it is necessary to try different approaches to improve it.
This could include making the instructions more clear, specifying the answer format, asking the model to go through the steps sequentially (chain-of-thought prompting), and even fine-tuning the base GPT-3 model (GPT-3.5-turbo models are not able to be fine-tuned).
I’m currently the Chief Evangelist @ HumanFirst. I explore and write about all things at the intersection of AI and language; ranging from LLMs, Chatbots, Voicebots, Development Frameworks, Data-Centric latent spaces and more.