Repository navigation
Open
Description
Part of #8. Expand the v1alpha1 API design introduced in PR #5 by mapping AI inference API formats to their required Praxis filters and defining the configuration needed at the AIGateway level.
Assess the proposed inbound formats from MaaS
| API | Endpoint | Status |
|---|---|---|
| OpenAI Chat Completions | /v1/chat/completions | Existing |
| OpenAI Embeddings | /v1/embeddings | Existing |
| Anthropic Messages | /v1/messages | Existing, with translation enabled |
| OpenAI Responses | /v1/responses | Proposed |
against the required upstream formats. Distinguish existing controller integrations, capabilities available in Praxis, and planned or unsupported paths.
Deliverables
- Document a mapping for each assessed client-facing/upstream format pair showing support status, required Praxis filter chain. Identify shared filters separately from format-specific requirements .
- Identify the values required by each filter set, including connection information for storage or other dependencies: endpoints, credentials via Secret references. Record which values are required, optional, or defaulted.
- Expand
AIGateway.spec.protocols.llmindocs/design/api-v1alpha1.mdwith the identified fields for formats accepted into v1alpha1.- Define omission and empty-stanza (
{}) behavior, defaults, validation, and Secret reference semantics within the existing Tenant namespace constraints. - Resolve when an empty stanza suffices and when configuration is mandatory.
- Specify required Secret keys and whether dependency credentials require Tenant authorization. Include examples and keep corresponding property names consistent in
docs/design/api.md.
- Define omission and empty-stanza (
Acceptance criteria
- Every assessed format pair has documented support status, dependencies, and configuration requirements, with a filter mapping for supported paths; unsupported combinations and translation limits are explicit.
- Each required administrator-supplied value maps to a documented API field or an existing resource field, with examples sufficient to configure the filter set without exposing raw filter chains in the AIGateway API.
- The mapping and API examples are checked against the relevant Praxis filter contracts and existing controller configuration at recorded revisions; remaining gaps, scope decisions, and deferred capabilities are explicit.
Out of scope
Implementing the generated filter chains, provisioning backing services, or adding new Praxis capabilities. Identifying a format or capability here does not automatically bring its implementation into v1alpha1 scope.
Metadata
Metadata
Assignees
Labels
No labels
Activity
maleck13 commentedon Nov 10, 2026
@derekhiggins @jland-redhat This is the list of inference APIs we are looking at. I have does this map to your expectations?
derekhiggins commentedon Nov 10, 2026
To be able to have parity with what OGX provided we'd also need the following
cc @leseb @eoinfennessy
maleck13 commentedon Nov 10, 2026
@derekhiggins I have added these to the list now.
maleck13 commentedon Nov 10, 2026
To help visualise for
FilesandVectorStores@derekhiggins What is the intention with these storage APIs. Do you expose openAI files and openAI vector to the client directly. So would they potentially need to be represented as
If we use secret types to hint at the contents we can have
s3,PostgreSQLetcmaleck13 commentedon Nov 10, 2026
Note will prob add the Files and Vector Store API as part of the next API iteration rather than this one, but good to map it out and understand the need. cc @guicassolato
derekhiggins commentedon Nov 10, 2026
Yup, files and vector API would be exposed to the client (something like what you have above should work)
jland-redhat commentedon Nov 12, 2026
Additional endpoints we are planning to support in the near future