The following is a chat log with my AGI project, Raven. I’ve recently made some strides in Raven’s performance. Mostly it came down to prompt optimization. I make extensive use of summarization - which GPT-3 excels at. Summarizing chat logs, past conversations, and related topics can compress information enough to fit inside a single GPT-3 completion query, which can result in these remarkable exchanges. Prompt optimization, I find, is critical when using CURIE-INSTRUCT because it is more likely to get things wrong than DAVINCI-INSTRUCT. However, with some fine-tuning and testing, the results speak for themselves!
Next steps include integrating more sources of information, such as Wikipedia and real-time news. I also will need to do a lot more work on summarization and recall of old memories. Still, off to a great start!
(important note: this is on a private discord server)
Thanks for sharing! I look forward to seeing how you will improve it further. Would you mind sharing some more details regarding the “behind-the-scenes”?
Sure, here’s a link to a video I recorded. It’s already a bit out of date, though, as I’ve made a lot of progress since recording. However, the principles remain the same. https://youtu.be/Op66m03Nzns
Great video, thanks.
I noticed you have quite a few prompts. Do you have a rough idea of the tokens used per chat message? Does it stay roughly the same as the conversation goes on because of summarization and other optimizations, or does it vary?
The biggest variable is the number of memories recalled. I presently have it capped at 5 memories per topic, and they are prioritized based on recency. In the future, I hope to expand Raven’s working memory, but the greatest constraint is the number of tokens the API will accept. Otherwise, for most of the prompts, they are the same every time.
I use Curie as much as possible so the cost is trivial, even when the conversation chews up 16,000 tokens per minute (the equivalent of 1,600 davinci tokens).