Ollama 分发版
llamastack/distribution-ollama
分发版包含以下提供者配置。
API |
提供者 |
---|---|
智能体 |
|
数据集io |
|
评估 |
|
推理 |
|
安全 |
|
评分 |
|
遥测 |
|
工具运行时 |
|
向量io |
|
如果您有一台没有非常强大 GPU 的普通台式机,则应使用此分发版。当然,如果您有强大的 GPU,由于 Ollama 支持 GPU 加速,您仍然可以继续使用此分发版。
环境变量
可以配置以下环境变量
LLAMA_STACK_PORT
: Llama Stack 分发版服务器的端口 (默认:8321
)OLLAMA_URL
: Ollama 服务器的 URL (默认:http://127.0.0.1:11434
)INFERENCE_MODEL
: 加载到 Ollama 服务器的推理模型 (默认:meta-llama/Llama-3.2-3B-Instruct
)SAFETY_MODEL
: 加载到 Ollama 服务器的安全模型 (默认:meta-llama/Llama-Guard-3-1B
)
设置 Ollama 服务器
请查阅 Ollama 文档,了解如何安装和运行 Ollama。安装 Ollama 后,需要运行 ollama serve
来启动服务器。
要加载模型,可以运行
export INFERENCE_MODEL="meta-llama/Llama-3.2-3B-Instruct"
# ollama names this model differently, and we must use the ollama name when loading the model
export OLLAMA_INFERENCE_MODEL="llama3.2:3b-instruct-fp16"
ollama run $OLLAMA_INFERENCE_MODEL --keepalive 60m
如果您正在使用 Llama Stack 的安全 / 防护罩 API,您还需要拉取并运行安全模型。
export SAFETY_MODEL="meta-llama/Llama-Guard-3-1B"
# ollama names this model differently, and we must use the ollama name when loading the model
export OLLAMA_SAFETY_MODEL="llama-guard3:1b"
ollama run $OLLAMA_SAFETY_MODEL --keepalive 60m
运行 Llama Stack
现在,您已准备好以 Ollama 作为推理提供者来运行 Llama Stack。您可以通过 Conda(构建代码)或 Docker(已有预构建镜像)来完成。
通过 Docker
此方法让您可以快速开始,而无需构建分发版代码。
export LLAMA_STACK_PORT=8321
docker run \
-it \
--pull always \
-p $LLAMA_STACK_PORT:$LLAMA_STACK_PORT \
-v ~/.llama:/root/.llama \
llamastack/distribution-ollama \
--port $LLAMA_STACK_PORT \
--env INFERENCE_MODEL=$INFERENCE_MODEL \
--env OLLAMA_URL=http://host.docker.internal:11434
如果您正在使用 Llama Stack 的安全 / 防护罩 API,请使用
# You need a local checkout of llama-stack to run this, get it using
# git clone https://github.com/meta-llama/llama-stack.git
cd /path/to/llama-stack
docker run \
-it \
--pull always \
-p $LLAMA_STACK_PORT:$LLAMA_STACK_PORT \
-v ~/.llama:/root/.llama \
-v ./llama_stack/templates/ollama/run-with-safety.yaml:/root/my-run.yaml \
llamastack/distribution-ollama \
--yaml-config /root/my-run.yaml \
--port $LLAMA_STACK_PORT \
--env INFERENCE_MODEL=$INFERENCE_MODEL \
--env SAFETY_MODEL=$SAFETY_MODEL \
--env OLLAMA_URL=http://host.docker.internal:11434
通过 Conda
请确保您已执行 uv pip install llama-stack
并已安装 Llama Stack CLI。
export LLAMA_STACK_PORT=8321
llama stack build --template ollama --image-type conda
llama stack run ./run.yaml \
--port $LLAMA_STACK_PORT \
--env INFERENCE_MODEL=$INFERENCE_MODEL \
--env OLLAMA_URL=http://localhost:11434
如果您正在使用 Llama Stack 的安全 / 防护罩 API,请使用
llama stack run ./run-with-safety.yaml \
--port $LLAMA_STACK_PORT \
--env INFERENCE_MODEL=$INFERENCE_MODEL \
--env SAFETY_MODEL=$SAFETY_MODEL \
--env OLLAMA_URL=http://localhost:11434
(可选) 更新模型服务配置
注意
请查看 model_entries 以了解支持的 Ollama 模型。
使用 ollama
提供新模型服务
ollama run <model_name>
为确保模型已正确提供服务,运行 ollama ps
获取由 ollama 提供服务的模型列表。
$ ollama ps
NAME ID SIZE PROCESSOR UNTIL
llama3.2:3b-instruct-fp16 195a8c01d91e 8.6 GB 100% GPU 9 minutes from now
为验证由 ollama 提供服务的模型已正确连接到 Llama Stack 服务器
$ llama-stack-client models list
Available Models
┏━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━┳━━━━━━━━━━━━━┓
┃ model_type ┃ identifier ┃ provider_resource_id ┃ metadata ┃ provider_id ┃
┡━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━╇━━━━━━━━━━━━━┩
│ llm │ meta-llama/Llama-3.2-3B-Instruct │ llama3.2:3b-instruct-fp16 │ │ ollama │
└──────────────┴──────────────────────────────────────┴──────────────────────────────┴───────────┴─────────────┘
Total models: 1