跳至正文
Wener Notes

ollama

约 3 分钟阅读
    • MIT, Golang
    • 封装 llama.cpp
  • 参考
  • ollama.ai/library
  • 默认地址 localhost
  • OLLAMA_HOST
  • ~/.ollama
    • models
      • blobs/
      • manifests/registry.ollama.ai/library/gemma/latest
  • 参考
    • 使用 CF r2 存储
      • dd20bb891979d25aebc8bec07b2b3bbc.r2.cloudflarestorage.com
bash
brew install ollama # macOS brew

# 启动服务端
# OLLAMA_KV_CACHE_TYPE 0.5+
# OLLAMA_CONTEXT_LENGTH 默认 4096 也可以 /set parameter num_ctx 4096 或者 num_ctx 参数
OLLAMA_CONTEXT_LENGTH=8192 OLLAMA_FLASH_ATTENTION=1 OLLAMA_KV_CACHE_TYPE=q4_0 ollama serve

ollama run mistral # 运行模型
ollama list

# https://hub.docker.com/r/ollama/ollama
docker run --rm -it \
  -v $PWD/data:/root/.ollama \
  -p 11434:11434 \
  ollama/ollama \
  --name ollama

ollama pull qwen2:7b # 中文相对好点

# vision
ollama pull llama3.2-vision:11b
#ollama pull llama3.2-vision:90b
envdefaultdesc
OLLAMA_DEBUG显示额外的调试信息
OLLAMA_HOST127.0.0.1
Ollama 服务器的 IP 地址
OLLAMA_KEEP_ALIVE"5m"模型在内存中保持加载的持续时间
OLLAMA_MAX_LOADED_MODELS1最大加载模型数量
OLLAMA_MAX_QUEUE最大排队请求数量
OLLAMA_MODELS模型目录的路径
OLLAMA_NUM_PARALLEL1最大并行请求数量
OLLAMA_NOPRUNE启动时不修剪模型 blobs
OLLAMA_ORIGINS允许的来源列表,以逗号分隔
OLLAMA_TMPDIR临时文件的位置
OLLAMA_FLASH_ATTENTION启用 Flash Attention
OLLAMA_LLM_LIBRARY设置 LLM 库以绕过自动检测
OLLAMA_MAX_VRAM最大显存(VRAM)
OLLAMA_CONTEXT_LENGTH4096上下文长度
bash
/set verbose

/show info
# 130k
/set parameter num_ctx 131072

# 输入多行
"""
"""
  • /no_think - 禁用思考
  • /think - 启用思考
text
FROM gemma3:4b-it-qat

PARAMETER temperature 1.0
PARAMETER top_k 64
PARAMETER top_p 0.95
PARAMETER min_p 0.0
bash
ollama create gemma3-4b -f my.Modfile

API

bash
# Modesl
curl http://localhost:11434/api/tags

curl -X POST http://localhost:11434/api/generate -d '{
  "model": "qwen3:0.6b",
  "prompt":"天空是什么颜色",
  "stream": false
}'
json
{
  // 生成响应 - 单位 nanoseconds
  "total_duration": 4017602595,
  // 加载模型
  "load_duration": 1254191081,
  // 输入 token
  "prompt_eval_count": 52,
  "prompt_eval_duration": 1685919742,
  // 输出 token
  "eval_count": 19,
  "eval_duration": 1005502138
}

Vision

bash
ollama run gemma3:27b "describe this image: ./inputs/demo.jpg"
ollama run --verbose gemma3:27b "中文描述这个文件: ./inputs/demo.jpg ; 输出 JSON, 文本使用中文, 包含 tags, description, title, alt, objects:[{x,y,w,h,type,tags}]"

FAQ

限制 GPU

bash
# 得到 GPU ID
nvidia-smi -L

rocminfo
  • CUDA_VISIBLE_DEVICES
    • 逗号分割的 GPU ID 列表
    • 支持 UUID 或 数字 ID
    • 设置为 -1 表示禁用 GPU 强制 CPU
  • ROCM_VISIBLE_DEVICES

关联信息

反向链接、本文链接的其他页面和外部资料。

反向链接

  • LLM Awesome
    笔记 · jmorganca/ollama

    Engine/Framework/Service/Inference · ggerganov/llama.cpp · MIT, C++ · 有非常多的语言绑定 · 支持最好最广泛使用的推理引擎 · NVIDIA/TensorRT-LLM · Toolbox for Optimized LLM Inference

参考资料

GitHub17 条
其他外链3 条
最近更新commit 35a8ba1编辑