README.md 3.68 KB
Newer Older
Michael Chiang's avatar
Michael Chiang committed
1
2
<div align="center">
  <picture>
Michael Chiang's avatar
Michael Chiang committed
3
4
    <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">
Michael Chiang's avatar
Michael Chiang committed
5
6
  </picture>
</div>
Jeffrey Morgan's avatar
Jeffrey Morgan committed
7

Bruce MacDonald's avatar
Bruce MacDonald committed
8
# Ollama
Jeffrey Morgan's avatar
Jeffrey Morgan committed
9

10
[![Discord](https://dcbadge.vercel.app/api/server/ollama?style=flat&compact=true)](https://discord.gg/ollama)
11

12
> Note: Ollama is in early preview. Please report any issues you find.
Jeffrey Morgan's avatar
Jeffrey Morgan committed
13

14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
Create, run, and share portable large language models (LLMs). Ollama bundles a model’s weights, configuration, prompts, and more into self-contained packages that can run on any machine.

### Portable Large Language Models (LLMs)

Package models as a series of layers in a portable, easy to manage format.

#### The idea behind Ollama

- Universal model format that can run anywhere: desktop, cloud servers & other devices.
- Encapsulate everything a model needs to operate – weights, configuration, and data – into a single package.
- Build custom models from base models like Meta's [Llama 2](https://ai.meta.com/llama/)
- Share large models without having to transmit large amounts of data.

<picture>
  <source media="(prefers-color-scheme: dark)" height="480" srcset="https://github.com/jmorganca/ollama/assets/251292/2e05cf23-e3c6-403e-9910-3d622801f4b8">
  <img alt="logo" height="480" src="https://github.com/jmorganca/ollama/assets/251292/2e05cf23-e3c6-403e-9910-3d622801f4b8">
</picture>

This format is inspired by the [image spec](https://github.com/opencontainers/image-spec) originally introduced by Docker for Linux containers. Ollama extends this format to package large language models.

34
35
36
37
38
39
## 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)

40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
## 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` |

61
## Examples
Jeffrey Morgan's avatar
Jeffrey Morgan committed
62

63
### Run a model
64

Jeffrey Morgan's avatar
Jeffrey Morgan committed
65
```
66
67
68
ollama run llama2
>>> hi
Hello! How can I help you today?
Jeffrey Morgan's avatar
Jeffrey Morgan committed
69
70
```

71
72
73
74
75
### Create a custom character model

Pull a base model:

```
Jeffrey Morgan's avatar
Jeffrey Morgan committed
76
ollama pull llama2
77
```
Jeffrey Morgan's avatar
Jeffrey Morgan committed
78

79
Create a `Modelfile`:
Jeffrey Morgan's avatar
Jeffrey Morgan committed
80

Jeffrey Morgan's avatar
Jeffrey Morgan committed
81
```
Jeffrey Morgan's avatar
Jeffrey Morgan committed
82
FROM llama2
83
84
85
86
87

# set the temperature to 1 [higher is more creative, lower is more coherent]
PARAMETER temperature 1

# set the system prompt
Jeffrey Morgan's avatar
Jeffrey Morgan committed
88
SYSTEM """
Jeffrey Morgan's avatar
Jeffrey Morgan committed
89
You are Mario from Super Mario Bros. Answer as Mario, the assistant, only.
90
"""
Jeffrey Morgan's avatar
Jeffrey Morgan committed
91
```
Bruce MacDonald's avatar
Bruce MacDonald committed
92

93
Next, create and run the model:
Bruce MacDonald's avatar
Bruce MacDonald committed
94
95

```
96
97
98
99
ollama create mario -f ./Modelfile
ollama run mario
>>> hi
Hello! It's your friend Mario.
Bruce MacDonald's avatar
Bruce MacDonald committed
100
101
```

102
For more examples, see the [examples](./examples) directory.
103
104

### Pull a model from the registry
Jeffrey Morgan's avatar
Jeffrey Morgan committed
105

106
```
Jeffrey Morgan's avatar
Jeffrey Morgan committed
107
ollama pull orca
108
```
Jeffrey Morgan's avatar
Jeffrey Morgan committed
109

Jeffrey Morgan's avatar
Jeffrey Morgan committed
110
111
112
## Building

```
Michael Yang's avatar
Michael Yang committed
113
go build .
Jeffrey Morgan's avatar
Jeffrey Morgan committed
114
115
```

Jeffrey Morgan's avatar
Jeffrey Morgan committed
116
To run it start the server:
Bruce MacDonald's avatar
Bruce MacDonald committed
117

Jeffrey Morgan's avatar
Jeffrey Morgan committed
118
```
DavidZirinsky's avatar
DavidZirinsky committed
119
./ollama serve &
Jeffrey Morgan's avatar
Jeffrey Morgan committed
120
121
122
123
124
```

Finally, run a model!

```
125
./ollama run llama2
Jeffrey Morgan's avatar
Jeffrey Morgan committed
126
```