I’ve been asked many times to provide some general information on LLMs for developers that are looking to get started with LLMs for the first time.
Core Concepts
What is an LLM?
What can LLMs be used for?
How do you interact with LLMs?
What package(s) should I be using?
How do I teach the LLM to do my task?
Is it safe to provide PII or other confidential information to LLMs?
Are LLMs accurate? What about 'hallucinations'?
What is the difference between 'lexical' and 'semantic' representations?
What is an "embedding"?
What are vector stores?
What parameters should I be using (i.e. temperature, stopping sequence, etc)?
Can LLMs improve in accuracy?
Helpful links
Getting Started
- OpenAI Reference: https://platform.openai.com/docs/api-reference (useful for learning the concepts)
- LangChain Reference: https://python.langchain.com/en/latest/index.html (langchain combines several recent techniques into a single package - it is very useful for rapidly prototyping systems using LLMs, and still valuable even if you don't work with OpenAI models).
- LLM Parameters: https://txt.cohere.com/llm-parameters-best-outputs-language-ai/
Models
- Available OpenAI models: https://platform.openai.com/docs/models/overview
- Available sbert models: https://www.sbert.net/docs/pretrained_models.html
- Flan-T5 model documentation: https://huggingface.co/docs/transformers/model_doc/flan-t5
Tutorials
- Building semantic search with LLMs: https://www.youtube.com/watch?v=Yhtjd7yGGGA
- LangChain basics: https://www.youtube.com/watch?v=2xxziIWmaSA
Examples
- OpenAI's examples: https://platform.openai.com/examples
Helpful packages
- Extracting structured data from unstructured data: https://github.com/eyurtsev/kor
Looking for more interesting readings than just getting started? Checkout the LLM Readings page.