jmorganca 034fee349c llama/compat: add gemma4 clip handler (gemma4v projector)
Translates Ollama's monolithic gemma4 GGUF into the upstream gemma4v
mmproj shape so `--mmproj <same-blob>` loads alongside the text model.

KV synthesis: rewrite arch to `clip` with `clip.vision.projector_type=
gemma4v`, copy `gemma4.vision.*` → `clip.vision.*`, project
`gemma4.embedding_length` → `clip.vision.projection_dim` (= mm.input_projection
output dim). gemma4 vision uses image_mean=[0,0,0] / image_std=[1,1,1]
(the model does its own per-image normalization via v.std_bias /
v.std_scale tensors), unlike the [0.5,0.5,0.5] defaults most arches
use — inject those.

No tensor renames needed: every `v.*` and `mm.*` tensor name (incl.
v.patch_embd, v.position_embd, v.std_bias/scale, mm.input_projection,
plus the per-block ln1/ln2/attn_post_norm/ffn_post_norm/attn_q_norm/
attn_k_norm) already matches the upstream-converted reference mmproj
exactly.

F32 promote of v.patch_embd.weight (Metal IM2COL requirement, same as
gemma3 / mistral3 / deepseek-ocr).

Adds `gemma4` to the Go-side `compatClipArches` allowlist so
`ollama run gemma4 -i image.jpg ...` auto-passes the same blob as
`--mmproj`. Covers all four published sizes (E2B, E4B, 26B-A4B MoE,
31B dense).

Verified loading: 1189 tensors loaded from monolithic blob, hparams
(projector=gemma4v, n_embd=1152, n_head=16, n_ff=4304, n_layer=27,
n_merge=3, image_size=224, patch_size=16) match migration mmproj
exactly. Image encoding/decoding completes (264 vision tokens). End-
to-end testing through llama-server's chat completions surfaces a
chat-template detection issue in llama-server (Ollama's gemma4 GGUFs
ship without `tokenizer.chat_template`, so llama-server falls back to
ChatML which the model doesn't understand) — orthogonal to compat;
`ollama run` supplies the correct template via Modelfile.
2026-04-20 09:29:35 -07:00

ollama

Ollama

Start building with open models.

Download

macOS

curl -fsSL https://ollama.com/install.sh | sh

or download manually

Windows

irm https://ollama.com/install.ps1 | iex

or download manually

Linux

curl -fsSL https://ollama.com/install.sh | sh

Manual install instructions

Docker

The official Ollama Docker image ollama/ollama is available on Docker Hub.

Libraries

Community

Get started

ollama

You'll be prompted to run a model or connect Ollama to your existing agents or applications such as Claude Code, OpenClaw, OpenCode , Codex, Copilot, and more.

Coding

To launch a specific integration:

ollama launch claude

Supported integrations include Claude Code, Codex, Copilot CLI, Droid, and OpenCode.

AI assistant

Use OpenClaw to turn Ollama into a personal AI assistant across WhatsApp, Telegram, Slack, Discord, and more:

ollama launch openclaw

Chat with a model

Run and chat with Gemma 3:

ollama run gemma3

See ollama.com/library for the full list.

See the quickstart guide for more details.

REST API

Ollama has a REST API for running and managing models.

curl http://localhost:11434/api/chat -d '{
  "model": "gemma3",
  "messages": [{
    "role": "user",
    "content": "Why is the sky blue?"
  }],
  "stream": false
}'

See the API documentation for all endpoints.

Python

pip install ollama
from ollama import chat

response = chat(model='gemma3', messages=[
  {
    'role': 'user',
    'content': 'Why is the sky blue?',
  },
])
print(response.message.content)

JavaScript

npm i ollama
import ollama from "ollama";

const response = await ollama.chat({
  model: "gemma3",
  messages: [{ role: "user", content: "Why is the sky blue?" }],
});
console.log(response.message.content);

Supported backends

  • llama.cpp project founded by Georgi Gerganov.

Documentation

Community Integrations

Want to add your project? Open a pull request.

Chat Interfaces

Web

Desktop

  • Dify.AI - LLM app development platform
  • AnythingLLM - All-in-one AI app for Mac, Windows, and Linux
  • Maid - Cross-platform mobile and desktop client
  • Witsy - AI desktop app for Mac, Windows, and Linux
  • Cherry Studio - Multi-provider desktop client
  • Ollama App - Multi-platform client for desktop and mobile
  • PyGPT - AI desktop assistant for Linux, Windows, and Mac
  • Alpaca - GTK4 client for Linux and macOS
  • SwiftChat - Cross-platform including iOS, Android, and Apple Vision Pro
  • Enchanted - Native macOS and iOS client
  • RWKV-Runner - Multi-model desktop runner
  • Ollama Grid Search - Evaluate and compare models
  • macai - macOS client for Ollama and ChatGPT
  • AI Studio - Multi-provider desktop IDE
  • Reins - Parameter tuning and reasoning model support
  • ConfiChat - Privacy-focused with optional encryption
  • LLocal.in - Electron desktop client
  • MindMac - AI chat client for Mac
  • Msty - Multi-model desktop client
  • BoltAI for Mac - AI chat client for Mac
  • IntelliBar - AI-powered assistant for macOS
  • Kerlig AI - AI writing assistant for macOS
  • Hillnote - Markdown-first AI workspace
  • Perfect Memory AI - Productivity AI personalized by screen and meeting history

Mobile

SwiftChat, Enchanted, Maid, Ollama App, Reins, and ConfiChat listed above also support mobile platforms.

Code Editors & Development

Libraries & SDKs

Frameworks & Agents

RAG & Knowledge Bases

  • RAGFlow - RAG engine based on deep document understanding
  • R2R - Open-source RAG engine
  • MaxKB - Ready-to-use RAG chatbot
  • Minima - On-premises or fully local RAG
  • Chipper - AI interface with Haystack RAG
  • ARGO - RAG and deep research on Mac/Windows/Linux
  • Archyve - RAG-enabling document library
  • Casibase - AI knowledge base with RAG and SSO
  • BrainSoup - Native client with RAG and multi-agent automation

Bots & Messaging

Terminal & CLI

Productivity & Apps

Observability & Monitoring

  • Opik - Debug, evaluate, and monitor LLM applications
  • OpenLIT - OpenTelemetry-native monitoring for Ollama and GPUs
  • Lunary - LLM observability with analytics and PII masking
  • Langfuse - Open source LLM observability
  • HoneyHive - AI observability and evaluation for agents
  • MLflow Tracing - Open source LLM observability

Database & Embeddings

Infrastructure & Deployment

Cloud

Package Managers

Description
No description provided
Readme MIT 698 MiB
Latest
2026-05-07 12:46:18 -05:00
Languages
Go 83.4%
C 8.7%
TypeScript 3.8%
C++ 1.3%
CMake 0.9%
Other 1.8%