User Guide

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.

Models

Use the "expertise" slider to adjust how the AI models respond to your prompts.

GPT Models

OpenAI's GPT series, including GPT-3.5 and the more advanced GPT-4, offer versatile language understanding and generation capabilities.

Deepseek

Deepseek's models, particularly Deepseek-coder, specialize in coding tasks and provide tailored assistance for programming-related queries.

Claude

Anthropic's Claude models, including Claude 3 Haiku and Claude 3.5 Sonnet (the most capable and default model), offer advanced language processing and generation.

RAG (Retrieval Augmented Generation)

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.

For advanced users:

Adjust the reranker option if you feel the model isn't retrieving the most relevant information from your notes.

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.

Adding Notes

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.

Editing Notes

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.

Notes Format

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:

## What is Neovim?
Neovim is a highly configurable, next-generation text editor. It is a fork of Vim, with a focus on extensibility and usability.
## Keybindings
- `:w` - write the file
### Custom Keybindings
I have set up 'jk' to exit insert mode and return to normal mode.
## Plugins
...

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.