README.md 1.56 KB
Newer Older
Bruce MacDonald's avatar
Bruce MacDonald committed
1
# Ollama
Jeffrey Morgan's avatar
Jeffrey Morgan committed
2

Jeffrey Morgan's avatar
Jeffrey Morgan committed
3
Ollama is a tool for running any large language model on any machine. It's designed to be easy to use and fast, supporting the largest number of models possible by using the fastest loader available for your platform and model.
Jeffrey Morgan's avatar
Jeffrey Morgan committed
4

Jeffrey Morgan's avatar
Jeffrey Morgan committed
5
> _Note: this project is a work in progress._
Jeffrey Morgan's avatar
Jeffrey Morgan committed
6
7

## Install
Jeffrey Morgan's avatar
Jeffrey Morgan committed
8
9

```
Bruce MacDonald's avatar
Bruce MacDonald committed
10
pip install ollama
Jeffrey Morgan's avatar
Jeffrey Morgan committed
11
12
```

Jeffrey Morgan's avatar
Jeffrey Morgan committed
13
## Quickstart
Jeffrey Morgan's avatar
Jeffrey Morgan committed
14

Jeffrey Morgan's avatar
Jeffrey Morgan committed
15
16
17
18
To run a model, use `ollama run`:

```
ollama run orca-mini-3b
Jeffrey Morgan's avatar
Jeffrey Morgan committed
19
20
```

Jeffrey Morgan's avatar
Jeffrey Morgan committed
21
You can also run models from hugging face:
Bruce MacDonald's avatar
Bruce MacDonald committed
22

Jeffrey Morgan's avatar
Jeffrey Morgan committed
23
24
25
```
ollama run huggingface.co/TheBloke/orca_mini_3B-GGML
```
Jeffrey Morgan's avatar
Jeffrey Morgan committed
26

Jeffrey Morgan's avatar
Jeffrey Morgan committed
27
28
29
30
Or directly via downloaded model files:

```
ollama run ~/Downloads/orca-mini-13b.ggmlv3.q4_0.bin
Jeffrey Morgan's avatar
Jeffrey Morgan committed
31
32
33
34
35
```

## Python SDK

### Example
Bruce MacDonald's avatar
Bruce MacDonald committed
36
37

```python
Jeffrey Morgan's avatar
Jeffrey Morgan committed
38
import ollama
Jeffrey Morgan's avatar
Jeffrey Morgan committed
39
ollama.generate("orca-mini-3b", "hi")
Jeffrey Morgan's avatar
Jeffrey Morgan committed
40
41
```

Jeffrey Morgan's avatar
Jeffrey Morgan committed
42
### `ollama.generate(model, message)`
Jeffrey Morgan's avatar
Jeffrey Morgan committed
43

Jeffrey Morgan's avatar
Jeffrey Morgan committed
44
Generate a completion
Jeffrey Morgan's avatar
Jeffrey Morgan committed
45

Bruce MacDonald's avatar
Bruce MacDonald committed
46
```python
Jeffrey Morgan's avatar
Jeffrey Morgan committed
47
ollama.generate("./llama-7b-ggml.bin", "hi")
Jeffrey Morgan's avatar
Jeffrey Morgan committed
48
49
```

Jeffrey Morgan's avatar
Jeffrey Morgan committed
50
### `ollama.models()`
Jeffrey Morgan's avatar
Jeffrey Morgan committed
51

Jeffrey Morgan's avatar
Jeffrey Morgan committed
52
List available local models
Bruce MacDonald's avatar
Bruce MacDonald committed
53

Jeffrey Morgan's avatar
Jeffrey Morgan committed
54
```python
Bruce MacDonald's avatar
Bruce MacDonald committed
55
models = ollama.models()
Jeffrey Morgan's avatar
Jeffrey Morgan committed
56
57
```

Jeffrey Morgan's avatar
Jeffrey Morgan committed
58
### `ollama.serve()`
Jeffrey Morgan's avatar
Jeffrey Morgan committed
59

Bruce MacDonald's avatar
Bruce MacDonald committed
60
Serve the ollama http server
Jeffrey Morgan's avatar
Jeffrey Morgan committed
61

Jeffrey Morgan's avatar
Jeffrey Morgan committed
62
63
64
65
```
ollama.serve()
```

Bruce MacDonald's avatar
Bruce MacDonald committed
66
### `ollama.add(filepath)`
Jeffrey Morgan's avatar
Jeffrey Morgan committed
67

Bruce MacDonald's avatar
Bruce MacDonald committed
68
Add a model by importing from a file
Bruce MacDonald's avatar
Bruce MacDonald committed
69
70

```python
Bruce MacDonald's avatar
Bruce MacDonald committed
71
ollama.add("./path/to/model")
Jeffrey Morgan's avatar
Jeffrey Morgan committed
72
73
```

Jeffrey Morgan's avatar
Jeffrey Morgan committed
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
### `ollama.load(model)`

Manually a model for generation

```python
ollama.load("model")
```

### `ollama.unload(model)`

Unload a model

```python
ollama.unload("model")
```

Bruce MacDonald's avatar
Bruce MacDonald committed
90
91
92
### `ollama.pull(model)`

Download a model
Bruce MacDonald's avatar
Bruce MacDonald committed
93
94

```python
Bruce MacDonald's avatar
Bruce MacDonald committed
95
ollama.pull("huggingface.co/thebloke/llama-7b-ggml")
Bruce MacDonald's avatar
Bruce MacDonald committed
96
```
Jeffrey Morgan's avatar
Jeffrey Morgan committed
97

Michael Chiang's avatar
Michael Chiang committed
98
## Coming Soon
Bruce MacDonald's avatar
Bruce MacDonald committed
99

Jeffrey Morgan's avatar
Jeffrey Morgan committed
100
### `ollama.search("query")`
101

Bruce MacDonald's avatar
Bruce MacDonald committed
102
Search for compatible models that Ollama can run
103

Bruce MacDonald's avatar
Bruce MacDonald committed
104
105
106
```python
ollama.search("llama-7b")
```
Jeffrey Morgan's avatar
Jeffrey Morgan committed
107

Bruce MacDonald's avatar
Bruce MacDonald committed
108
109
110
## Documentation

- [Development](docs/development.md)