OpenAIGateway
class OpenAIGateway(apiKey: String, host: String = DEFAULT_OPENAI_HOST, engine: HttpClientEngine? = null, json: Json = DEFAULT_JSON) : LlmGateway, StreamEventsGateway
Ktor-Client backed gateway to the OpenAI chat-completions API.
Parameters
apiKey
Bearer token. Required for the public OpenAI endpoint.
host
Base URL of the OpenAI HTTP API. Default is DEFAULT_OPENAI_HOST. Override for Azure OpenAI or other compatible endpoints.
engine
Optional Ktor engine override. Tests pass a MockEngine here.
json
Json codec used for request / response (de)serialisation.
Functions
Link copied to clipboard
Link copied to clipboard
open suspend override fun complete(model: String, messages: List<LlmMessage>, tools: List<LlmTool>?, config: CompletionConfig): LlmGatewayResponse
Link copied to clipboard
open suspend override fun completeJson(model: String, messages: List<LlmMessage>, schema: JsonObject, config: CompletionConfig): JsonObject
Link copied to clipboard
open suspend override fun completeJsonResponse(model: String, messages: List<LlmMessage>, schema: JsonObject, config: CompletionConfig): LlmGatewayResponse
Link copied to clipboard
open override fun stream(model: String, messages: List<LlmMessage>, tools: List<LlmTool>?, config: CompletionConfig): Flow<GatewayStreamEvent>
Link copied to clipboard
open override fun streamEvents(model: String, messages: List<LlmMessage>, config: CompletionConfig): Flow<CompletionStreamEvent>
Streams one turn as CompletionStreamEvents for com.mojentic.llm.LlmBroker.generateStreamEvents.