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. Преимущества единого шлюза

  • Оплата в рублях: Расходы списываются с единого баланса, пополняемого через карты РФ, СБП или безналичный расчет.
  • Без иностранных прокси: Все запросы маршрутизируются напрямую на серверы без необходимости использования зарубежной инфраструктуры.
  • Отказоустойчивость: При перегрузке одного поставщика запрос автоматически подхватывается резервным узлом (выбор провайдера).

Связанные разделы документации

Рекомендуем также изучить смежные технические руководства и спецификации: