Python HTTPX и асинхронность (AsyncOpenAI)
Высокопроизводительные асинхронные вызовы нейросетей в микросервисах FastAPI, Aiohttp и Quart. Конкурентная обработка сотен одновременных запросов через шлюз Api Router.
Python Async
Base URL: https://api-router.velar.plus/v1
В асинхронных веб-фреймворках — таких как FastAPI, Aiohttp, Sanic и Starlette — блокирующие синхронные сетевые вызовы приводят к резкой деградации пропускной способности. Класс AsyncOpenAI на базе библиотеки httpx обеспечивает неблокирующую обработку сотен параллельных запросов и потоковую передачу через StreamingResponse.
1. Установка пакета
pip install openai httpx 2. Пример кода и отправка запроса
Ниже приведен готовый к запуску пример кода с правильной структурой авторизации и параметров:
import os
import asyncio
from openai import AsyncOpenAI
client = AsyncOpenAI(
base_url="https://api-router.velar.plus/v1",
api_key=os.environ.get("API_ROUTER_KEY")
)
async def ask_model(prompt: str):
response = await client.chat.completions.create(
model="openai/gpt-mini",
messages=[{"role": "user", "content": prompt}]
)
return response.choices[0].message.content
async def main():
prompts = ["Что такое GIL в Python?", "Как работает event loop?"]
tasks = [ask_model(p) for p in prompts]
results = await asyncio.gather(*tasks)
for r in results:
print("Ответ:", r[:80] + "...")
if __name__ == "__main__":
asyncio.run(main())
3. Преимущества единого шлюза
- Оплата в рублях: Расходы списываются с единого баланса, пополняемого через карты РФ, СБП или безналичный расчет.
- Без иностранных прокси: Все запросы маршрутизируются напрямую на серверы без необходимости использования зарубежной инфраструктуры.
- Отказоустойчивость: При перегрузке одного поставщика запрос автоматически подхватывается резервным узлом (выбор провайдера).
Связанные разделы документации
Рекомендуем также изучить смежные технические руководства и спецификации: