development.md 861 Bytes
Newer Older
Bruce MacDonald's avatar
Bruce MacDonald committed
1
2
# Development

Bruce MacDonald's avatar
Bruce MacDonald committed
3
4
ollama is built and run using [Poetry](https://python-poetry.org/).

Bruce MacDonald's avatar
Bruce MacDonald committed
5
6
## Running

Michael Chiang's avatar
Michael Chiang committed
7
**Start backend service:**
Michael Chiang's avatar
Michael Chiang committed
8

Bruce MacDonald's avatar
Bruce MacDonald committed
9
10
11
Install dependencies:

```
Bruce MacDonald's avatar
Bruce MacDonald committed
12
poetry install --extras server
Bruce MacDonald's avatar
Bruce MacDonald committed
13
14
```

Bruce MacDonald's avatar
Bruce MacDonald committed
15
Run a server:
Bruce MacDonald's avatar
Bruce MacDonald committed
16
17

```
Bruce MacDonald's avatar
Bruce MacDonald committed
18
poetry run ollama serve
Bruce MacDonald's avatar
Bruce MacDonald committed
19
20
```

Michael Chiang's avatar
Michael Chiang committed
21
22
23
**Start frontend service:**

Install dependencies:
Bruce MacDonald's avatar
Bruce MacDonald committed
24

Michael Chiang's avatar
Michael Chiang committed
25
```
Michael Chiang's avatar
Michael Chiang committed
26
cd desktop
Michael Chiang's avatar
Michael Chiang committed
27
28
29
npm install
```

Bruce MacDonald's avatar
Bruce MacDonald committed
30
31
Run the UI:

Michael Chiang's avatar
Michael Chiang committed
32
33
34
35
```
npm start
```

Bruce MacDonald's avatar
Bruce MacDonald committed
36
37
38
39
40
41
42
43
44
45
46
47
## Building

If using Apple silicon, you need a Python version that supports arm64:

```bash
wget https://github.com/conda-forge/miniforge/releases/latest/download/Miniforge3-MacOSX-arm64.sh
bash Miniforge3-MacOSX-arm64.sh
```

Get the dependencies:

```bash
Bruce MacDonald's avatar
Bruce MacDonald committed
48
poetry install --extras server
Bruce MacDonald's avatar
Bruce MacDonald committed
49
50
51
52
53
```

Then build a binary for your current platform:

```bash
Bruce MacDonald's avatar
Bruce MacDonald committed
54
poetry build
Bruce MacDonald's avatar
Bruce MacDonald committed
55
56
57
58
59
60
61
62
```

### Building the app

```
cd desktop
npm run package
```
Bruce MacDonald's avatar
Bruce MacDonald committed
63
64
65
66
67
68
69
70

## Update requirements.txt

In the root directory, run:

```
pipreqs . --force
```