# Удаление OpenAI - Переход на OpenRouter ## ✅ Выполненные изменения Проект полностью переведён на использование OpenRouter API. Поддержка OpenAI удалена. ### Изменённые файлы #### 1. `corrector/llm_corrector.py` - ✅ Удалён импорт `from openai import OpenAI` - ✅ Удалён импорт `time` - ✅ Убран параметр `provider` из конструктора - ✅ Удалена логика выбора провайдера - ✅ Удалён метод `_call_openai()` - ✅ Переименован `_call_openai_with_retry()` в `_call_api()` - ✅ Упрощён конструктор - работает только с OpenRouter #### 2. `corrector/config.py` - ✅ Удалены все настройки OpenAI: - `OPENAI_API_KEY` - `OPENAI_MODEL` - `OPENAI_TEMPERATURE` - `OPENAI_MAX_TOKENS` - ✅ Удалён параметр `LLM_PROVIDER` - ✅ Остались только настройки OpenRouter #### 3. `requirements.txt` - ✅ Удалена зависимость `openai>=1.0.0` - ✅ Остался только `requests>=2.31.0` для OpenRouter #### 4. `corrector/.env.example` - ✅ Удалены примеры настроек OpenAI - ✅ Удалён параметр `LLM_PROVIDER` - ✅ Остались только настройки OpenRouter #### 5. `README.md` (главный) - ✅ Обновлено описание возможностей - ✅ Убраны упоминания о выборе провайдера - ✅ Удалён параметр `--llm-provider` - ✅ Убран параметр `--openai-key` #### 6. `corrector/OPENROUTER.md` - ✅ Убраны упоминания о `LLM_PROVIDER` - ✅ Удалены примеры переключения провайдера - ✅ Удалён раздел "Сравнение с OpenAI" - ✅ Упрощена документация #### 7. `CHANGELOG_OPENROUTER.md` - ✅ Убраны упоминания о выборе провайдера - ✅ Удалён раздел "Обратная совместимость" - ✅ Удалены примеры с `provider="openrouter"` - ✅ Убраны параметры `--llm-provider` #### 8. `OPENROUTER_SUMMARY.md` - ✅ Обновлено описание изменений - ✅ Убраны упоминания о поддержке двух провайдеров - ✅ Удалены примеры переключения - ✅ Упрощён раздел "Быстрый старт" #### 9. `corrector/README.md` - ✅ Обновлено название (OpenRouter вместо OpenAI) - ✅ Изменены примеры настройки API ключа - ✅ Обновлён раздел "Настройки" ## 🔧 Новая структура ### Конфигурация (.env) ```bash # OpenRouter API (единственный провайдер) OPENROUTER_API_KEY=your-key-here OPENROUTER_MODEL=google/gemini-3-flash-preview OPENROUTER_TEMPERATURE=0.1 OPENROUTER_MAX_TOKENS=4000 # Общие настройки CORRECTION_ENABLED=true SAVE_DIFF=true LOG_CORRECTIONS=true MAX_RETRIES=3 RETRY_DELAY=2 ``` ### Использование #### Python ```python from corrector import MedicalLLMCorrector from knowledge_base import MedicalTermManager # Просто создаём корректор - он автоматически использует OpenRouter term_manager = MedicalTermManager("medical_terms.txt") corrector = MedicalLLMCorrector(term_manager=term_manager) # Коррекция corrected, changes = corrector.correct_transcription(text) ``` #### CLI ```bash # Без указания провайдера - всегда OpenRouter uv run transmed --audio test.wav --llm ``` #### Curl ```bash export OPENROUTER_API_KEY="your-key" ./test_openrouter_curl.sh "Текст для обработки" ``` ## 📦 Зависимости ### До изменений ``` openai>=1.0.0 python-dotenv>=1.0.0 requests>=2.31.0 ``` ### После изменений ``` python-dotenv>=1.0.0 requests>=2.31.0 ``` ## ✨ Преимущества 1. **Упрощение** - нет выбора провайдера, всё работает из коробки 2. **Меньше зависимостей** - не требуется библиотека openai 3. **Больше моделей** - доступ к Gemini, GPT, Claude, Llama и др. 4. **Reasoning mode** - поддержка для Gemini 5. **Гибкие цены** - выбор модели по бюджету ## 🎯 Миграция для пользователей Если вы использовали OpenAI: ### Было ```bash # .env OPENAI_API_KEY=sk-... LLM_PROVIDER=openai ``` ```python corrector = MedicalLLMCorrector( term_manager=term_manager, provider="openai" ) ``` ### Стало ```bash # .env OPENROUTER_API_KEY=your-key ``` ```python corrector = MedicalLLMCorrector(term_manager=term_manager) ``` ### Шаги миграции 1. Получите ключ OpenRouter: https://openrouter.ai/keys 2. Замените в `.env`: ```bash # Удалите OPENAI_API_KEY=sk-... LLM_PROVIDER=openai # Добавьте OPENROUTER_API_KEY=your-openrouter-key ``` 3. Обновите код (уберите параметр `provider`) 4. Всё работает! ## 🚀 Доступные модели через OpenRouter - **Google Gemini** - `google/gemini-3-flash-preview` (рекомендуется) - **OpenAI GPT** - `openai/gpt-4o`, `openai/gpt-3.5-turbo` - **Anthropic Claude** - `anthropic/claude-3.5-sonnet` - **Meta Llama** - `meta-llama/llama-3.1-405b-instruct` - **Mistral** - `mistralai/mixtral-8x22b-instruct` - И многие другие! Полный список: https://openrouter.ai/models ## 📚 Документация - [Главный README](README.md) - [OpenRouter документация](corrector/OPENROUTER.md) - [Примеры Curl](CURL_EXAMPLES.md) - [Changelog](CHANGELOG_OPENROUTER.md) - [Summary](OPENROUTER_SUMMARY.md) ## ✅ Итог Проект полностью переведён на OpenRouter API. OpenAI больше не поддерживается. Это упрощает код, уменьшает зависимости и даёт доступ к большему количеству моделей!