🤖 Локальный ИИ-ассистент для терминала, работающий без интернета
Project description
🤖 offline-ai
Локальный ИИ-ассистент для терминала, работающий без интернета.
✨ Особенности
- 🔒 Полностью оффлайн - работает без интернета
- 🚀 Быстрая установка - один pip install
- 💬 Удобный интерфейс - красивый терминальный интерфейс
- 🎨 Подсветка кода - автоматическая подсветка синтаксиса
- 🧠 Память разговора - ИИ помнит контекст беседы
- 📚 История разговоров - сохраняет все ваши диалоги
- ⚡ Режимы вывода - в реальном времени или с форматированием
- 🎯 Легкие модели - оптимизировано для слабых компьютеров
- ⚙️ Гибкая настройка - настраиваемые модели и параметры
🔧 Требования
- Python 3.8+
- 4GB+ RAM (рекомендуется 8GB)
- Ollama для работы с локальными моделями
📦 Установка
pip install offline-ai
🚀 Быстрый старт
🎯 Быстрая установка:
# Установить пакет
pip install offline-ai
# Автоматическая установка всего необходимого
offline-ai --setup --auto-install
Это автоматически:
- Установит Ollama (если нужно)
- Загрузит рекомендуемую модель llama3.2:3b (~2.0 GB)
- Настроит все для работы
🔧 Ручная настройка:
# Первый запуск с автоустановкой модели
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
Windows/Mac
Скачайте с ollama.ai
Linux
curl -fsSL https://ollama.ai/install.sh | sh
🐛 Решение проблем
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
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file offline_ai-1.0.0.tar.gz.
File metadata
- Download URL: offline_ai-1.0.0.tar.gz
- Upload date:
- Size: 20.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.11.6
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
4bb125a7a0f47accab8a73bd869dc11de5e316bd88e916ed50a346487df3556e
|
|
| MD5 |
d2720a8df848c354cac30defb2e410d1
|
|
| BLAKE2b-256 |
df2061f3577c79a9f4353edf2f3e313dc17f5b4f2337b6d5a3884702836c4703
|
File details
Details for the file offline_ai-1.0.0-py3-none-any.whl.
File metadata
- Download URL: offline_ai-1.0.0-py3-none-any.whl
- Upload date:
- Size: 20.3 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.11.6
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
08c02a113806ce106f0c2b4bbb444259c997a3c564ed014a15b810cc9bf16249
|
|
| MD5 |
32e08f5be73352cfa8f89522b7e8d4a0
|
|
| BLAKE2b-256 |
77b3b3a68a8c6a2c65ff6794964ed43fecee1bed4b081378ab562bc39cee4490
|