Skip to main content

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

Project description

🤖 offline-ai v3.0

Локальный ИИ-ассистент для терминала с умной установкой без прав администратора.

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

  • 🔒 Полностью оффлайн - работает без интернета
  • �️ Умная установка - автоматически работает без прав администратора
  • 🐧 Портативная установка - на Linux устанавливается в домашнюю папку
  • �🚀 Быстрая установка - один 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) или возможность установки в домашнюю папку (Linux)

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

  • Windows: Через winget или скачивание установщика
  • Linux: Портативная установка в ~/.local/bin (без sudo) или стандартная установка
  • 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

# Без sudo (портативная установка)
mkdir -p ~/.local/bin
curl -L https://github.com/ollama/ollama/releases/latest/download/ollama-linux-amd64 -o ~/.local/bin/ollama
chmod +x ~/.local/bin/ollama
export PATH="$HOME/.local/bin:$PATH"

# Или стандартная установка (требует sudo)
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-3.0.0.tar.gz (25.2 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-3.0.0-py3-none-any.whl (23.7 kB view details)

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for offline_ai-3.0.0.tar.gz
Algorithm Hash digest
SHA256 4e0e0e89bbed26a756b4c346e4f44c4a2492d4dfaaac45e0ce558bfc985f18c7
MD5 4387e3b37983d09e560a353744d7c588
BLAKE2b-256 69556d0ca8c7de8942d4cb92da17597dd54771acda8cad4e2392f5aac312e7ce

See more details on using hashes here.

File details

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

File metadata

  • Download URL: offline_ai-3.0.0-py3-none-any.whl
  • Upload date:
  • Size: 23.7 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-3.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 216630c4be713dfff15da3739af3c1008e008d42b3129e09bde2e2d57899a98c
MD5 a6972ffd3b7b0eaacf5cf71f8abf4c01
BLAKE2b-256 f3ac2e8570b3453afa71f2756b45a6e0328949dd057a630eff51d72469dba62e

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