For AI agents: a documentation index is available at the root level at /llms.txt and /llms-full.txt. Append /llms.txt to any URL for a page-level index, or .md for the markdown version of any page.
DocumentationAPI ReferenceSelf HostModel CardsClient LibrariesIntegrationsDeveloper ToolsChangelog
DocumentationAPI ReferenceSelf HostModel CardsClient LibrariesIntegrationsDeveloper ToolsChangelog
  • Getting Started
    • Introduction
    • Models
    • Authentication
  • Text to Speech (Lightning)
    • Quickstart
    • Overview
    • Sync & Async
    • Streaming
    • Pronunciation Dictionaries
    • Voices & Languages
    • HTTP vs Streaming vs WebSockets
  • Speech to Text (Pulse)
    • Quickstart
    • Overview
  • LLM (Electron)
    • Quickstart
    • Overview
    • Chat Completions
    • Streaming
    • Tool / Function Calling
    • Prefix Caching
    • Supported Parameters
    • Migrate from OpenAI
    • Best Practices
  • Cookbooks
    • Speech to Text
    • Text to Speech
    • Voice Agent (Electron + Pulse + Lightning)
  • Voice Cloning
    • Instant Clone (UI)
    • Instant Clone (API)
    • Instant Clone (Python SDK)
    • Delete Cloned Voice
  • Best Practices
    • Voice Cloning Best Practices
    • TTS Best Practices
  • Troubleshooting
    • Error reference
LogoLogo
Voice AgentsModels
Voice AgentsModels
On this page
  • Passthrough — works as OpenAI documents
  • Explicitly rejected
  • Schema hard limits
  • Response object — Electron extensions
  • Differences from OpenAI
LLM (Electron)

Supported Parameters

||View as Markdown|
Was this page helpful?
Previous

Prefix Caching

Next

Migrate from OpenAI

Built with

Electron implements the OpenAI Chat Completions wire format. Most request fields pass through to the model verbatim. This page is the authoritative list of which fields are supported, which are explicitly rejected, and which carry Electron-specific semantics.

Passthrough — works as OpenAI documents

FieldNotes
modelMust be "electron".
messagesStandard array of {role, content, tool_calls?, tool_call_id?}. Roles: system, user, assistant, tool. Max 200 messages per request.
temperature0.0 and up. Standard OpenAI semantics.
top_p0.0–1.0. Standard nucleus sampling.
max_tokensCaps output. Combined input + output context ceiling: 32,768 tokens.
streamWhen true, response is SSE. See Streaming.
stream_options.include_usageStrongly recommended with stream: true. Server appends a final usage chunk.
stopString or array of strings (up to 4).
seedBest-effort determinism.
response_format{"type":"text"} (default) or {"type":"json_object"}.
toolsStandard OpenAI tools array. Max 64 entries. See Tool Calling.
tool_choice"auto", "required", "none", or {"type":"function","function":{"name":"…"}}.
logit_biasPer-token-id biases ({"<token_id>": <bias>}).
logprobsBoolean.
top_logprobs0–20. Requires logprobs: true.
presence_penalty-2.0 to 2.0.
frequency_penalty-2.0 to 2.0.
userArbitrary opaque end-user identifier — useful for your own logs; not interpreted by Electron.

Unrecognized fields are accepted by the schema and forwarded to the model. They may be ignored if the model doesn’t recognize them.

Explicitly rejected

These return HTTP 400 with invalid_request_error:

FieldReason
n > 1Cost amplification with no use case in v1. Use multiple separate requests if you need multiple completions.
prompt_logprobsResponse-size amplification with no billing impact.

Schema hard limits

LimitValue
Max messages per request200
Max tools per request64
Max combined context (input + output)32,768 tokens
Max stop sequences4
Max top_logprobs20

Exceeding any of these returns HTTP 400. The error.message will name the offending field.

Response object — Electron extensions

Beyond the standard OpenAI response shape, Electron returns these additional fields:

PathDescription
usage.prompt_tokens_details.cached_tokensSubset of prompt_tokens served from prefix cache. Billed at the discounted rate. See Prefix Caching.
HTTP header X-Request-IdUnique request identifier. Echo this in support tickets so we can find the trace.

For tool calls, Electron’s assistant message also typically includes a short filler phrase in content alongside tool_calls — see Tool Calling: the filler-phrase pattern.

Differences from OpenAI

OpenAIElectron
Endpoint path/v1/chat/completions/waves/v1/chat/completions
model value"gpt-4o", "gpt-4-turbo", etc."electron"
Auth headerAuthorization: Bearer sk-…Authorization: Bearer sk_… (Smallest API key)
Multi-completion nSupported (up to 128)Rejected — n=1 only
prompt_logprobsSupported on some modelsRejected
content when tool calls presentnullOften a natural-language filler (see Tool Calling)
PricingPer model, variesFlat: 0.40/0.40 / 0.40/0.10 / $1.60 per 1M (input / cached input / output)

Everything else — request shape, response shape, streaming format, error envelope — matches OpenAI’s. See Migrate from OpenAI for the side-by-side code diff.