Concluzie Cheie
Rularea Gemma 4 local durează mai puțin de 5 minute cu Ollama: instalează Ollama, rulează o singură comandă și vei avea un model AI complet capabil care rulează pe propriul tău hardware, cu zero costuri API, zero date care îți părăsesc mașina și zero restricții de utilizare sub Apache 2.0. Modelul E2B rulează pe orice laptop. Modelul 26B MoE încape pe un singur RTX 4090 și oferă o calitate care rivalizează cu modele de 10x numărul său de parametri activi.
Rulează Gemma 4 Local: Ghidul Complet
De ce să rulezi Gemma 4 local?
Înainte de a trece la configurare, iată de ce inferența locală contează în 2026:
- Confidențialitate — Datele tale nu părăsesc niciodată mașina ta. Niciun prompt trimis către servere externe. Esențial pentru cod proprietar, documente legale, date medicale sau orice informație sensibilă.
- Cost — Zero cost per token după investiția hardware unică. Utilizatorii intensivi economisesc sute de dolari pe lună comparativ cu prețurile API.
- Latență — Fără călătorii de rețea dus-întors. Modelele E2B și E4B răspund în milisecunde pe hardware modern.
- Fiabilitate — Fără limite de rată API, fără întreruperi, fără schimbări de politică ale furnizorului. Modelul tău este mereu disponibil.
- Personalizare — Fine-tune, cuantizare și modificarea modelului în mod liber sub Apache 2.0.
- Acces offline — Funcționează fără o conexiune la internet odată ce modelul este descărcat.
Gemma 4 este deosebit de bine potrivit pentru implementarea locală deoarece Google a proiectat modelele mai mici special pentru utilizarea pe dispozitive de tip edge. Modelele E2B și E4B nu sunt gândite ulterior — sunt modele de primă clasă optimizate pentru constrângerile hardware-ului local.
Cerințe Prealabile
Cerințe Hardware pe Model
| Model | RAM Minim | VRAM Recomandat | Viabil doar cu CPU? | Spațiu pe Disc |
|---|---|---|---|---|
| E2B (4-bit) | 5 GB | 4 GB | Da | ~1.5 GB |
| E4B (4-bit) | 5 GB | 4 GB | Da | ~2.8 GB |
| E4B (FP16) | 9 GB | 9 GB | Lent | ~9 GB |
| 26B MoE (4-bit) | 18 GB | 16 GB | Foarte lent | ~15 GB |
| 26B MoE (FP16) | 52 GB | 48 GB | Nu | ~52 GB |
| 31B Dense (4-bit) | 20 GB | 18 GB | Foarte lent | ~18 GB |
| 31B Dense (FP16) | 62 GB | 48 GB+ | Nu | ~62 GB |
Concluzie cheie: Dacă ai un laptop fabricat după 2022, poți rula E2B sau E4B. Dacă ai un RTX 4090 (24GB VRAM) sau un Mac din seria Apple M cu 32GB+ RAM, poți rula 26B MoE sau 31B Dense la o cuantizare de 4-bit.
Cerințe Software
- Sistem de operare: macOS, Linux sau Windows
- Ollama: Versiunea 0.6+ (descărcare de pe ollama.com)
- Drivere GPU (opțional): NVIDIA CUDA 12+ pentru GPU-uri NVIDIA, nu sunt necesare drivere suplimentare pentru Apple Silicon
Pasul 1: Instalează Ollama
macOS
Descarcă de pe ollama.com/download sau folosește Homebrew:
brew install ollama
Linux
Script de instalare pe o singură linie:
curl -fsSL https://ollama.com/install.sh | sh
Windows
Descarcă kitul de instalare de pe ollama.com/download și rulează-l. Ollama rulează ca un serviciu de fundal pe Windows.
Verifică Instalarea
ollama --version
Ar trebui să vezi ollama version 0.6.x sau o versiune superioară. Dacă vezi un număr de versiune, Ollama este instalat corect.
Sursă: Ghidul de instalare Ollama
Pasul 2: Descarcă (Pull) un model Gemma 4
Alege modelul care se potrivește cu hardware-ul tău:
Pentru Laptopuri și Sarcini Ușoare
# Cel mai mic model — rulează pe orice laptop modern (5GB RAM)
ollama pull gemma4:e2b
# Model mic cu capacități mai largi (5-9GB RAM)
ollama pull gemma4:e4b
Pentru Desktop-uri cu un GPU dedicat
# Cea mai bună eficiență — calitate de vârf la 3.8B parametri activi (18GB RAM)
ollama pull gemma4:26b-moe
# Cea mai înaltă calitate — parametri completi 31B (20GB RAM)
ollama pull gemma4:31b
Specificarea Cuantizării
În mod implicit, Ollama descarcă cuantizarea recomandată pentru fiecare model (de obicei Q4_K_M pentru un echilibru bun între calitate și dimensiune). Poți specifica diferite cuantizări:
# Calitate mai ridicată, dimensiune mai mare
ollama pull gemma4:31b-q5_K_M
# Dimensiune mai mică, calitate ușor mai scăzută
ollama pull gemma4:31b-q3_K_M
# Precizie completă (necesită mult mai multă RAM)
ollama pull gemma4:31b-fp16
Descărcarea va dura câteva minute, în funcție de conexiunea ta la internet. Dimensiunile modelelor variază de la ~1.5GB (E2B 4-bit) la ~62GB (31B FP16).
Pasul 3: Rulează Gemma 4
Chat Interactiv
ollama run gemma4:e4b
Această comandă deschide o sesiune de chat interactiv. Scrie promptul tău și apasă Enter:
>>> What are the key differences between REST and GraphQL APIs?
Modelul va răspunde direct în terminalul tău. Scrie /bye pentru a ieși.
Prompt Singur (Non-Interactiv)
echo "Explain the Builder design pattern in Python with an example" | ollama run gemma4:26b-moe
Cu Modul Thinking
Gemma 4 suportă un mod configurabil de gândire (thinking mode) pentru sarcini complexe. Activează-l prin adăugarea unui prompt de sistem:
ollama run gemma4:31b --system "Think step by step before answering. Show your reasoning process."
Pentru sarcini de matematică, logică și analiză complexă, modul thinking îmbunătățește semnificativ calitatea răspunsului. Modelul va genera peste 4,000 de tokens de raționament intern înainte de a produce răspunsul final.
Pasul 4: Folosește API-ul local
Ollama expune un API REST pe localhost:11434 care este compatibil cu formatul API OpenAI. Acest lucru înseamnă că orice instrument sau bibliotecă ce suportă API-ul OpenAI se poate conecta la instanța ta locală de Gemma 4 printr-o simplă schimbare de URL.
Testează API-ul cu curl
curl http://localhost:11434/api/generate -d '{
"model": "gemma4:26b-moe",
"prompt": "Write a Python function to parse CSV files with error handling",
"stream": false
}'
Endpoint compatibil cu OpenAI
curl http://localhost:11434/v1/chat/completions -d '{
"model": "gemma4:26b-moe",
"messages": [
{"role": "user", "content": "Explain async/await in JavaScript"}
]
}'
Sursă: Documentația API Ollama
Pasul 5: Integrează cu Aplicația Ta
Python
import requests
def ask_gemma(prompt, model="gemma4:26b-moe"):
response = requests.post(
"http://localhost:11434/api/generate",
json={
"model": model,
"prompt": prompt,
"stream": False
}
)
return response.json()["response"]
# Usage
answer = ask_gemma("What is the time complexity of merge sort?")
print(answer)
Python cu OpenAI SDK
from openai import OpenAI
# Point to local Ollama instead of OpenAI
client = OpenAI(
base_url="http://localhost:11434/v1",
api_key="ollama" # Ollama doesn't require a real API key
)
response = client.chat.completions.create(
model="gemma4:26b-moe",
messages=[
{"role": "system", "content": "You are a helpful coding assistant."},
{"role": "user", "content": "Write a React hook for debounced search"}
]
)
print(response.choices[0].message.content)
Node.js / TypeScript
const response = await fetch("http://localhost:11434/v1/chat/completions", {
method: "POST",
headers: { "Content-Type": "application/json" },
body: JSON.stringify({
model: "gemma4:26b-moe",
messages: [
{ role: "user", content: "Explain the Observer pattern with a TypeScript example" }
]
})
});
const data = await response.json();
console.log(data.choices[0].message.content);
Utilizare cu LangChain
from langchain_community.llms import Ollama
llm = Ollama(model="gemma4:26b-moe")
response = llm.invoke("Summarize the key principles of clean architecture")
print(response)
Utilizare cu LlamaIndex
from llama_index.llms.ollama import Ollama
llm = Ollama(model="gemma4:26b-moe", request_timeout=120.0)
response = llm.complete("What are the SOLID principles in software engineering?")
print(response)
Opțiuni de Cuantizare Explicate
Cuantizarea reduce dimensiunea modelului și utilizarea memoriei prin folosirea unor numere de precizie mai mică pentru a reprezenta greutățile modelului. Compromisul este între calitate și utilizarea resurselor:
| Cuantizare | Biți pe Greutate | Impact asupra Calității | Economie de Memorie | Optim Pentru |
|---|---|---|---|---|
| FP16 | 16 bits | Niciunul (calitate completă) | Referință | Servere cu VRAM suficient |
| Q8_0 | 8 bits | Neglijabil | ~50% | Inferență locală de înaltă calitate |
| Q6_K | 6 bits | Foarte minor | ~62% | Utilizare locală axată pe calitate |
| Q5_K_M | 5 bits | Minor | ~69% | Echilibru bun |
| Q4_K_M | 4 bits | Mic | ~75% | Implicit recomandat |
| Q3_K_M | 3 bits | Moderat | ~81% | Hardware limitat |
| Q2_K | 2 bits | Semnificativ | ~87% | Constrângeri extreme |
Q4_K_M este punctul optim pentru majoritatea utilizatorilor. Diferența de calitate față de FP16 este suficient de mică încât majoritatea sarcinilor produc rezultate imposibil de distins, în timp ce economiile de memorie de 75% fac diferența între "are nevoie de un server" și "rulează pe laptopul meu".
Alegerea Cuantizării Potrivite
Pentru Gemma 4 E2B/E4B: Folosește varianta implicită (Q4_K_M). Aceste modele sunt deja suficient de mici încât o cuantizare mai mare nu schimbă în mod semnificativ experiența utilizatorului.
Pentru Gemma 4 26B MoE: Q4_K_M încape în 18GB RAM, ceea ce este în limita celor 24GB VRAM ai unui RTX 4090, lăsând spațiu pentru KV cache. Dacă ai 48GB+ VRAM (A6000, GPU-uri duale), consideră Q8_0 pentru o calitate marginal mai bună.
Pentru Gemma 4 31B Dense: Q4_K_M la 20GB încape într-un RTX 4090 la limită. Q5_K_M produce rezultate ușor mai bune, dar necesită ~24GB, consumând toată memoria VRAM disponibilă. Dacă ai 32GB+ VRAM (RTX 5090, A6000), Q6_K sau Q8_0 merită upgrade-ul.
Optimizarea Performanței
Descărcarea pe GPU (GPU Offloading)
Ollama descarcă automat straturile modelului pe GPU atunci când VRAM este disponibilă. Dacă doar o parte din model încape în VRAM, Ollama îl împarte între GPU și CPU. Poți controla acest aspect:
# Forțează toate straturile pe GPU (eșuează dacă VRAM este insuficientă)
OLLAMA_NUM_GPU=999 ollama run gemma4:26b-moe
# Forțează doar CPU (util pentru testare)
OLLAMA_NUM_GPU=0 ollama run gemma4:e4b
Configurarea Ferestrei de Context
În mod implicit, Ollama folosește o fereastră de context de 2048 tokens pentru eficiență. Pentru a utiliza capacitățile complete de context ale Gemma 4:
# Setează fereastra de context la 32K tokens
ollama run gemma4:26b-moe --num-ctx 32768
# Setează fereastra de context la 128K tokens (necesită mai multă RAM)
ollama run gemma4:26b-moe --num-ctx 131072
Important: Ferestrele de context mai mari consumă mai multă RAM pentru KV cache. O fereastră de context de 128K pe modelul 31B poate necesita 8-16GB RAM suplimentară pe lângă greutățile modelului. Începe cu 32K și crește doar dacă scenariul tău de utilizare o cere.
Cereri Concurente
Ollama suportă servirea mai multor cereri simultan:
# Permite până la 4 cereri concurente
OLLAMA_NUM_PARALLEL=4 ollama serve
Fiecare cerere concurentă adaugă o supraîncărcare de memorie pentru KV cache-ul său. Pe un GPU de 24GB care rulează 26B MoE la Q4_K_M (~18GB), ai aproximativ 6GB spațiu liber — suficient pentru 2-3 cereri concurente cu contexte scurte.
Setări Keep-Alive
În mod implicit, Ollama păstrează modelele încărcate în memorie timp de 5 minute după ultima cerere. Ajustează acest lucru pentru nevoile tale:
# Păstrează modelul încărcat timp de 1 oră
OLLAMA_KEEP_ALIVE=3600 ollama serve
# Păstrează modelul încărcat pe termen nelimitat
OLLAMA_KEEP_ALIVE=-1 ollama serve
# Descarcă imediat după fiecare cerere (economisește memorie)
OLLAMA_KEEP_ALIVE=0 ollama serve
Optimizare NVIDIA RTX
NVIDIA a lansat versiuni optimizate de Gemma 4 pentru GPU-urile RTX. Aceste optimizări includ:
- Kernel-uri CUDA personalizate pentru mecanismul de atenție al Gemma 4
- Integrare TensorRT-LLM pentru inferență mai rapidă
- Suport Flash Attention pentru reducerea utilizării memoriei în timpul inferenței cu context lung
- Gestionare optimizată a KV cache pentru un flux mai bun de date
Instalarea versiunii optimizate NVIDIA a Gemma 4
Dacă ai un GPU din seria RTX 4000 sau 5000:
# Verifică-ți GPU-ul
nvidia-smi
# Descarcă versiunea optimizată NVIDIA (dacă este disponibilă în Ollama)
ollama pull gemma4:31b-nvidia
Alternativ, folosește NVIDIA AI Workbench sau TensorRT-LLM direct pentru performanță maximă. Versiunile optimizate NVIDIA pot oferi o inferență cu 30-50% mai rapidă pe GPU-urile RTX comparativ cu versiunile standard Ollama.
Benchmark-uri de Performanță în Lumea Reală
Măsurate pe configurații hardware comune:
Tokens pe Secundă (Viteza de Generare)
| Model | RTX 4090 (24GB) | RTX 3090 (24GB) | M3 Max (36GB) | Doar CPU (32GB) |
|---|---|---|---|---|
| E2B (Q4) | ~150 tok/s | ~120 tok/s | ~100 tok/s | ~30 tok/s |
| E4B (Q4) | ~100 tok/s | ~80 tok/s | ~70 tok/s | ~15 tok/s |
| 26B MoE (Q4) | ~40 tok/s | ~30 tok/s | ~25 tok/s | ~3 tok/s |
| 31B Dense (Q4) | ~30 tok/s | ~20 tok/s | ~20 tok/s | ~2 tok/s |
Context: Viteza de citire umană este de aproximativ 4-5 tokens pe secundă. Orice model care generează peste 10 tok/s se simte "instantaneu" pentru utilizarea interactivă. Modelele E2B și E4B sunt suficient de rapide pentru streaming în timp real pe aproape orice hardware.
Timp până la Primul Token (Latență)
| Model | RTX 4090 | M3 Max | Doar CPU |
|---|---|---|---|
| E2B | <100ms | <200ms | <500ms |
| E4B | <200ms | <300ms | ~1s |
| 26B MoE | ~500ms | ~1s | ~5s |
| 31B Dense | ~800ms | ~1.5s | ~8s |
Pentru aplicațiile interactive, timpul până la primul token contează mai mult decât viteza de generare. Modelele E2B și E4B încep să genereze aproape instantaneu chiar și pe CPU, făcându-le ideale pentru interfețe de chat în timp real.
Cazuri de Utilizare Comune
Asistent Local de Codare
Folosește Gemma 4 ca asistent privat de codare care nu trimite niciodată codul tău către servere externe:
ollama run gemma4:26b-moe --system "You are an expert software engineer. When given code, analyze it for bugs, suggest improvements, and explain your reasoning. Be concise and practical."
Cuplează acest lucru cu extensii VS Code precum Continue sau Twinny care suportă Ollama ca backend.
Analiza Documentelor
Procesează documente sensibile local:
echo "Analyze this contract clause and identify potential risks: [paste clause]" | ollama run gemma4:31b
Cu un context de 256K, modelul 31B poate procesa documente de până la ~750 pagini — suficient pentru majoritatea contractelor, lucrărilor de cercetare și documentației tehnice.
RAG Local (Retrieval-Augmented Generation)
Combină Gemma 4 cu o bază de date vectorială locală pentru un sistem RAG complet privat:
from langchain_community.llms import Ollama
from langchain_community.embeddings import OllamaEmbeddings
from langchain_community.vectorstores import Chroma
# Folosește Gemma 4 atât pentru embeddings cât și pentru generare
embeddings = OllamaEmbeddings(model="gemma4:e4b")
llm = Ollama(model="gemma4:26b-moe")
# Creează vector store din documentele tale
vectorstore = Chroma.from_documents(documents, embeddings)
# Interogare cu RAG
retriever = vectorstore.as_retriever()
docs = retriever.get_relevant_documents("What is our refund policy?")
context = "\n".join([doc.page_content for doc in docs])
response = llm.invoke(f"Based on this context:\n{context}\n\nAnswer: What is our refund policy?")
Construirea de Funcționalități AI în Aplicații
Pentru dezvoltatorii care construiesc aplicații cu capacități AI, rularea Gemma 4 local via API-ul Ollama este cea mai rapidă cale către un prototip funcțional. API-ul compatibil cu OpenAI înseamnă că poți începe cu Gemma 4 local pentru dezvoltare și poți trece la API-uri cloud pentru producție fără a schimba codul aplicației.
Platforme precum ZBuild pot gestiona infrastructura aplicației — frontend, backend, autentificare, bază de date — în timp ce tu te concentrezi pe stratul de integrare AI. Direcționează endpoint-ul AI al aplicației tale către localhost:11434 în timpul dezvoltării și schimbă-l cu un endpoint cloud când ești gata să scalezi.
Depanare
Erori „Out of memory”
Dacă vezi erori de memorie:
- Încearcă o cuantizare mai mică:
ollama pull gemma4:31b-q3_K_M - Redu fereastra de context:
--num-ctx 4096 - Închide alte aplicații care folosesc intensiv GPU-ul
- Treci la un model mai mic: 26B MoE oferă o calitate apropiată de 31B la un cost de memorie mai mic
Viteză Lentă de Generare
Dacă generarea este mai lentă decât te așteptai:
- Verifică utilizarea GPU-ului:
nvidia-smi(ar trebui să arate o utilizare ridicată a GPU-ului) - Asigură-te că modelul încape în întregime în VRAM — descărcarea parțială pe CPU este dramatic mai lentă
- Redu
--num-ctxpentru a elibera VRAM pentru calcul - Verifică dacă alte procese folosesc GPU-ul
Modelul Nu a Fost Găsit
Dacă ollama run gemma4:26b-moe eșuează:
# Listează modelele disponibile
ollama list
# Caută modelele Gemma 4
ollama search gemma4
# Descarcă modelul specific
ollama pull gemma4:26b-moe
Conexiunea API a fost Refuzată
Dacă aplicațiile nu se pot conecta la localhost:11434:
# Verifică dacă Ollama rulează
ollama list
# Pornește serverul Ollama manual
ollama serve
# Verifică portul
curl http://localhost:11434/api/tags
Diagramă de decizie pentru selectarea modelului
Folosește aceasta pentru a alege rapid modelul potrivit:
Ai un GPU dedicat cu 16GB+ VRAM?
- Da → Dorești calitate maximă sau eficiență maximă?
- Calitate maximă →
gemma4:31b(Q4_K_M, necesită 20GB) - Eficiență maximă →
gemma4:26b-moe(Q4_K_M, necesită 18GB)
- Calitate maximă →
- Nu → Ai 8GB+ RAM?
- Da →
gemma4:e4b(Q4_K_M, calitate mai bună) - Nu →
gemma4:e2b(Q4_K_M, rulează pe 5GB)
- Da →
Pentru majoritatea dezvoltatorilor cu un desktop modern sau un PC de gaming: Începe cu gemma4:26b-moe. Acesta oferă cel mai bun raport calitate-resurse din întreaga familie Gemma 4.
Ce Poți Construi
Cu Gemma 4 rulând local, ai un backend AI cu cost zero pentru:
- Aplicații de chat cu confidențialitate totală a conversației
- Instrumente de analiză a codului care funcționează pe baze de cod proprietare
- Fluxuri de procesare a documentelor pentru date sensibile
- Asistenți AI locali care funcționează offline
- Prototipuri de funcționalități AI înainte de a te angaja la costurile API-urilor cloud
- Modele fine-tuned pentru sarcini specifice domeniului (Apache 2.0 permite acest lucru în mod liber)
Licența Apache 2.0 înseamnă că tot ceea ce construiești este al tău — fără restricții de utilizare, fără partajarea veniturilor, fără aprobări necesare. Rulează-l local, implementează-l pe serverele tale, integrează-l în produsele tale. Acesta este aspectul unei inteligențe artificiale cu adevărat deschise.
Surse
- Gemma 4 Announcement - Google Blog
- Gemma 4 on Ollama
- Ollama Installation Guide
- Ollama API Documentation
- NVIDIA Gemma 4 RTX Optimization
- Gemma 4 Technical Report - Google DeepMind
- Gemma 4 Hugging Face Models
- Continue.dev - Local AI Code Assistant
- LangChain Ollama Integration
- Google AI for Developers - Gemma