Ich würde mich gerne irren, aber nach meinem Verständnis “erinnert” sich ChatGPT nur an den Text der letzten Aufforderung, die Sie ihm gesendet haben. Sie können dies im OpenAI Playground testen, indem Sie einen Chat starten und dann nach dem Absenden Ihres Textes auf die Schaltfläche “Code anzeigen” klicken. Sie werden sehen, dass jedes Mal, wenn Sie weiteren Text absenden, dieser an die Aufforderung angehängt wird:
prompt="The following is a conversation with an AI assistant. The assistant is helpful, creative, clever, and very friendly.\n\nHuman: Just testing to see how the prompt gets set.\nAI: Hi there! It looks like you're trying to find out about how to configure the prompts. Is there anything else I can help you with today?\nHuman: If I use OpenAI's chat functionality on my own application, should I keep updating the prompt each time a user posts a new question? It's definitely a good idea to keep your prompts up-to-date, as it will help ensure your users are getting the most relevant information for each question they post. Depending on the size of your application and the complexity of your conversations, you may want to update your prompts regularly or develop a more sophisticated system to determine when updates are necessary. Let me know if there is anything else I can help you with."
Dies kann so lange fortgesetzt werden, bis Sie das in der Dokumentation, auf die Sie verlinkt haben, erwähnte Limit von 4000 Tokens (ca. 3.000 Wörter) erreichen. Beachten Sie, dass das Senden großer Prompts teuer werden kann. Ich glaube, es kostet derzeit 0,02 US-Dollar pro 1.000 Tokens mit dem Davinci-Modell.
Wenn mein Verständnis korrekt ist, müsste eine Anwendung oder ein Discourse-Plugin, das ChatGPT für Discourse verwaltet, jede neue Frage und Antwort an den Prompt anhängen. Dies könnte es tun, bis es 4.000 Tokens (ca. 3.000 Wörter) erreicht. Wenn dieses Limit überschritten wird, scheint eine Fehlermeldung von OpenAI zurückgegeben zu werden. Diese Fehlermeldung müsste von der Anwendung behandelt werden, die die Anfragen an OpenAI stellt.
Eine mögliche Umgehung des Token-Limits wäre, einen Weg zu finden, wichtige Details aus einem Gespräch zu extrahieren und dann nur diese Details in den Prompt aufzunehmen. Es könnte möglich sein, eine Anfrage im Namen des Benutzers zu stellen, um diese Informationen zu erhalten. Etwas wie:
Diese Details könnten dann in der Anwendung gespeichert werden, die die Anfragen an OpenAI stellt, und verwendet werden, um das Gespräch zu einem späteren Zeitpunkt neu zu starten.
Sie erhalten hier weitaus definitivere Antworten: https://community.openai.com/. Es ist großartig zu sehen, dass sie Discourse für ihre Community nutzen!