Comment by wongarsu

2 years ago

Exactly. Basically when you have a ChatGPT conversation, under the hood this is put at the start of the conversation as "system" instructions to the model.

So a typical input might look like

    <system> [this prompt]
    <user> [what you typed]
    <assistant>

And then the LLM is allowed to fill in what the assistant is supposed to say.

So when the context window rolls over, this system prompt is reinserted?

  • I'd think of it more as keeping state in a separate object, and reassembling the prompt each time as system prompt + the most recent user/assistent conversation pairs + current user prompt. Then you can just shorten the conversation history in the middle to fit your context window. If you are fancy you add a summary of everything you have cut, but I'm not sure if ChatGPT does that.