README.md 4.06 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 Uncensored        | 7B         | 3.8GB | `ollama pull llama2-uncensored` |
| 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`     |
43

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

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

48
### Run a model
49

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

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

Pull a base model:

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

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

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

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

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

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

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

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

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

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

Jeffrey Morgan's avatar
Jeffrey Morgan committed
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
### 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
114
115
116
## Building

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

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

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

Finally, run a model!

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

## 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?"}'
```
141
142
143
144
145
146
147
148

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

Michael Chiang's avatar
Michael Chiang committed
150
## Projects built with Ollama
Nate Sesti's avatar
Nate Sesti committed
151

Michael Chiang's avatar
Michael Chiang committed
152
153
- [Continue](https://github.com/continuedev/continue) - embeds Ollama inside Visual Studio Code. The extension lets you highlight code to add to the prompt, ask questions in the sidebar, and generate code inline.
- [Discord AI Bot](https://github.com/mekb-turtle/discord-ai-bot) - interact with Ollama as a chatbot on Discord.
154
- [Raycast Ollama](https://github.com/MassimilianoPasquini97/raycast_ollama) - Raycast extension to use Ollama for local llama inference on Raycast.