Metadata-Version: 2.4
Name: vibe-binary
Version: 0.1.4
Summary: Библиотека бинарных алгоритмов с AI-магией
Author-email: Your Name <your.email@example.com>
License: MIT
Project-URL: Homepage, https://github.com/yourusername/vibe-binary
Classifier: Development Status :: 3 - Alpha
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: MIT License
Classifier: Programming Language :: Python :: 3
Description-Content-Type: text/markdown
Requires-Dist: requests>=2.25.0
Requires-Dist: python-dotenv>=1.0.0

# Vibe Binary 🔮

**Умная библиотека бинарных алгоритмов с нейросетью для угадывания чисел**

![Python Version](https://img.shields.io/badge/python-3.7%2B-blue)
![License](https://img.shields.io/badge/License-MIT-yellow.svg)
![PyPI](https://img.shields.io/pypi/v/vibe-binary)

## 🌟 Особенности

- **🔍 Умный бинарный поиск** с визуализацией процесса
- **🧠 Нейросеть для угадывания чисел** через OpenRouter API
- **🎯 Два режима работы**: подробный и тихий (с суффиксом `.c`)
- **🚀 Работает из коробки** - не требует API ключей для демо-режима

## 📦 Установка

```bash
pip install vibe-binary
```
⚡ Быстрый старт
Базовый бинарный поиск
```python
from vibe_binary import binary_search, binary_search_c

numbers = [5, 2, 8, 1, 9, 3, 7, 4, 6]

# С подробным выводом процесса
result = binary_search(numbers, 7, verbose=True)
# 📦 Сортируем массив...
# 🔍 Ищем 7 в массиве из 9 элементов
# Шаг 1: [0-8] mid=4 → 5
#    ➡️ Идём вправо
# Шаг 2: [5-8] mid=6 → 7
# ✅ Найдено! Индекс: 6

# Чистая версия без вывода (для продакшена)
result = binary_search_c(numbers, 7)
print(result)  # 6
```
# Угадывание чисел с нейросетью
```python
from vibe_binary import neural_guess_number, neural_guess_c

# Запуск игры с нейросетью
neural_guess_number(100)  # Угадать число от 1 до 100

# Тихая версия
neural_guess_c(50)  # Угадать число от 1 до 50
```
Пример игры:

```text
🔮 Vibe Binary с НЕЙРОСЕТЬЮ угадает число от 1 до 100!
Правила: + (мое число БОЛЬШЕ), - (мое число МЕНЬШЕ), = (угадал)
💫 Режим: НАСТОЯЩАЯ НЕЙРОСЕТЬ через API
──────────────────────────────────────────────────
🤔 Нейросеть предполагает: 50
Твой ответ (+, -, =): -
🤔 Нейросеть предполагает: 25
Твой ответ (+, -, =): +
🤔 Нейросеть предполагает: 37
Твой ответ (+, -, =): =
🎉 Нейросеть угадала за 3 попыток!
```
🛠 API Reference
Функции поиска
```binary_search(arr, target, verbose=False, auto_sort=True) ```
Бинарный поиск с визуализацией процесса.

Параметры:

arr - массив для поиска

target - искомый элемент

verbose - вывод процесса (по умолчанию False)

auto_sort - автоматическая сортировка массива (по умолчанию True)

Возвращает: индекс элемента или -1 если не найден

binary_search_c(arr, target, auto_sort=True)
Чистая версия бинарного поиска без вывода.

Функции угадывания
neural_guess_number(max_number=100, use_real_ai=True)
Угадывание числа с помощью нейросети.

Параметры:

max_number - верхняя граница диапазона (по умолчанию 100)

use_real_ai - использовать настоящую нейросеть (по умолчанию True)

neural_guess_c(max_number=100)
Чистая версия угадывания чисел.

Классы
NeuralGuesser(max_number=100, use_real_ai=True)
Класс для кастомных игр в угадывание чисел.

```python
from vibe_binary import NeuralGuesser

guesser = NeuralGuesser(max_number=1000, use_real_ai=True)
guesser.start_game()
```
🚀 Продвинутое использование
Кастомная настройка нейросети
```python
from vibe_binary import NeuralAPI

# Создание собственного подключения к API
ai = NeuralAPI()
guess = ai.ask_neural_guess([(50, '-'), (25, '+')], 100)
print(f"Следующее предположение: {guess}")
```
Отключение нейросети
```python
# Использование локального бинарного поиска вместо нейросети
neural_guess_number(100, use_real_ai=False)
```
🔧 Разработка
Установка для разработки
```bash
git clone https://github.com/yourusername/vibe-binary.git
cd vibe-binary
pip install -e .
```
Запуск тестов
```bash
python -m pytest tests/
```
🤝 Вклад в проект
Мы приветствуем вклады! Пожалуйста:

Форкните репозиторий

Создайте ветку для фичи (git checkout -b feature/amazing-feature)

Закоммитьте изменения (git commit -m 'Add amazing feature')

Запушьте в ветку (git push origin feature/amazing-feature)

Откройте Pull Request

📄 Лицензия
Этот проект распространяется под лицензией MIT. Подробнее в файле LICENSE.


### Сделано с ❤️ и бинарной магией
