Overview
Nebius is an OpenAI-compatible provider offering comprehensive API support. Bifrost delegates to the OpenAI implementation with standard parameter filtering. Key features:- Full OpenAI compatibility - Chat, text completion, embeddings, and responses
- Streaming support - Server-Sent Events with delta-based updates
- AI Project ID - Nebius-specific project identifier support
- Tool calling - Complete function definition and execution
- Parameter filtering - Removes unsupported OpenAI-specific fields
Supported Operations
Unsupported Operations (❌): Speech, Transcriptions, Files, and Batch are not supported by the upstream Nebius API. These return
UnsupportedOperationError.Setup & Configuration
Configure Nebius as a provider.- Web UI
- config.json
- API
- Go SDK

- Navigate to Models > Model Providers. Look for Nebius under Configured Providers. If it is missing, click on Add New Provider and select Nebius.
- Click Add Key or edit an existing key.
- Set a name for your key.
- Paste your API key directly or use an environment variable (for example,
env.NEBIUS_API_KEY). - Set Allowed Models to All Models (default) or the specific model allowlist you want this key to serve.
- Save the provider configuration.
1. Chat Completions
Request Parameters
Nebius supports all standard OpenAI chat completion parameters. For full parameter reference and behavior, see OpenAI Chat Completions.Nebius-Specific Parameters
ai_project_id (Optional): Nebius allows specifying a project ID for resource organization:- Gateway
- Go SDK
ai_project_id is appended as a query parameter to the request URL.
Filtered Parameters
Removed for Nebius compatibility:prompt_cache_key- Not supportedverbosity- Anthropic-specificstore- Not supportedservice_tier- Not supported
2. Responses API
Converted internally to Chat Completions:3. Text Completions
Nebius supports legacy text completion format:4. Embeddings
Nebius supports text embeddings:
Response returns embedding vectors with usage information.
5. Image Generation
Request Parameters
Extra Parameters (via
extra_params)
Request Conversion
- Model & Prompt:
bifrostReq.Model→req.Model(pointer),bifrostReq.Input.Prompt→req.Prompt(pointer) - Size Conversion:
params.size(WxH format like"1024x1024") is split into:width: Integer extracted from first part (e.g.,1024)height: Integer extracted from second part (e.g.,1024)
- Output Format:
params.output_format→req.ResponseExtension- Special conversion:
"jpeg"→"jpg"(Nebius uses"jpg"not"jpeg")
- Response Format:
params.response_format→req.ResponseFormat(passed directly:"url"or"b64_json") - Seed & Negative Prompt:
params.seed→req.Seed,params.negative_prompt→req.NegativePrompt(passed directly) - Num Inference Steps:
params.num_inference_steps→req.NumInferenceSteps(passed directly) - Extra Parameters:
guidance_scale→req.GuidanceScale(int pointer)ai_project_id→ Added as query parameter?ai_project_id={value}to the request URL
- Image Data: Each item in
response.data[]→ImageDatawith:url: Fromdata[].urlb64_json: Fromdata[].b64_jsonrevised_prompt: Fromdata[].revised_promptindex: Sequential index (0, 1, 2, …)
- ID:
response.id→response.ID - Provider: Set to
nebiusinExtraFields
/v1/images/generations
Streaming: Image generation streaming is not supported by Nebius.
6. List Models
Lists available Nebius models with capabilities and context lengths.Unsupported Features
Caveats
Cache Control Stripped
Cache Control Stripped
Severity: Medium
Behavior: Cache control directives are removed from messages
Impact: Prompt caching features don’t work
Code: Stripped during JSON marshaling
Parameter Filtering
Parameter Filtering
Severity: Low
Behavior: OpenAI-specific fields filtered out
Impact: prompt_cache_key, verbosity, store removed
Code: filterOpenAISpecificParameters
User Field Size Limit
User Field Size Limit
Severity: Low
Behavior: User field > 64 characters silently dropped
Impact: Longer user identifiers are lost
Code: SanitizeUserField enforces 64-char max

