Skip to content
Registry

provider-openai

v1.2.6

OpenAI Responses provider worker with Chat Completions compatibility; implements provider::openai::stream and provider::openai::refresh_models behind llm-router.

license: Apache-2.0chat-completionsllmopenaiproviderresponses

Install

bash
iii trigger compose::add worker=provider-openai@1.2.6

Run in your project with the iii engine running. Exact versions are immutable and digest-pinned.

Functions6

provider::openai::abort

Function

Cancel the in-flight upstream stream for a request_id (router::abort fan-out), stopping billed generation immediately.

Request
  • request_idstringrequired
Response
  • abortedbooleanrequired

provider::openai::count_tokens

Function

Count prompt tokens for {model, system_prompt?, tools?, messages} locally with the tiktoken tokenizers; never runs the model and costs nothing.

Request
  • messagesany of[]required

    Wire agent messages, the same shape `provider::openai::stream` accepts. Must be non-empty.

    any of (4)
    Variant 1
    • contentone of[]required
      Show 6 nested
      one of (6)
      Variant 1
      • textstringrequired
      • typestringrequiredenum text
      Variant 2
      • datastringrequired
      • mimestringrequired
      • typestringrequiredenum image
      Variant 3
      • signaturestring
      • textstringrequired
      • typestringrequiredenum thinking
      Variant 4
      • datastringrequired
      • typestringrequiredenum redacted_thinking
      Variant 5
      • argumentsunknownrequired
      • function_idstringrequired
      • idstringrequired
      • typestringrequiredenum function_call
      Variant 6
      • contentunknown[]required
      • function_call_idstringrequired
      • is_errorboolean
      • typestringrequiredenum function_result
    • error_kindany of
      Show 2 nested
      any of (2)
      Variant 1
      valuestringenum auth_expired, rate_limited, context_overflow, transient, permanent
      Variant 2
      valuenull
    • error_messagestring
    • modelstringrequired
    • native_stop_reasonstring
    • providerstringrequired
    • rolestringrequiredenum assistant
    • stop_reasonstringrequiredenum end, length, function_call, aborted, error
    • timestampinteger· int64required
    • usageany of
      Show 2 nested
      any of (2)
      Variant 1
      • cache_readinteger· uint64min 0
      • cache_writeinteger· uint64min 0
      • cost_usdnumber· double
      • inputinteger· uint64min 0
      • outputinteger· uint64min 0
      • reasoninginteger· uint64min 0
      Variant 2
      valuenull
    • warningsstring[]
    Variant 2
    • contentone of[]required
      Show 6 nested
      one of (6)
      Variant 1
      • textstringrequired
      • typestringrequiredenum text
      Variant 2
      • datastringrequired
      • mimestringrequired
      • typestringrequiredenum image
      Variant 3
      • signaturestring
      • textstringrequired
      • typestringrequiredenum thinking
      Variant 4
      • datastringrequired
      • typestringrequiredenum redacted_thinking
      Variant 5
      • argumentsunknownrequired
      • function_idstringrequired
      • idstringrequired
      • typestringrequiredenum function_call
      Variant 6
      • contentunknown[]required
      • function_call_idstringrequired
      • is_errorboolean
      • typestringrequiredenum function_result
    • detailsunknownrequired
    • function_call_idstringrequired
    • function_idstringrequired
    • is_errorbooleanrequired
    • rolestringrequiredenum function_result
    • timestampinteger· int64required
    Variant 3
    • contentone of[]required
      Show 6 nested
      one of (6)
      Variant 1
      • textstringrequired
      • typestringrequiredenum text
      Variant 2
      • datastringrequired
      • mimestringrequired
      • typestringrequiredenum image
      Variant 3
      • signaturestring
      • textstringrequired
      • typestringrequiredenum thinking
      Variant 4
      • datastringrequired
      • typestringrequiredenum redacted_thinking
      Variant 5
      • argumentsunknownrequired
      • function_idstringrequired
      • idstringrequired
      • typestringrequiredenum function_call
      Variant 6
      • contentunknown[]required
      • function_call_idstringrequired
      • is_errorboolean
      • typestringrequiredenum function_result
    • custom_typestringrequired
    • detailsunknown
    • displaystring
    • rolestringrequiredenum custom
    • timestampinteger· int64required
    Variant 4
    • contentone of[]required
      Show 6 nested
      one of (6)
      Variant 1
      • textstringrequired
      • typestringrequiredenum text
      Variant 2
      • datastringrequired
      • mimestringrequired
      • typestringrequiredenum image
      Variant 3
      • signaturestring
      • textstringrequired
      • typestringrequiredenum thinking
      Variant 4
      • datastringrequired
      • typestringrequiredenum redacted_thinking
      Variant 5
      • argumentsunknownrequired
      • function_idstringrequired
      • idstringrequired
      • typestringrequiredenum function_call
      Variant 6
      • contentunknown[]required
      • function_call_idstringrequired
      • is_errorboolean
      • typestringrequiredenum function_result
    • rolestringrequiredenum user

      Single-variant role tags: exact-match on deserialize, correct wire string on serialize, and they let `AgentMessage` be an untagged union.

    • timestampinteger· int64required
  • modelstringrequired

    Model id the prompt targets; selects the tokenizer (o200k_base for gpt-4o/gpt-5/o-series and anything unknown-modern, cl100k_base for gpt-3.5 and non-o gpt-4 families).

  • system_promptstring

    System prompt counted as its own wire message when present.

  • toolsobject[]

    Function invocation schemas; each serialized schema counts toward the total.

    • descriptionstringrequired
    • execution_modestring
    • labelstring
    • namestringrequired
    • parametersunknownrequired
