Here is the evolutionary tree of the existing LLMs (as of July 2023)

CREDIT | JingfengYang

CREDIT | JingfengYang

The best place to learn how LLMs actually work and the main principles behind them:

LLM University (LLMU) | Cohere

When you want an LLM to produce desired answers, you can:

1 - Rely on it’s knowledge (training data)

That is what you do when you use ChatGPT and write instructions there.

Some language models, like models from Open AI (GPT-3.5 and GPT 4) allow you to set a system prompt in addition to the instructions you provide in every message. That is important when you want all the answers to follow the same rules.

The problem? - model knows everything on a superficial level, but lack narrow specific knowledge - like knowledge about some tools, businesses, individuals, etc.

2 - Fine-tune the model

You can read more about fine-tuning here:

OpenAI Platform

3 - Augment the model, i.e. give it your information in addition to the model’s internal knowledge

Here you can find a brief explanation of how it works:

Tutorial: ChatGPT Over Your Data

When building LLM-driven apps, it’s crucial to understand how data processing works - it’s based on vector embeddings. Here you can find a good overview of vector embeddings and databases:

What is a Vector Database?