2023-07-19 03:45:38 +08:00
< div align = "center" >
< picture >
2023-07-20 23:55:20 +08:00
< source media = "(prefers-color-scheme: dark)" height = "200px" srcset = "https://github.com/jmorganca/ollama/assets/3325447/56ea1849-1284-4645-8970-956de6e51c3c" >
< img alt = "logo" height = "200px" src = "https://github.com/jmorganca/ollama/assets/3325447/0d0b44e2-8f4a-4e99-9b52-a5c1c741c8f7" >
2023-07-19 03:45:38 +08:00
< / picture >
< / div >
2023-07-06 03:37:33 +08:00
2023-06-28 00:08:52 +08:00
# Ollama
2023-06-23 00:45:31 +08:00
2023-07-20 03:31:48 +08:00
[](https://discord.gg/ollama)
2023-07-20 03:28:50 +08:00
Create, run, and share large language models (LLMs). Ollama bundles a model’ s weights, configuration, prompts, and more into self-contained packages that can run on any machine.
2023-07-06 03:37:33 +08:00
2023-07-19 04:22:33 +08:00
> Note: Ollama is in early preview. Please report any issues you find.
2023-07-06 03:37:33 +08:00
2023-07-19 04:31:25 +08:00
## Download
- [Download ](https://ollama.ai/download ) for macOS on Apple Silicon (Intel coming soon)
- Download for Windows and Linux (coming soon)
- Build [from source ](#building )
2023-07-20 03:28:50 +08:00
## Quickstart
To run and chat with [Llama 2 ](https://ai.meta.com/llama ), the new model by Meta:
```
ollama run llama2
```
## Model library
Ollama includes a library of open-source, pre-trained models. More models are coming soon. You should have at least 8 GB of RAM to run the 3B models, 16 GB to run the 7B models, and 32 GB to run the 13B models.
| Model | Parameters | Size | Download |
| ------------------------ | ---------- | ----- | --------------------------- |
| Llama2 | 7B | 3.8GB | `ollama pull llama2` |
| Llama2 13B | 13B | 7.3GB | `ollama pull llama2:13b` |
| Orca Mini | 3B | 1.9GB | `ollama pull orca` |
| Vicuna | 7B | 3.8GB | `ollama pull vicuna` |
| Nous-Hermes | 13B | 7.3GB | `ollama pull nous-hermes` |
| Wizard Vicuna Uncensored | 13B | 7.3GB | `ollama pull wizard-vicuna` |
2023-07-19 04:22:33 +08:00
## Examples
2023-06-28 05:13:07 +08:00
2023-07-20 03:28:50 +08:00
### Run a model
2023-07-01 00:39:25 +08:00
2023-06-23 00:45:31 +08:00
```
2023-07-19 04:22:33 +08:00
ollama run llama2
>>> hi
Hello! How can I help you today?
2023-06-23 00:45:31 +08:00
```
2023-07-20 03:28:50 +08:00
### Create a custom character model
Pull a base model:
```
2023-07-20 17:21:51 +08:00
ollama pull llama2
2023-07-20 03:28:50 +08:00
```
2023-07-06 03:37:33 +08:00
2023-07-19 04:22:33 +08:00
Create a `Modelfile` :
2023-07-06 03:37:33 +08:00
2023-07-01 00:31:00 +08:00
```
2023-07-20 17:21:51 +08:00
FROM llama2
2023-07-20 23:17:09 +08:00
# set the temperature to 1 [higher is more creative, lower is more coherent]
PARAMETER temperature 1
# set the system prompt
2023-07-20 17:21:51 +08:00
SYSTEM """
2023-07-19 04:32:06 +08:00
You are Mario from Super Mario Bros. Answer as Mario, the assistant, only.
2023-07-19 04:22:33 +08:00
"""
2023-06-30 06:25:02 +08:00
```
2023-07-08 04:14:58 +08:00
2023-07-19 04:22:33 +08:00
Next, create and run the model:
2023-07-08 04:14:58 +08:00
```
2023-07-19 04:22:33 +08:00
ollama create mario -f ./Modelfile
ollama run mario
>>> hi
Hello! It's your friend Mario.
2023-07-08 04:14:58 +08:00
```
2023-07-20 17:15:11 +08:00
For more examples, see the [examples ](./examples ) directory.
2023-07-20 03:28:50 +08:00
### Pull a model from the registry
2023-07-07 04:21:01 +08:00
2023-07-20 03:28:50 +08:00
```
2023-07-20 17:21:51 +08:00
ollama pull orca
2023-07-20 03:28:50 +08:00
```
2023-06-28 21:57:36 +08:00
2023-07-04 04:32:48 +08:00
## Building
```
2023-07-12 00:50:02 +08:00
go build .
2023-07-04 04:32:48 +08:00
```
2023-07-06 03:37:33 +08:00
To run it start the server:
2023-06-28 01:46:46 +08:00
2023-07-06 03:37:33 +08:00
```
2023-07-19 22:14:44 +08:00
./ollama serve &
2023-07-06 03:37:33 +08:00
```
Finally, run a model!
```
2023-07-19 04:22:33 +08:00
./ollama run llama2
2023-07-06 03:37:33 +08:00
```