Response
  • estimatorstringrequired

    Always `tiktoken`: a local tokenizer produced the estimate.

  • modelstringrequired
  • tokensinteger· uint64requiredmin 0

    Estimated prompt tokens for the assembled request.

provider::openai::embed

Function

Batch text embeddings via the OpenAI embeddings endpoint, using the router-resolved credential. One vector per input, order preserved. Default model text-embedding-3-small.

Request
  • inputstring[]required

    Texts to embed, one vector returned per input, order preserved.

  • modelstring

    Embedding model id; the provider default when omitted.

Response
  • embeddingsnumber[][]required

    One embedding per input, in input order.

  • modelstringrequired

provider::openai::on_router_ready

Function

Internal: router::ready subscriber that re-declares this provider and refreshes its catalog.

Request
Empty object
Response
  • okbooleanrequired

provider::openai::refresh_models

Function

Refresh the OpenAI catalog slice from GET /v1/models and reconcile it through the router; returns the model count written.

Request
Empty object
Response
  • countinteger· uintrequiredmin 0
  • okbooleanrequired

provider::openai::stream

Function

Stream an OpenAI response: resolve credentials, call the configured Responses or Chat Completions endpoint, and relay AssistantMessageEvent frames to writer_ref.

Request
  • max_output_tokensinteger· uint64min 0
  • messagesany of[]required
    any of (4)
    Variant 1
    • contentone of[]required
      Show 6 nested
      one of (6)
      Variant 1
      • textstringrequired
      • typestringrequiredenum text
      Variant 2
      • datastringrequired
      • mimestringrequired
      • typestringrequiredenum image
      Variant 3
      • signaturestring
      • textstringrequired
      • typestringrequiredenum thinking
      Variant 4
      • datastringrequired
      • typestringrequiredenum redacted_thinking
      Variant 5
      • argumentsunknownrequired
      • function_idstringrequired
      • idstringrequired
      • typestringrequiredenum function_call
      Variant 6
      • contentunknown[]required
      • function_call_idstringrequired
      • is_errorboolean
      • typestringrequiredenum function_result
    • error_kindany of
      Show 2 nested
      any of (2)
      Variant 1
      valuestringenum auth_expired, rate_limited, context_overflow, transient, permanent
      Variant 2
      valuenull
    • error_messagestring
    • modelstringrequired
    • native_stop_reasonstring
    • providerstringrequired
    • rolestringrequiredenum assistant
    • stop_reasonstringrequiredenum end, length, function_call, aborted, error
    • timestampinteger· int64required
    • usageany of
      Show 2 nested
      any of (2)
      Variant 1
      • cache_readinteger· uint64min 0
      • cache_writeinteger· uint64min 0
      • cost_usdnumber· double
      • inputinteger· uint64min 0
      • outputinteger· uint64min 0
      • reasoninginteger· uint64min 0
      Variant 2
      valuenull
    • warningsstring[]
    Variant 2
    • contentone of[]required
      Show 6 nested
      one of (6)
      Variant 1
      • textstringrequired
      • typestringrequiredenum text
      Variant 2
      • datastringrequired
      • mimestringrequired
      • typestringrequiredenum image
      Variant 3
      • signaturestring
      • textstringrequired
      • typestringrequiredenum thinking
      Variant 4
      • datastringrequired
      • typestringrequiredenum redacted_thinking
      Variant 5
      • argumentsunknownrequired
      • function_idstringrequired
      • idstringrequired
      • typestringrequiredenum function_call
      Variant 6
      • contentunknown[]required
      • function_call_idstringrequired
      • is_errorboolean
      • typestringrequiredenum function_result
    • detailsunknownrequired
    • function_call_idstringrequired
    • function_idstringrequired
    • is_errorbooleanrequired
    • rolestringrequiredenum function_result
    • timestampinteger· int64required
    Variant 3
    • contentone of[]required
      Show 6 nested
      one of (6)
      Variant 1
      • textstringrequired
      • typestringrequiredenum text
      Variant 2
      • datastringrequired
      • mimestringrequired
      • typestringrequiredenum image
      Variant 3
      • signaturestring
      • textstringrequired
      • typestringrequiredenum thinking
      Variant 4
      • datastringrequired
      • typestringrequiredenum redacted_thinking
      Variant 5
      • argumentsunknownrequired
      • function_idstringrequired
      • idstringrequired
      • typestringrequiredenum function_call
      Variant 6
      • contentunknown[]required
      • function_call_idstringrequired
      • is_errorboolean
      • typestringrequiredenum function_result
    • custom_typestringrequired
    • detailsunknown
    • displaystring
    • rolestringrequiredenum custom
    • timestampinteger· int64required
    Variant 4
    • contentone of[]required
      Show 6 nested
      one of (6)
      Variant 1
      • textstringrequired
      • typestringrequiredenum text
      Variant 2
      • datastringrequired
      • mimestringrequired
      • typestringrequiredenum image
      Variant 3
      • signaturestring
      • textstringrequired
      • typestringrequiredenum thinking
      Variant 4
      • datastringrequired
      • typestringrequiredenum redacted_thinking
      Variant 5
      • argumentsunknownrequired
      • function_idstringrequired
      • idstringrequired
      • typestringrequiredenum function_call
      Variant 6
      • contentunknown[]required
      • function_call_idstringrequired
      • is_errorboolean
      • typestringrequiredenum function_result
    • rolestringrequiredenum user

      Single-variant role tags: exact-match on deserialize, correct wire string on serialize, and they let `AgentMessage` be an untagged union.

    • timestampinteger· int64required
  • modelstringrequired
  • model_metaany of
    any of (2)
    Variant 1
    • context_windowinteger· uint64requiredmin 0
    • display_namestring
    • idstringrequired
    • input_limitinteger· uint64min 0
    • max_output_tokensinteger· uint64requiredmin 0
    • pricingany of
      Show 2 nested
      any of (2)
      Variant 1
      • cache_readnumber· double
      • cache_writenumber· double
      • inputnumber· double
      • outputnumber· double
      Variant 2
      valuenull
    • providerstringrequired
    • reasoning_effortsobject[]
      Show 2 nested
      • descriptionstring
      • effortstringrequired
    • supports_cacheboolean
    • supports_structured_outputboolean
    • supports_thinkingboolean
    • supports_toolsboolean
    • supports_visionboolean
    • supports_xhighboolean
    • thinking_budgetsobject
    Variant 2
    valuenull
  • provider_optionsunknown
  • resolution_keystring
  • response_formatany of
    any of (2)
    Variant 1
    • schemaunknown
    • typestringrequired
    Variant 2
    valuenull
  • system_promptstring
  • thinking_levelany of
    any of (2)
    Variant 1
    valuestringenum minimal, low, medium, high, xhigh
    Variant 2
    valuenull
  • toolsobject[]
    • descriptionstringrequired
    • execution_modestring
    • labelstring
    • namestringrequired
    • parametersunknownrequired
  • writer_refobjectrequired
    • access_keystringrequired
    • channel_idstringrequired
    • directionstringrequiredenum read, write
Response
  • okbooleanrequired

Triggers0

No triggers registered

Search the registry

Find workers, kits and executables, or jump to a page.