Skip to main content

🤖 Локальный ИИ-ассистент для терминала с автоматической установкой Ollama

Project description

🤖 offline-ai

Локальный ИИ-ассистент для терминала, работающий без интернета.

✨ Особенности

  • 🔒 Полностью оффлайн - работает без интернета
  • 🚀 Быстрая установка - один pip install
  • 💬 Удобный интерфейс - красивый терминальный интерфейс
  • 🎨 Подсветка кода - автоматическая подсветка синтаксиса
  • 🧠 Память разговора - ИИ помнит контекст беседы
  • 📚 История разговоров - сохраняет все ваши диалоги
  • Режимы вывода - в реальном времени или с форматированием
  • 🎯 Легкие модели - оптимизировано для слабых компьютеров
  • ⚙️ Гибкая настройка - настраиваемые модели и параметры

🔧 Требования

  • Python 3.8+
  • 4GB+ RAM (рекомендуется 8GB)
  • 5GB+ свободного места на диске
  • Интернет для первоначальной установки (~3GB)
  • Ollama - устанавливается автоматически

📦 Установка

pip install offline-ai

💡 Важно: При первом запуске offline-ai попытается автоматически установить Ollama и загрузить модель. Это может занять несколько минут и потребует ~3GB интернет-трафика.

🚀 Быстрый старт

🎯 Быстрая установка:

# Установить пакет
pip install offline-ai

# Автоматическая установка всего необходимого
offline-ai --setup --auto-install

Это автоматически:

  • Попытается установить Ollama (если нужно)
  • Загрузит рекомендуемую модель llama3.2:3b (~2.0 GB)
  • Настроит все для работы

⚠️ Требования для автоматической установки:

  • Интернет-соединение (~3GB трафика)
  • ~5GB свободного места на диске
  • Права администратора (Windows) или sudo (Linux/Mac)

Автоматическая установка Ollama:

  • Windows: Через winget или скачивание установщика
  • Linux/Mac: Через официальный скрипт установки
  • Если автоматическая установка не сработает, будут показаны инструкции для ручной установки

🔧 Ручная настройка:

# Первый запуск с автоустановкой модели
offline-ai --setup --auto-install

# Или просто запустите - настройка произойдет автоматически
offline-ai

💬 Использование:

# Интерактивный режим
offline-ai

# Быстрый вопрос
offline-ai ask "Привет, как дела?"

📖 Использование

Основные команды

# Интерактивный режим
offline-ai

# Задать вопрос
offline-ai ask "Объясни мне что такое Python"

# Показать историю
offline-ai history

# Очистить историю
offline-ai history --clear

# Управление настройками
offline-ai config context on     # включить память разговора
offline-ai config context off    # выключить память разговора
offline-ai config context status # показать статус памяти

offline-ai config stream on      # режим вывода в реальном времени
offline-ai config stream off     # режим ожидания полного ответа
offline-ai config stream status  # показать статус режима вывода

# Задать вопрос без контекста
offline-ai ask "Привет!" --no-context

# Управление моделями
offline-ai models                 # показать установленные модели
offline-ai models --recommended   # показать рекомендуемые модели
offline-ai models --demo          # загрузить рекомендуемую модель
offline-ai models --pull gemma2:2b # загрузить конкретную модель
offline-ai models --use gemma2:2b  # установить модель по умолчанию

# Показать статус системы
offline-ai status

Интерактивный режим

В интерактивном режиме доступны команды:

  • exit или quit - выход
  • history - показать историю
  • clear - очистить экран
  • context on/off - включить/выключить память разговора
  • stream on/off - режим вывода в реальном времени
  • reset - очистить память разговора

🧠 Память разговора: ИИ помнит предыдущие сообщения и может отвечать в контексте беседы.

🎨 Подсветка кода

offline-ai автоматически подсвечивает код в ответах ИИ:

  • Блоки кода в тройных кавычках с указанием языка
  • Инлайн код в одинарных кавычках
  • Нумерация строк для больших блоков кода
  • Цветовые темы (по умолчанию Monokai)

Пример:

Пользователь: Покажи пример функции на Python
ИИ: Вот простая функция:

