/// truth-lock · precise compatibility

Compatibility matrix

Ainfera exposes an OpenAI-compatible chat-completions endpoint — not a full OpenAI API clone. This is exactly what is and isn't supported. Machine-readable: /compatibility.json

Supported🟡 Beta Not supported⚠️ Accepted, ignored Not exposed
FeatureSurfaceStatusNotes
Chat completions (subset)POST /v1/chat/completions SupportedCore chat-completions: model, messages, max_tokens, temperature. The high-value path for agent frameworks.
Tool calls / function callingPOST /v1/chat/completions SupportedOpenAI tool-calls format. Only models declaring tool support are eligible for routing.
Structured output (response_format)POST /v1/chat/completions⚠️ Accepted, ignoredField is accepted so SDKs don't 422. Not currently translated to provider-side structured output. Track: future enhancement.
True token streaming (SSE)POST /v1/chat/completions🟡 Betastream=true returns server-sent events. Audit metadata arrives in the final chunk. Currently buffered SSE — not true per-token streaming from the provider. True token streaming is in beta.
Buffered SSEPOST /v1/chat/completions SupportedServer-sent events with audit metadata in the final chunk. Streaming UX stays intact.
Vision (image_url blocks)POST /v1/chat/completions Not supportedImage_url blocks are not accepted on the chat-completions surface. Flatten to text or use a provider-direct call for vision.
Responses APIPOST /v1/responses Not exposedNot implemented. Use /v1/chat/completions for chat-based interactions.
EmbeddingsPOST /v1/embeddings Not exposedNot exposed on the OpenAI-compatible shim. Track for future support.
Batch APIPOST /v1/batch Not exposedNot exposed. Track for future support.
Anthropic MessagesPOST /v1/messages SupportedAnthropic-compatible messages endpoint. Wire-compatible with the anthropic SDK (≥ 0.40 Python, ≥ 0.30 TypeScript).
Anthropic tool usePOST /v1/messages SupportedAnthropic tool-use blocks returned in content_blocks.
Anthropic streamingPOST /v1/messages Supportedstream=true on the Anthropic surface.
Native inferencePOST /v1/inference SupportedThe ainfera SDK's default surface. Single-shot JSON only. No streaming (returns 501).
Assistants APIPOST /v1/assistants Not exposedUse Ainfera-native agent endpoints instead.
Files API/v1/files Not exposedNot exposed.
Images (DALL-E)/v1/images Not exposedNot exposed.
Audio (Whisper / TTS)/v1/audio Not exposedNot exposed.
Moderation/v1/moderations Not exposedNot exposed.
Fine-tuning/v1/fine_tuning Not exposedNot exposed.
latency_cap_msrouting_hint on /v1/inference⚠️ Accepted, warnedAccepted on the wire. The brain drops candidates with known expected latency exceeding the cap, but most catalog models lack the AA latency metrics needed to compute it. Returns a structured warning {"warning":{"code":"latency_cap_not_enforced","policy_field":"latency_cap_ms"}} — not a guaranteed hard SLO today.
routing_preference (quality / cost)routing_hint on /v1/inference⚠️ Accepted, warnedAccepted on the wire. When AINFERA_ROUTING_PREFERENCE_LIVE is OFF (default), quality/cost dials do not change the resolved policy floor. Returns a structured warning. The `balanced` value is never inert (default behavior).
budget_cap_usdrouting_hint on /v1/inference SupportedEnforced. Candidates exceeding the budget cap are excluded from the routing set.
min_qualityrouting_hint on /v1/inference SupportedEnforced. Candidates below the minimum quality floor (κ-gated) are excluded from the routing set.
Machine-readable surface
GET /compatibility.json — JSON, no auth required. Consumed by the parity gate and linked from /llms.txt. Versioned with the API; breaking changes are semver-major.