ollama

dustynv/ollama Docker 镜像

GitHub仓库dusty-nv/jetson-containers中的Ollama LLM包,是为NVIDIA Jetson嵌入式平台设计的容器化解决方案,旨在简化大型语言模型(LLM)的部署与运行流程,支持多种主流LLM模型,充分利用Jetson设备的硬件加速能力,适用于边缘AI计算、智能终端开发等场景,为开发者提供便捷高效的本地化LLM部署工具。

10 次收藏下载次数: 0状态:社区镜像维护者:dustynv仓库类型:镜像最近更新:1 年前
下载命令
点击查看

Ollama 使用指南

容器信息 镜像信息 运行容器 构建容器

  • 本文介绍的 Ollama 来自 [GitHub 仓库] ,已启用 CUDA 支持(可执行文件路径 /bin/ollama)。
  • 感谢 [@remy415] 实现了 Ollama 在 Jetson 上的运行并提供 Dockerfile([PR #465] )。

Ollama 服务端部署

首先,通过以下任一方式在后台启动本地 Ollama 服务端(守护进程):

bash
# 模型缓存路径:jetson-containers/data
jetson-containers run --name ollama $(autotag ollama)

# 模型缓存路径:用户主目录
docker run --runtime docker.xuanyuan.run/nvidia -it --rm --network=host -v ~/ollama:/ollama -e OLLAMA_MODELS=/ollama dustynv/ollama:r36.2.0

服务端启动后,可在同一容器内或其他容器中运行 Ollama 客户端。ollama 容器的默认启动命令为 /start_ollama,该脚本会在后台启动服务端并释放终端控制权。服务端日志保存在挂载的 jetson-containers/data/logs 目录,方便在容器外查看。

通过环境变量 $OLLAMA_MODELS 可自定义模型下载路径(如上述示例)。默认情况下,模型会保存在 jetson-containers/data/models/ollama 目录,该路径由 jetson-containers run 自动挂载。

Ollama 客户端使用

使用 Ollama 命令行界面(CLI)加载目标[模型] (例如 mistral 7b):

场景 1:在服务端容器内运行

bash
/bin/ollama run mistral

场景 2:在新容器中运行(另一个终端)

bash
jetson-containers run $(autotag ollama) /bin/ollama run mistral

场景 3:在容器外运行客户端

可在容器外安装 arm64 架构的 Ollama 二进制文件(无需 CUDA,仅服务端依赖 CUDA):

bash
# 下载最新 arm64 版本 Ollama 到 /bin 目录
sudo wget [] ls-remote --refs --sort="version:refname" --tags [] | cut -d/ -f3- | sed 's/-rc.*//g' | tail -n1)/ollama-linux-arm64 -O /bin/ollama
sudo chmod +x /bin/ollama

# 直接运行客户端(容器外)
/bin/ollama run mistral

Open WebUI 部署

如需通过浏览器访问 Ollama,可部署 [Open WebUI] 服务:

bash
docker run -it --rm --network=host --add-host=host.docker.internal:host-gateway ***-ghcr.xuanyuan.run/open-webui/open-webui:main

部署后,在浏览器中访问 `[] WebUI 界面]

内存占用参考

模型量化方式内存占用(MB)
[TheBloke/Llama-2-7B-GGUF]llama-2-7b.Q4_K_S.gguf5,268
[TheBloke/Llama-2-13B-GGUF]llama-2-13b.Q4_K_S.gguf8,609
[TheBloke/LLaMA-30b-GGUF]llama-30b.Q4_K_S.gguf19,045
[TheBloke/Llama-2-70B-GGUF]llama-2-70b.Q4_K_S.gguf37,655
容器信息
ollama 容器说明
系统要求L4T ['>=34.1.0']
依赖项[build-essential] 、[cuda]
被依赖项[llama-index]
Dockerfile 文件[Dockerfile]
镜像版本[dustynv/ollama:r35.4.1] (2024-04-25, 5.4GB)
[dustynv/ollama:r36.2.0] (2024-04-25, 3.9GB)
容器镜像
镜像仓库/标签日期架构大小
[dustynv/ollama:r35.4.1]2024-04-25arm645.4GB
[dustynv/ollama:r36.2.0]2024-04-25arm643.9GB

容器镜像兼容同系列其他 minor 版本的 JetPack/L4T:
    • L4T R32.7 镜像可运行于其他 L4T R32.7 版本(JetPack 4.6+)
    • L4T R35.x 镜像可运行于其他 L4T R35.x 版本(JetPack 5.1+)

运行容器

可通过 [jetson-containers run] 配合 [autotag] 启动容器,或手动编写 [docker run] 命令:

CODE_TOKEN_5

[jetson-containers run] 会将参数转发给 [docker run] ,并添加默认配置(如 --runtime nvidia、挂载 /data 缓存目录、自动检测设备)。
[autotag] 会查找与当前 JetPack/L4T 版本兼容的镜像(本地镜像、远程仓库拉取或自动构建)。

如需挂载本地目录到容器,使用 -v 或 --volume 参数: CODE_TOKEN_6

如需启动容器时直接运行命令(非交互式终端): CODE_TOKEN_7

可传递任何 [docker run] 支持的参数,命令执行前会打印完整构建的命令。

构建容器

使用前文提到的 autotag 时,若本地无兼容镜像,会自动提示构建。如需手动构建,需先完成[系统环境配置] ,然后执行:

CODE_TOKEN_8

构建过程中会自动集成依赖项并进行测试。可添加 --help 参数查看构建选项:jetson-containers build ollama --help。

镜像拉取方式

您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面。

轩辕镜像加速拉取命令点我查看更多 ollama 镜像标签

docker pull docker.xuanyuan.run/dustynv/ollama:<标签>

DockerHub 原生拉取命令

docker pull dustynv/ollama:<标签>
专业版 · 高速稳定拉取镜像
50GB 仅 ¥8/年
高速镜像下载在线技术支持99.95% SLA 保障付费会员免广告