# Вопрос: HTTP/2 из Python к aillm.ru ## Контекст Flask-приложение в контейнере `python:3.12-slim`, деплоится через облачную платформу. Нужно отправлять промпты к LLM API: `https://api.aillm.ru/v1/chat/completions` (ключ: `sk-ucI5YvOticoOQ9Kuj5K9mQ`, модель: `gpt-oss-120b`). ## Проблема `api.aillm.ru` за ddos-guard, который **требует HTTP/2 от облачных IP**. С локальной машины работает любой HTTP-клиент (requests, curl без --http2), но из облачного контейнера — только HTTP/2. Что пробовали, что НЕ сработало: - `requests` — HTTP/1.1, ddos-guard возвращает ложный 401 - `httpx[http2]` в requirements.txt — платформа не парсит `[http2]`, h2 не ставится - `curl` через subprocess — curl не установлен в slim-контейнере, apt недоступен - свой HTTP/2 клиент на h2+socket — слишком сложно, заказчик против ## Вопрос **Как в Python из slim-контейнера сделать HTTP/2 POST-запрос к aillm.ru?** Требования: 1. Никакого apt/curl — только pip 2. Просто, без велосипедов на сокетах 3. Работает в python:3.12-slim 4. Ключ передаётся как `Authorization: Bearer sk-ucI5YvOticoOQ9Kuj5K9mQ` 5. Тело: JSON с model, messages, max_tokens, temperature Доступные модели на aillm.ru: `gpt-oss-120b`, `qwen3.6-27b-fp8`, `qwen3-6-27b-fp8-opt`, `whisper-large-v3-turbo`. ## Для справки В Node.js это работает одной строкой: ```js await fetch('https://api.aillm.ru/v1/chat/completions', { method: 'POST', headers: { Authorization: `Bearer ${KEY}`, 'Content-Type': 'application/json' }, body: JSON.stringify({ model: 'gpt-oss-120b', messages: [...] }) }); ``` Нужен такой же простой способ в Python.