README.md 1.8 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
Run ai models locally.
Jeffrey Morgan's avatar
Jeffrey Morgan committed
4

Jeffrey Morgan's avatar
Jeffrey Morgan committed
5
> _Note: this project is a work in progress. The features below are still in development_
Jeffrey Morgan's avatar
Jeffrey Morgan committed
6

Jeffrey Morgan's avatar
Jeffrey Morgan committed
7
**Features**
Jeffrey Morgan's avatar
Jeffrey Morgan committed
8

Jeffrey Morgan's avatar
Jeffrey Morgan committed
9
- Run models locally on macOS (Windows, Linux and other platforms coming soon)
Jeffrey Morgan's avatar
Jeffrey Morgan committed
10
- Ollama uses the fastest loader available for your platform and model (e.g. llama.cpp, Core ML and other loaders coming soon)
Jeffrey Morgan's avatar
Jeffrey Morgan committed
11
12
13
14
15
16
17
- Import models from local files
- Find and download models on Hugging Face and other sources (coming soon)
- Support for running and switching between multiple models at a time (coming soon)
- Native desktop experience (coming soon)
- Built-in memory (coming soon)

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

```
Bruce MacDonald's avatar
Bruce MacDonald committed
20
pip install ollama
Jeffrey Morgan's avatar
Jeffrey Morgan committed
21
22
```

Jeffrey Morgan's avatar
Jeffrey Morgan committed
23
## Quickstart
Jeffrey Morgan's avatar
Jeffrey Morgan committed
24
25

```
Jeffrey Morgan's avatar
Jeffrey Morgan committed
26
27
28
% ollama run huggingface.co/TheBloke/orca_mini_3B-GGML
Pulling huggingface.co/TheBloke/orca_mini_3B-GGML...
Downloading [================>          ] 66.67% (2/3) 30.2MB/s
Jeffrey Morgan's avatar
Jeffrey Morgan committed
29

Jeffrey Morgan's avatar
Jeffrey Morgan committed
30
31
32
...
...
...
Bruce MacDonald's avatar
Bruce MacDonald committed
33

Jeffrey Morgan's avatar
Jeffrey Morgan committed
34
35
36
37
38
39
40
41
> Hello

Hello, how may I help you?
```

## Python SDK

### Example
Bruce MacDonald's avatar
Bruce MacDonald committed
42
43

```python
Jeffrey Morgan's avatar
Jeffrey Morgan committed
44
import ollama
Jeffrey Morgan's avatar
Jeffrey Morgan committed
45
ollama.generate("orca-mini-3b", "hi")
Jeffrey Morgan's avatar
Jeffrey Morgan committed
46
47
```

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

Jeffrey Morgan's avatar
Jeffrey Morgan committed
50
Generate a completion
Jeffrey Morgan's avatar
Jeffrey Morgan committed
51

Bruce MacDonald's avatar
Bruce MacDonald committed
52
```python
Jeffrey Morgan's avatar
Jeffrey Morgan committed
53
ollama.generate("./llama-7b-ggml.bin", "hi")
Jeffrey Morgan's avatar
Jeffrey Morgan committed
54
55
```

Jeffrey Morgan's avatar
Jeffrey Morgan committed
56
### `ollama.models()`
Jeffrey Morgan's avatar
Jeffrey Morgan committed
57

Jeffrey Morgan's avatar
Jeffrey Morgan committed
58
List available local models
Bruce MacDonald's avatar
Bruce MacDonald committed
59
60
61

```
models = ollama.models()
Jeffrey Morgan's avatar
Jeffrey Morgan committed
62
63
```

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

Bruce MacDonald's avatar
Bruce MacDonald committed
66
Serve the ollama http server
Jeffrey Morgan's avatar
Jeffrey Morgan committed
67

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

Bruce MacDonald's avatar
Bruce MacDonald committed
70
Add a model by importing from a file
Bruce MacDonald's avatar
Bruce MacDonald committed
71
72

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

Jeffrey Morgan's avatar
Jeffrey Morgan committed
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
### `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
92
## Cooming Soon
Bruce MacDonald's avatar
Bruce MacDonald committed
93

Bruce MacDonald's avatar
Bruce MacDonald committed
94
95
96
### `ollama.pull(model)`

Download a model
Bruce MacDonald's avatar
Bruce MacDonald committed
97
98

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

Jeffrey Morgan's avatar
Jeffrey Morgan committed
102
### `ollama.search("query")`
103

Bruce MacDonald's avatar
Bruce MacDonald committed
104
Search for compatible models that Ollama can run
105

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

Bruce MacDonald's avatar
Bruce MacDonald committed
110
111
112
## Documentation

- [Development](docs/development.md)