AI-агенты с Ollama: локальные LLM без API ключей
Ollama позволяет запускать крупные языковые модели (LLaMA 3, Mistral, Gemma, Qwen) прямо на вашем VPS без внешних API. Данные не покидают сервер, нет платы за токены, полный контроль над моделями.
Установка Ollama
curl -fsSL https://ollama.com/install.sh | sh
systemctl enable ollama
systemctl start ollama
# Скачать и запустить модель
ollama pull llama3.2:3b # 2 ГБ — для серверов с 4 ГБ RAM
ollama pull llama3.1:8b # 5 ГБ — для 8 ГБ RAM
ollama pull mistral:7b # 4 ГБ — хорошее качество
ollama pull qwen2.5-coder:7b # специализация на коде
# Запустить чат
ollama run llama3.2:3bREST API
# Chat (OpenAI-совместимый формат)
curl http://localhost:11434/v1/chat/completions -H "Content-Type: application/json" -d '{
"model": "llama3.2:3b",
"messages": [{"role": "user", "content": "Напиши bash-скрипт для бэкапа MySQL"}]
}'
# Generate (нативный API)
curl http://localhost:11434/api/generate -d '{"model": "mistral", "prompt": "Write a haiku about servers", "stream": false}'Python интеграция
pip install ollamaimport ollama
response = ollama.chat(
model='llama3.2:3b',
messages=[
{'role': 'system', 'content': 'Ты эксперт по Linux-администрированию.'},
{'role': 'user', 'content': 'Как оптимизировать nginx для высокой нагрузки?'}
]
)
print(response['message']['content'])
# Streaming
for chunk in ollama.chat(model='llama3.2:3b',
messages=[{'role': 'user', 'content': 'Расскажи о Docker'}], stream=True):
print(chunk['message']['content'], end='', flush=True)Открыть Ollama для внешнего доступа
# /etc/systemd/system/ollama.service.d/override.conf
[Service]
Environment="OLLAMA_HOST=0.0.0.0:11434"systemctl daemon-reload && systemctl restart ollamaБезопасность: Никогда не открывайте Ollama API напрямую в интернет. Используйте Nginx reverse proxy с аутентификацией или ограничьте доступ по IP через firewall.
Рекомендации по выбору модели
| Модель | VRAM/RAM | Качество | Скорость |
|---|---|---|---|
| llama3.2:3b | 2 ГБ | Хорошее | Быстро |
| llama3.1:8b | 5 ГБ | Отличное | Среднее |
| mistral:7b | 4 ГБ | Отличное | Среднее |
| qwen2.5:72b | 40 ГБ | Топ | Медленно |