README.md 3.71 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

Jeffrey Morgan's avatar
Jeffrey Morgan committed
14
Run, create, and share large language models (LLMs).
15

16
17
18
19
20
21
## 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)

22
23
24
25
26
27
28
29
30
31
## Quickstart

To run and chat with [Llama 2](https://ai.meta.com/llama), the new model by Meta:

```
ollama run llama2
```

## Model library

Jeffrey Morgan's avatar
Jeffrey Morgan committed
32
`ollama` includes a library of open-source models:
33
34
35
36
37
38
39
40
41
42

| 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` |

Jeffrey Morgan's avatar
Jeffrey Morgan committed
43
44
> Note: 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.

45
## Examples
Jeffrey Morgan's avatar
Jeffrey Morgan committed
46

47
### Run a model
48

Jeffrey Morgan's avatar
Jeffrey Morgan committed
49
```
50
51
52
ollama run llama2
>>> hi
Hello! How can I help you today?
Jeffrey Morgan's avatar
Jeffrey Morgan committed
53
54
```

Jeffrey Morgan's avatar
Jeffrey Morgan committed
55
### Create a custom model
56
57
58
59

Pull a base model:

```
Jeffrey Morgan's avatar
Jeffrey Morgan committed
60
ollama pull llama2
61
```
Jeffrey Morgan's avatar
Jeffrey Morgan committed
62

63
Create a `Modelfile`:
Jeffrey Morgan's avatar
Jeffrey Morgan committed
64

Jeffrey Morgan's avatar
Jeffrey Morgan committed
65
```
Jeffrey Morgan's avatar
Jeffrey Morgan committed
66
FROM llama2
67
68
69
70
71

# 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
72
SYSTEM """
Jeffrey Morgan's avatar
Jeffrey Morgan committed
73
You are Mario from Super Mario Bros. Answer as Mario, the assistant, only.
74
"""
Jeffrey Morgan's avatar
Jeffrey Morgan committed
75
```
Bruce MacDonald's avatar
Bruce MacDonald committed
76

77
Next, create and run the model:
Bruce MacDonald's avatar
Bruce MacDonald committed
78
79

```
80
81
82
83
ollama create mario -f ./Modelfile
ollama run mario
>>> hi
Hello! It's your friend Mario.
Bruce MacDonald's avatar
Bruce MacDonald committed
84
85
```

86
For more examples, see the [examples](./examples) directory.
Bruce MacDonald's avatar
Bruce MacDonald committed
87

Bruce MacDonald's avatar
Bruce MacDonald committed
88
For more information on creating a Modelfile, see the [Modelfile](./docs/modelfile.md) documentation.
89
90

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

92
```
Jeffrey Morgan's avatar
Jeffrey Morgan committed
93
ollama pull orca
94
```
Jeffrey Morgan's avatar
Jeffrey Morgan committed
95

Jeffrey Morgan's avatar
Jeffrey Morgan committed
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
### Listing local models

```
ollama list
```

## Model packages

### Overview

Ollama bundles model weights, configuration, and data into a single package, defined by a [Modelfile](./docs/modelfile.md).

<picture>
  <source media="(prefers-color-scheme: dark)" height="480" srcset="https://github.com/jmorganca/ollama/assets/251292/2fd96b5f-191b-45c1-9668-941cfad4eb70">
  <img alt="logo" height="480" src="https://github.com/jmorganca/ollama/assets/251292/2fd96b5f-191b-45c1-9668-941cfad4eb70">
</picture>

Jeffrey Morgan's avatar
Jeffrey Morgan committed
113
114
115
## Building

```
Michael Yang's avatar
Michael Yang committed
116
go build .
Jeffrey Morgan's avatar
Jeffrey Morgan committed
117
118
```

Jeffrey Morgan's avatar
Jeffrey Morgan committed
119
To run it start the server:
Bruce MacDonald's avatar
Bruce MacDonald committed
120

Jeffrey Morgan's avatar
Jeffrey Morgan committed
121
```
DavidZirinsky's avatar
DavidZirinsky committed
122
./ollama serve &
Jeffrey Morgan's avatar
Jeffrey Morgan committed
123
124
125
126
127
```

Finally, run a model!

```
128
./ollama run llama2
Jeffrey Morgan's avatar
Jeffrey Morgan committed
129
```
130
131
132
133
134
135
136
137
138
139

## REST API

### `POST /api/generate`

Generate text from a model.

```
curl -X POST http://localhost:11434/api/generate -d '{"model": "llama2", "prompt":"Why is the sky blue?"}'
```
140
141
142
143
144
145
146
147

### `POST /api/create`

Create a model from a `Modelfile`.

```
curl -X POST http://localhost:11434/api/create -d '{"name": "my-model", "path": "/path/to/modelfile"}'
```
Nate Sesti's avatar
Nate Sesti committed
148
149
150
151
152

## Awesome projects built with Ollama

### Continue 
Use [Continue](https://github.com/continuedev/continue) to embed Ollama inside of VS Code. The extension lets you highlight code to add to the prompt, ask questions in the sidebar, and generate code inline.