# 🤖 РУКОВОДСТВО ПО LLM МОДЕЛЯМ ## 📋 ВОЗМОЖНОСТИ Система поддерживает **3 провайдера** LLM: - **OpenAI** (GPT-4o, GPT-4o-mini) - через прокси ✅ - **OpenRouter** (Claude, Gemini, и др.) - через прокси - **Ollama** (локальные модели) - без прокси Вы можете: 1. ✅ Легко переключаться между провайдерами 2. ✅ Менять модель на лету через API 3. ✅ Тестировать разные модели для чата 4. ✅ Настраивать temperature и max_tokens --- ## ⚙️ НАСТРОЙКА ### 1. Через конфигурационный файл Откройте `llm_config.py`: ```python # Выберите провайдера ACTIVE_PROVIDER = 'openai' # 'openai', 'openrouter', 'ollama' ``` **Доступные модели OpenAI:** - `gpt-4o-mini` - быстрая, дешёвая (по умолчанию) - `gpt-4o` - умная, дорогая - `gpt-4-turbo` - средняя по скорости/качеству **Доступные модели OpenRouter:** - `anthropic/claude-3-haiku` - быстрая - `anthropic/claude-3.5-sonnet` - умная - `google/gemini-flash-1.5` - дешёвая **Доступные модели Ollama:** - `llama3.2` - быстрая (3B параметров) - `llama3.1:70b` - умная (70B параметров) - `qwen2.5:14b` - хороша для анализа - `saiga_llama3` - для русского языка ### 2. Через переменные окружения ```bash # Выбор провайдера export LLM_PROVIDER=openai # Выбор модели export CHAT_MODEL=gpt-4o-mini # Параметры export LLM_TEMPERATURE=0.7 # Креативность (0.0-1.0) export LLM_MAX_TOKENS=1000 # Макс. токенов в ответе ``` ### 3. Через API на лету ```bash # Узнать текущую модель curl http://localhost:8888/api/llm/info # Получить список моделей curl http://localhost:8888/api/llm/models # Переключить модель curl -X POST http://localhost:8888/api/llm/switch \ -H "Content-Type: application/json" \ -d '{"model":"gpt-4o"}' ``` --- ## 🚀 ПРИМЕРЫ ИСПОЛЬЗОВАНИЯ ### Пример 1: OpenAI GPT-4o-mini (по умолчанию) ```bash # Уже настроено! Просто используйте curl -X POST http://localhost:8888/api/chat \ -H "Content-Type: application/json" \ -d '{"message":"Сколько отелей в Москве?"}' ``` ### Пример 2: OpenAI GPT-4o (умная модель) ```bash # Переключаемся на GPT-4o curl -X POST http://localhost:8888/api/llm/switch \ -H "Content-Type: application/json" \ -d '{"model":"gpt-4o"}' # Теперь чат использует GPT-4o curl -X POST http://localhost:8888/api/chat \ -H "Content-Type: application/json" \ -d '{"message":"Проанализируй качество сайтов отелей Чукотки"}' ``` ### Пример 3: OpenRouter с Claude ```bash # 1. Получите API ключ на openrouter.ai # 2. Добавьте в llm_config.py: # OPENROUTER_CONFIG['api_key'] = 'sk-or-v1-...' # 3. Измените провайдера в llm_config.py: # ACTIVE_PROVIDER = 'openrouter' # 4. Перезапустите веб-интерфейс: pkill -f web_interface.py cd /root/engine/public_oversight/hotels source venv/bin/activate python web_interface.py & # 5. Проверьте: curl http://localhost:8888/api/llm/info ``` ### Пример 4: Локальная Ollama ```bash # 1. Установите Ollama (если ещё нет) curl -fsSL https://ollama.com/install.sh | sh # 2. Запустите Ollama ollama serve & # 3. Скачайте модель ollama pull llama3.2 # 4. Измените llm_config.py: # ACTIVE_PROVIDER = 'ollama' # 5. Перезапустите веб-интерфейс # 6. Используйте локальную модель: curl -X POST http://localhost:8888/api/chat \ -H "Content-Type: application/json" \ -d '{"message":"Привет!"}' ``` --- ## 🎯 СРАВНЕНИЕ МОДЕЛЕЙ | Модель | Провайдер | Скорость | Качество | Цена | Через прокси | |--------|-----------|----------|----------|------|--------------| | **gpt-4o-mini** | OpenAI | ⚡⚡⚡ | ⭐⭐⭐ | 💵 | ✅ | | **gpt-4o** | OpenAI | ⚡⚡ | ⭐⭐⭐⭐⭐ | 💵💵💵 | ✅ | | **claude-3-haiku** | OpenRouter | ⚡⚡⚡ | ⭐⭐⭐⭐ | 💵 | ✅ | | **claude-3.5-sonnet** | OpenRouter | ⚡⚡ | ⭐⭐⭐⭐⭐ | 💵💵💵 | ✅ | | **llama3.2** | Ollama | ⚡⚡⚡⚡ | ⭐⭐⭐ | 🆓 | ❌ | | **llama3.1:70b** | Ollama | ⚡ | ⭐⭐⭐⭐ | 🆓 | ❌ | **Рекомендации:** - **Для чата:** gpt-4o-mini (быстро и дёшево) - **Для анализа:** gpt-4o или claude-3.5-sonnet (лучшее качество) - **Для экспериментов:** Ollama llama3.2 (бесплатно, офлайн) --- ## 🔧 ТЕСТИРОВАНИЕ МОДЕЛЕЙ ### Скрипт для сравнения Создайте `test_models.sh`: ```bash #!/bin/bash models=("gpt-4o-mini" "gpt-4o") question='{"message":"Сколько отелей в Чукотском АО имеют сайты?"}' for model in "${models[@]}"; do echo "=== Тестирую $model ===" # Переключаем модель curl -s -X POST http://localhost:8888/api/llm/switch \ -H "Content-Type: application/json" \ -d "{\"model\":\"$model\"}" # Задаём вопрос start=$(date +%s%N) response=$(curl -s -X POST http://localhost:8888/api/chat \ -H "Content-Type: application/json" \ -d "$question") end=$(date +%s%N) # Время ответа time_ms=$(( (end - start) / 1000000 )) echo "Модель: $model" echo "Время: ${time_ms}ms" echo "Ответ: $(echo $response | python3 -c 'import sys,json; print(json.load(sys.stdin)["response"][:200])')" echo "" done ``` Запустите: ```bash chmod +x test_models.sh ./test_models.sh ``` --- ## 📊 API ENDPOINTS ### GET /api/llm/info Информация о текущей модели **Ответ:** ```json { "provider": "openai", "chat_model": "gpt-4o-mini", "temperature": 0.3, "max_tokens": 800, "uses_proxy": true } ``` ### GET /api/llm/models Список доступных моделей **Ответ:** ```json { "current_provider": "openai", "current_model": "gpt-4o-mini", "models": { "fast": "gpt-4o-mini", "smart": "gpt-4o", "chat": "gpt-4o-mini" } } ``` ### POST /api/llm/switch Переключить модель **Запрос:** ```json { "model": "gpt-4o" } ``` **Ответ:** ```json { "status": "switched", "new_model": "gpt-4o", "provider": "openai" } ``` --- ## ⚠️ ВАЖНЫЕ ЗАМЕЧАНИЯ 1. **Прокси:** - OpenAI и OpenRouter работают через прокси `195.133.66.13:3128` - Ollama работает локально без прокси 2. **API ключи:** - OpenAI ключ уже настроен в `llm_config.py` - Для OpenRouter нужен свой ключ: https://openrouter.ai/keys 3. **Стоимость:** - GPT-4o-mini: ~$0.15 за 1М токенов (вход) + $0.60 (выход) - GPT-4o: ~$5.00 за 1М токенов (вход) + $15.00 (выход) - Ollama: бесплатно, но требует мощное железо 4. **Переключение модели:** - Работает без перезапуска сервера - Применяется сразу к следующему запросу - Не влияет на конфигурационный файл (изменение временное) --- ## 🎓 ДОПОЛНИТЕЛЬНЫЕ РЕСУРСЫ - **OpenAI Models:** https://platform.openai.com/docs/models - **OpenRouter:** https://openrouter.ai/models - **Ollama:** https://ollama.com/library - **Наша документация:** `/root/engine/public_oversight/hotels/QUICK_START.md` --- **Создано:** 2025-10-11 **Версия:** 1.0 **Статус:** ✅ Работает