mirror of
https://github.com/meta-llama/llama-stack.git
synced 2025-07-31 16:01:46 +00:00
remote vllm distro
This commit is contained in:
parent
ba82021d4b
commit
02c66b49fc
13 changed files with 188 additions and 18 deletions
1
distributions/ollama-gpu/build.yaml
Symbolic link
1
distributions/ollama-gpu/build.yaml
Symbolic link
|
@ -0,0 +1 @@
|
||||||
|
../../llama_stack/templates/ollama/build.yaml
|
1
distributions/remote-vllm/build.yaml
Symbolic link
1
distributions/remote-vllm/build.yaml
Symbolic link
|
@ -0,0 +1 @@
|
||||||
|
../../llama_stack/templates/ollama/build.yaml
|
30
distributions/remote-vllm/cpu/compose.yaml
Normal file
30
distributions/remote-vllm/cpu/compose.yaml
Normal file
|
@ -0,0 +1,30 @@
|
||||||
|
services:
|
||||||
|
ollama:
|
||||||
|
image: ollama/ollama:latest
|
||||||
|
network_mode: "host"
|
||||||
|
volumes:
|
||||||
|
- ollama:/root/.ollama # this solution synchronizes with the docker volume and loads the model rocket fast
|
||||||
|
ports:
|
||||||
|
- "11434:11434"
|
||||||
|
command: []
|
||||||
|
llamastack:
|
||||||
|
depends_on:
|
||||||
|
- ollama
|
||||||
|
image: llamastack/distribution-ollama
|
||||||
|
network_mode: "host"
|
||||||
|
volumes:
|
||||||
|
- ~/.llama:/root/.llama
|
||||||
|
# Link to ollama run.yaml file
|
||||||
|
- ./run.yaml:/root/my-run.yaml
|
||||||
|
ports:
|
||||||
|
- "5000:5000"
|
||||||
|
# Hack: wait for ollama server to start before starting docker
|
||||||
|
entrypoint: bash -c "sleep 60; python -m llama_stack.distribution.server.server --yaml_config /root/my-run.yaml"
|
||||||
|
deploy:
|
||||||
|
restart_policy:
|
||||||
|
condition: on-failure
|
||||||
|
delay: 3s
|
||||||
|
max_attempts: 5
|
||||||
|
window: 60s
|
||||||
|
volumes:
|
||||||
|
ollama:
|
46
distributions/remote-vllm/cpu/run.yaml
Normal file
46
distributions/remote-vllm/cpu/run.yaml
Normal file
|
@ -0,0 +1,46 @@
|
||||||
|
version: '2'
|
||||||
|
built_at: '2024-10-08T17:40:45.325529'
|
||||||
|
image_name: local
|
||||||
|
docker_image: null
|
||||||
|
conda_env: local
|
||||||
|
apis:
|
||||||
|
- shields
|
||||||
|
- agents
|
||||||
|
- models
|
||||||
|
- memory
|
||||||
|
- memory_banks
|
||||||
|
- inference
|
||||||
|
- safety
|
||||||
|
providers:
|
||||||
|
inference:
|
||||||
|
- provider_id: ollama0
|
||||||
|
provider_type: remote::ollama
|
||||||
|
config:
|
||||||
|
url: http://127.0.0.1:14343
|
||||||
|
safety:
|
||||||
|
- provider_id: meta0
|
||||||
|
provider_type: meta-reference
|
||||||
|
config:
|
||||||
|
llama_guard_shield:
|
||||||
|
model: Llama-Guard-3-1B
|
||||||
|
excluded_categories: []
|
||||||
|
disable_input_check: false
|
||||||
|
disable_output_check: false
|
||||||
|
prompt_guard_shield:
|
||||||
|
model: Prompt-Guard-86M
|
||||||
|
memory:
|
||||||
|
- provider_id: meta0
|
||||||
|
provider_type: meta-reference
|
||||||
|
config: {}
|
||||||
|
agents:
|
||||||
|
- provider_id: meta0
|
||||||
|
provider_type: meta-reference
|
||||||
|
config:
|
||||||
|
persistence_store:
|
||||||
|
namespace: null
|
||||||
|
type: sqlite
|
||||||
|
db_path: ~/.llama/runtime/kvstore.db
|
||||||
|
telemetry:
|
||||||
|
- provider_id: meta0
|
||||||
|
provider_type: meta-reference
|
||||||
|
config: {}
|
48
distributions/remote-vllm/gpu/compose.yaml
Normal file
48
distributions/remote-vllm/gpu/compose.yaml
Normal file
|
@ -0,0 +1,48 @@
|
||||||
|
services:
|
||||||
|
ollama:
|
||||||
|
image: ollama/ollama:latest
|
||||||
|
network_mode: "host"
|
||||||
|
volumes:
|
||||||
|
- ollama:/root/.ollama # this solution synchronizes with the docker volume and loads the model rocket fast
|
||||||
|
ports:
|
||||||
|
- "11434:11434"
|
||||||
|
devices:
|
||||||
|
- nvidia.com/gpu=all
|
||||||
|
environment:
|
||||||
|
- CUDA_VISIBLE_DEVICES=0
|
||||||
|
command: []
|
||||||
|
deploy:
|
||||||
|
resources:
|
||||||
|
reservations:
|
||||||
|
devices:
|
||||||
|
- driver: nvidia
|
||||||
|
# that's the closest analogue to --gpus; provide
|
||||||
|
# an integer amount of devices or 'all'
|
||||||
|
count: 1
|
||||||
|
# Devices are reserved using a list of capabilities, making
|
||||||
|
# capabilities the only required field. A device MUST
|
||||||
|
# satisfy all the requested capabilities for a successful
|
||||||
|
# reservation.
|
||||||
|
capabilities: [gpu]
|
||||||
|
runtime: nvidia
|
||||||
|
llamastack:
|
||||||
|
depends_on:
|
||||||
|
- ollama
|
||||||
|
image: llamastack/distribution-ollama
|
||||||
|
network_mode: "host"
|
||||||
|
volumes:
|
||||||
|
- ~/.llama:/root/.llama
|
||||||
|
# Link to ollama run.yaml file
|
||||||
|
- ./run.yaml:/root/llamastack-run-ollama.yaml
|
||||||
|
ports:
|
||||||
|
- "5000:5000"
|
||||||
|
# Hack: wait for ollama server to start before starting docker
|
||||||
|
entrypoint: bash -c "sleep 60; python -m llama_stack.distribution.server.server --yaml_config /root/llamastack-run-ollama.yaml"
|
||||||
|
deploy:
|
||||||
|
restart_policy:
|
||||||
|
condition: on-failure
|
||||||
|
delay: 3s
|
||||||
|
max_attempts: 5
|
||||||
|
window: 60s
|
||||||
|
volumes:
|
||||||
|
ollama:
|
46
distributions/remote-vllm/gpu/run.yaml
Normal file
46
distributions/remote-vllm/gpu/run.yaml
Normal file
|
@ -0,0 +1,46 @@
|
||||||
|
version: '2'
|
||||||
|
built_at: '2024-10-08T17:40:45.325529'
|
||||||
|
image_name: local
|
||||||
|
docker_image: null
|
||||||
|
conda_env: local
|
||||||
|
apis:
|
||||||
|
- shields
|
||||||
|
- agents
|
||||||
|
- models
|
||||||
|
- memory
|
||||||
|
- memory_banks
|
||||||
|
- inference
|
||||||
|
- safety
|
||||||
|
providers:
|
||||||
|
inference:
|
||||||
|
- provider_id: ollama0
|
||||||
|
provider_type: remote::ollama
|
||||||
|
config:
|
||||||
|
url: http://127.0.0.1:14343
|
||||||
|
safety:
|
||||||
|
- provider_id: meta0
|
||||||
|
provider_type: meta-reference
|
||||||
|
config:
|
||||||
|
llama_guard_shield:
|
||||||
|
model: Llama-Guard-3-1B
|
||||||
|
excluded_categories: []
|
||||||
|
disable_input_check: false
|
||||||
|
disable_output_check: false
|
||||||
|
prompt_guard_shield:
|
||||||
|
model: Prompt-Guard-86M
|
||||||
|
memory:
|
||||||
|
- provider_id: meta0
|
||||||
|
provider_type: meta-reference
|
||||||
|
config: {}
|
||||||
|
agents:
|
||||||
|
- provider_id: meta0
|
||||||
|
provider_type: meta-reference
|
||||||
|
config:
|
||||||
|
persistence_store:
|
||||||
|
namespace: null
|
||||||
|
type: sqlite
|
||||||
|
db_path: ~/.llama/runtime/kvstore.db
|
||||||
|
telemetry:
|
||||||
|
- provider_id: meta0
|
||||||
|
provider_type: meta-reference
|
||||||
|
config: {}
|
|
@ -7,16 +7,22 @@ The `llamastack/distribution-ollama` distribution consists of the following prov
|
||||||
| **Provider(s)** | remote::ollama | meta-reference | remote::pgvector, remote::chroma | remote::ollama | meta-reference |
|
| **Provider(s)** | remote::ollama | meta-reference | remote::pgvector, remote::chroma | remote::ollama | meta-reference |
|
||||||
|
|
||||||
|
|
||||||
### Docker: Start a Distribution (Single Node GPU)
|
### Docker: Start the Distribution (Single Node regular Desktop machine)
|
||||||
|
|
||||||
|
> [!NOTE]
|
||||||
|
> This will start an ollama server with CPU only, please see [Ollama Documentations](https://github.com/ollama/ollama) for serving models on CPU only.
|
||||||
|
|
||||||
|
```
|
||||||
|
$ cd distributions/ollama; docker compose up
|
||||||
|
```
|
||||||
|
|
||||||
|
### Docker: Start a Distribution (Single Node with nvidia GPUs)
|
||||||
|
|
||||||
> [!NOTE]
|
> [!NOTE]
|
||||||
> This assumes you have access to GPU to start a Ollama server with access to your GPU.
|
> This assumes you have access to GPU to start a Ollama server with access to your GPU.
|
||||||
|
|
||||||
```
|
```
|
||||||
$ cd distributions/ollama/gpu
|
$ cd distributions/ollama-gpu; docker compose up
|
||||||
$ ls
|
|
||||||
compose.yaml run.yaml
|
|
||||||
$ docker compose up
|
|
||||||
```
|
```
|
||||||
|
|
||||||
You will see outputs similar to following ---
|
You will see outputs similar to following ---
|
||||||
|
@ -38,18 +44,6 @@ To kill the server
|
||||||
docker compose down
|
docker compose down
|
||||||
```
|
```
|
||||||
|
|
||||||
### Docker: Start the Distribution (Single Node CPU)
|
|
||||||
|
|
||||||
> [!NOTE]
|
|
||||||
> This will start an ollama server with CPU only, please see [Ollama Documentations](https://github.com/ollama/ollama) for serving models on CPU only.
|
|
||||||
|
|
||||||
```
|
|
||||||
$ cd distributions/ollama/cpu
|
|
||||||
$ ls
|
|
||||||
compose.yaml run.yaml
|
|
||||||
$ docker compose up
|
|
||||||
```
|
|
||||||
|
|
||||||
### Conda: ollama run + llama stack run
|
### Conda: ollama run + llama stack run
|
||||||
|
|
||||||
If you wish to separately spin up a Ollama server, and connect with Llama Stack, you may use the following commands.
|
If you wish to separately spin up a Ollama server, and connect with Llama Stack, you may use the following commands.
|
||||||
|
|
|
@ -144,7 +144,11 @@ docker compose down
|
||||||
|
|
||||||
:::{tab-item} ollama
|
:::{tab-item} ollama
|
||||||
```
|
```
|
||||||
$ cd llama-stack/distributions/ollama/cpu && docker compose up
|
$ cd llama-stack/distributions/ollama && docker compose up
|
||||||
|
|
||||||
|
# OR
|
||||||
|
|
||||||
|
$ cd llama-stack/distributions/ollama-gpu && docker compose up
|
||||||
```
|
```
|
||||||
|
|
||||||
You will see outputs similar to following ---
|
You will see outputs similar to following ---
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue