openai-oxide — Rust-клиент для OpenAI API, заточенный под скорость

openai-oxide — Rust-клиент для OpenAI API, заточенный под скорость

Когда пишешь агента, который за один цикл делает 20-50 tool call'ов, каждый лишний round-trip складывается в секунды. openai-oxide решает это на уровне архитектуры.

Persistent WebSocket. Одно wss:// соединение на весь агентный цикл - никаких повторных TLS handshake'ов. На 10 sequential tool call'ах это минус 40% общего времени. Ни один другой Rust-клиент этого не умеет.

Zero-copy SSE parser. Стриминг без промежуточных аллокаций. TTFT 530ms — на уровне теоретического предела сети.

WASM first-class. Компилируется в wasm32, работает в Cloudflare Workers и браузерах. Стриминг, retry, structured outputs — всё доступно. Не polyfill, а нативная поддержка. Демо cloudflare-worker-dioxus.nameless-sunset-8f24.workers.dev

Hedged requests. Шлёт два параллельных запроса, берёт первый ответ. Стоит 2-7% лишних токенов, но P99 латентность падает на 50-96%. Идея из Google "The Tail at Scale".

Structured Outputs без бойлерплейта. Один #[derive(JsonSchema)] на struct — SDK сам генерирует strict JSON schema и парсит ответ. Та же схема работает и для response_format, и для tool definitions.

Полное покрытие API. Chat Completions, Responses API, Embeddings, Audio, Images, Files, Batches, Fine-tuning, Assistants, Vector Stores, Conversations, Videos (Sora), Realtime - 100+ методов. Параметры один в один с официальным Python SDK.

Node.js биндинг через napi-rs. Нативный addon, не чистый JS. Выигрывает у официального openai npm по тестам — structured output +22%, multi-turn +20%, TTFT +8%.

Drop-in совместимость. Для Node: меняешь require('openai') на require('openai-oxide/compat') — остальной код тот же. Для Python аналогично.

cargo add openai-oxide

npm install openai-oxide

pip install openai-oxide

Больше про агентов на канале https://t.me/life2film от основателя Ai стартапов

Начать дискуссию