README.md 1.76 KB
Newer Older
Jeffrey Morgan's avatar
Jeffrey Morgan committed
1
2
![ollama](https://github.com/jmorganca/ollama/assets/251292/961f99bb-251a-4eec-897d-1ba99997ad0f)

Bruce MacDonald's avatar
Bruce MacDonald committed
3
# Ollama
Jeffrey Morgan's avatar
Jeffrey Morgan committed
4

Jeffrey Morgan's avatar
Jeffrey Morgan committed
5
6
7
8
9
Run large language models with `llama.cpp`.

> Note: certain models that can be run with this project are intended for research and/or non-commercial use only.

### Features
Jeffrey Morgan's avatar
Jeffrey Morgan committed
10

Jeffrey Morgan's avatar
Jeffrey Morgan committed
11
12
13
- Download and run popular large language models
- Switch between multiple models on the fly
- Hardware acceleration where available (Metal, CUDA)
Jeffrey Morgan's avatar
Go  
Jeffrey Morgan committed
14
- Fast inference server written in Go, powered by [llama.cpp](https://github.com/ggerganov/llama.cpp)
Jeffrey Morgan's avatar
Jeffrey Morgan committed
15
- REST API to use with your application (python, typescript SDKs coming soon)
Jeffrey Morgan's avatar
Jeffrey Morgan committed
16
17

## Install
Jeffrey Morgan's avatar
Jeffrey Morgan committed
18

19
- [Download](https://github.com/jmorganca/ollama/releases/latest) for macOS
Jeffrey Morgan's avatar
Jeffrey Morgan committed
20
- Download for Windows (coming soon)
Jeffrey Morgan's avatar
Jeffrey Morgan committed
21
- Docker: `docker run -p 11434:11434 ollama/ollama`
Jeffrey Morgan's avatar
Jeffrey Morgan committed
22
23
24
25
26

You can also build the [binary from source](#building).

## Quickstart

Bruce MacDonald's avatar
Bruce MacDonald committed
27
Run a fast and simple model.
28

Jeffrey Morgan's avatar
Jeffrey Morgan committed
29
```
Bruce MacDonald's avatar
Bruce MacDonald committed
30
ollama run orca
Jeffrey Morgan's avatar
Jeffrey Morgan committed
31
32
```

Jeffrey Morgan's avatar
Jeffrey Morgan committed
33
34
35
36
37
## Example models

### 💬 Chat

Have a conversation.
38

Jeffrey Morgan's avatar
Jeffrey Morgan committed
39
```
Jeffrey Morgan's avatar
Jeffrey Morgan committed
40
ollama run vicuna "Why is the sky blue?"
Jeffrey Morgan's avatar
Jeffrey Morgan committed
41
42
```

Jeffrey Morgan's avatar
Jeffrey Morgan committed
43
### 🗺️ Instructions
Jeffrey Morgan's avatar
Jeffrey Morgan committed
44

Jeffrey Morgan's avatar
Jeffrey Morgan committed
45
Ask questions. Get answers.
Jeffrey Morgan's avatar
Jeffrey Morgan committed
46
47

```
Jeffrey Morgan's avatar
Jeffrey Morgan committed
48
ollama run orca "Write an email to my boss."
Jeffrey Morgan's avatar
Jeffrey Morgan committed
49
50
```

Jeffrey Morgan's avatar
Jeffrey Morgan committed
51
52
53
### 📖 Storytelling

Venture into the unknown.
Jeffrey Morgan's avatar
Jeffrey Morgan committed
54
55

```
Jeffrey Morgan's avatar
Jeffrey Morgan committed
56
57
58
59
60
61
62
63
64
ollama run nous-hermes "Once upon a time"
```

## Advanced usage

### Run a local model

```
ollama run ~/Downloads/vicuna-7b-v1.3.ggmlv3.q4_1.bin
Jeffrey Morgan's avatar
Jeffrey Morgan committed
65
66
```

Jeffrey Morgan's avatar
Jeffrey Morgan committed
67
68
69
## Building

```
70
make
Jeffrey Morgan's avatar
Jeffrey Morgan committed
71
72
```

Jeffrey Morgan's avatar
Jeffrey Morgan committed
73
To run it start the server:
Bruce MacDonald's avatar
Bruce MacDonald committed
74

Jeffrey Morgan's avatar
Jeffrey Morgan committed
75
76
77
78
79
80
81
82
83
84
85
86
```
./ollama server &
```

Finally, run a model!

```
./ollama run ~/Downloads/vicuna-7b-v1.3.ggmlv3.q4_1.bin
```

## API Reference

Jeffrey Morgan's avatar
Jeffrey Morgan committed
87
88
89
90
91
92
93
94
95
### `POST /api/pull`

Download a model

```
curl -X POST http://localhost:11343/api/pull -d '{"model": "orca"}'
```

### `POST /api/generate`
Jeffrey Morgan's avatar
Jeffrey Morgan committed
96
97
98
99

Complete a prompt

```
Jeffrey Morgan's avatar
Jeffrey Morgan committed
100
curl -X POST http://localhost:11434/api/generate -d '{"model": "orca", "prompt": "hello!", "stream": true}'
Jeffrey Morgan's avatar
Jeffrey Morgan committed
101
```