I’m using GPT-J (EleutherAI/gpt-j-6B) as a chatbot. As a prompt, I provide a sample conversation as shown below. When now a new conversation starts, I append the input of the user to this sample conversation (“Hello, how are you doing?” in the example below).
Now, the problem is that the conversation is sometimes inconsistent because GPT-J might want to continue the sample conversation but the new user input could break that.
How can this be solved?
This is a discussion between a Human and a Chatbot.
Human:
Can you do push-ups?
Chatbot:
Of course I can. It’s a piece of cake! Believe it or not, I can do 30 push-ups a minute.
Human:
Really? I think that’s impossible!
Chatbot:
You mean 30 push-ups?
Human:
Yeah!
Chatbot:
It’s easy. If you do exercise everyday, you can make it, too.
you may add some example conversations/episodes as few-shots, which can lead the model to generate much better. also you need a special line or token to seperate each episode incase the information in previous episodes been used in the last one
Thank you very much for your answer. How many conversations and how many turns per conversation do you think are reasonable given the restricted history of 2024 tokens and that I also want to store the history of the conversation?
I agree with your point. Asking ChatGPT to explain things step by step is very useful because it makes difficult topics easier to understand. I also find that asking for examples helps connect the explanation to real tasks.