gpt-cotts is built with the goal to extend a brain. 'notes' is the page for saving the notes, ideas and thoughts the LLM should have access to. Currently, this is a simple wrapper around multiple LLMs. See the models section for more information on the models we have access to.
This tool does not have custom prompts. This comes from the opinion that most users don't want to mess around with custom prompts, and we can hide that complexity behind knobs, dials & buttons. This is also more intuitive to use, and it relates more to traditional internet browsing.
Use the "expertise" slider to adjust how the AI models respond to your prompts.
OpenAI's GPT series, including GPT-4o-mini and the more advanced GPT-4o
Deepseek Chat V2.5 is more advanced combination of DeepseekChat & DeepseekCoder. This means that it is a little better than the other models at coding specific tasks.
Anthropic's Claude models, including Claude 3 Haiku and Claude 3.5 Sonnet (the most capable and default model)
Keep a eye on my X profile for my opinions on the models and their capabilities.
We currently have a vanilla RAG setup, with query rewriting, embedding, retrieval and reranking performed before sending the retrieve content to the language model. RAG enhances our models by allowing them to access information from your personal notes. Click "query over your notes" to leverage this feature (You can also press Alt+r).
Adjust the reranker option if you feel the model isn't retrieving the most relevant information from your notes.
The notes section is your personal knowledge base. Store information here that you want our AI models to access and utilize in their responses.
To add notes to an existing 'class' select the class from the dropdown and click edit. To add a new class, click the 'Add Class' button and enter the class name.
To edit notes, click the 'Edit' button next to the class you want to edit. You can add, delete, or modify notes in the editor.
The format of the notes has been optimised for high quality retrieval and answers. Therefore, it is recommended to follow to use headings ('#' of varying lengths) to separate the sections which will be used for retrieval. For example, a note titled 'Neovim' could look like this:
Ensure that you don't use a single '#' as a heading, as it is used for the title of the note. Other than that, any markdown is valid, including code and math blocks.
The RubberDuck mode is a feature I added for when I'm programming. It comes from when my A-Level CS teacher gave me a Rubber duck to talk to as debugging tool. In this mode, the AI will never solve problems or provide answers. However, it will try to guide you towards things you potentially haven't thought of. I'd recommended trying out this mode while you're programming as well.
This tool also has a tldraw integration because I think it's cool. In the future, a teach.tldraw-like functionality will be added, as I find that super cool.