```python
def hello_world(name):
    print(f"Привет, {name}!")
    return True

Эта функция принимает name и выводит приветствие.


## 🎯 Рекомендуемые модели

Для компьютеров с 8GB RAM:

| Модель | Размер | Контекст | Оптимально | Описание |
|--------|--------|----------|------------|----------|
| **llama3.2:3b** | ~2.0 GB | 128K | 8 сообщений | 🏆 Лучшее качество и производительность |
| **phi3:mini** | ~2.3 GB | 128K | 6 сообщений | От Microsoft, отличная для кода |
| **qwen2.5:3b** | ~2.0 GB | 32K | 8 сообщений | Новая модель от Alibaba, очень умная |
| **gemma2:2b** | ~1.4 GB | 8K | 6 сообщений | Компактная от Google |
| **llama3.2:1b** | ~1.3 GB | 128K | 4 сообщения | Для слабых ПК |

### 🏆 Рекомендуется **llama3.2:3b**
- Отличное соотношение качества и размера (~2.0 GB)
- Превосходное понимание русского языка
- Быстрая работа на Core i5 + 8GB RAM
- Хорошо работает с контекстом разговора

## ⚙️ Конфигурация

Файл конфигурации: `~/.offline-ai/config.yaml`

```yaml
ollama:
  base_url: "http://localhost:11434"
  model: "llama3.2:3b"
  timeout: 30

ui:
  max_history: 100
  show_timestamps: true
  color_scheme: "auto"

models:
  recommended:
    - "llama3.2:3b"
    - "phi3:mini" 
    - "gemma2:2b"
  auto_download: true

🔧 Установка Ollama

💡 offline-ai попытается установить Ollama автоматически при первом запуске!

Если автоматическая установка не сработала:

Windows/Mac

Скачайте с ollama.ai

Linux

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

Через пакетные менеджеры:

# Windows
winget install Ollama.Ollama

# macOS
brew install ollama

# Arch Linux
yay -S ollama

🐛 Решение проблем

Автоматическая установка не работает

# Установите Ollama вручную:
# Windows: winget install Ollama.Ollama
# Linux/Mac: curl -fsSL https://ollama.ai/install.sh | sh

# Затем запустите настройку:
offline-ai --setup

Ollama не запускается

# Запустите вручную
ollama serve

# Проверьте статус
offline-ai status

Модель не найдена

# Загрузите модель
offline-ai models --pull llama3.2:3b

# Проверьте доступные модели
offline-ai models

Мало памяти

Используйте более легкие модели:

offline-ai models --pull gemma2:2b
offline-ai models --use gemma2:2b

📝 Лицензия

MIT License

🤝 Вклад в проект

Приветствуются pull requests и issues!

📞 Поддержка

Если у вас есть вопросы или проблемы, создайте issue в репозитории.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

offline_ai-2.0.0.tar.gz (22.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

offline_ai-2.0.0-py3-none-any.whl (21.5 kB view details)

Uploaded Python 3

File details

Details for the file offline_ai-2.0.0.tar.gz.

File metadata

  • Download URL: offline_ai-2.0.0.tar.gz
  • Upload date:
  • Size: 22.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.11.6

File hashes

Hashes for offline_ai-2.0.0.tar.gz
Algorithm Hash digest
SHA256 5ae3daf00f1445a53988b3da96ead2e723b2b5386f27ac429e88e5639763a11c
MD5 5961d62f68a5a169e3e1e5cd67b3dfe3
BLAKE2b-256 c882978783f60bc14ad7aa845788d5e0d8aa38180adce72b7f6ed2eb329c1a56

See more details on using hashes here.

File details

Details for the file offline_ai-2.0.0-py3-none-any.whl.

File metadata

  • Download URL: offline_ai-2.0.0-py3-none-any.whl
  • Upload date:
  • Size: 21.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.11.6

File hashes

Hashes for offline_ai-2.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 f596cf015288473c9fa759e39dc5d7ff086b7f44864a76e80cd7138be08a6efb
MD5 78d4e478a359507766e91feb02c3cc34
BLAKE2b-256 01f306c3378dd05bf594141fb63cb580e871fa52ee1cce74180a485912fd8b6d

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page