Documentation
    Preparing search index...

    AI Adapter implementation for OpenAI and OpenAI-compatible models (DeepSeek, Qwen, Mistral, Ollama). Built with native fetch and Web Streams without external third-party SDK dependencies.

    Hierarchy (View Summary)

    Index

    Constructors

    Properties

    _apiKey: string
    _baseUrl: string
    _customHeaders: Record<string, string>
    _defaultModel: string
    _defaultResponseFormat:
        | Record<string, unknown>
        | { type: "text" | "json_object" | "json_schema" }
        | null
    _defaultTemperature: number
    _initialized: boolean = false
    _timeoutMs: number

    Methods

    • Strips optional markdown JSON codeblock fences from a response string.

      Parameters

      • rawContent: string

        Raw text output from model.

      Returns string

      Cleaned JSON text.

    • Parse an individual Server-Sent Events line and extract delta content.

      Parameters

      • line: string

        Raw SSE line string.

      Returns string | null

      Text delta string if available, or null.

    • Internal async generator parsing Server-Sent Events (SSE) stream chunks.

      Parameters

      • body: ReadableStream<Uint8Array<ArrayBufferLike>>

      Returns AsyncGenerator<string, void, unknown>

    • Internal helper to make an authorized POST request to /chat/completions.

      Parameters

      • payload: Record<string, unknown>
      • Optionalheaders: Record<string, string>
      • OptionaltimeoutMs: number

      Returns Promise<Response>

    • Generates structured data strictly conforming to a JSON schema.

      Type Parameters

      • T = unknown

      Parameters

      • prompt: unknown

        Context or instructions.

      • schema: unknown

        Target JSON schema or contract.

      • Optionaloptions: OpenAiGenerateOptions

        Generation options.

      Returns Promise<T>

      Parsed JSON object conforming to type T.

    • Sends a prompt to the OpenAI-compatible chat completions API and retrieves the response string.

      Parameters

      • prompt: string

        Text instruction or prompt query.

      • Optionaloptions: OpenAiGenerateOptions

        Execution options (model, messages, temperature, maxTokens).

      Returns Promise<string>

      Generated text from model.

    • Sends a prompt and returns an async iterable stream of generated text tokens.

      Parameters

      • prompt: string

        Text instruction or prompt query.

      • Optionaloptions: OpenAiGenerateOptions

        Execution options.

      Returns Promise<AsyncIterable<string, any, any>>

      Async iterable yielding chunks of text.

    • Initialize the adapter and validate setup.

      Returns void

    • Preset for DeepSeek API endpoint (V3 & R1).

      Parameters

      • apiKey: string

        DeepSeek API key.

      • defaultModel: string = 'deepseek-chat'

        Default model (defaults to 'deepseek-chat').

      Returns OpenAiAdapter

    • Preset for local LM Studio instance.

      Parameters

      • baseUrl: string = 'http://localhost:1234/v1'

        LM Studio endpoint URL (defaults to 'http://localhost:1234/v1').

      • defaultModel: string = 'default'

        Default model identifier.

      Returns OpenAiAdapter

    • Preset for local or on-premise Ollama instance.

      Parameters

      • baseUrl: string = 'http://localhost:11434/v1'

        Ollama endpoint URL (defaults to 'http://localhost:11434/v1').

      • defaultModel: string = 'llama3.2'

        Default model (defaults to 'llama3.2').

      Returns OpenAiAdapter

    • Preset for OpenAI official endpoint.

      Parameters

      • apiKey: string

        OpenAI API key.

      • defaultModel: string = 'gpt-4o'

        Default model (defaults to 'gpt-4o').

      Returns OpenAiAdapter

    • Preset for OpenRouter aggregator endpoint.

      Parameters

      • apiKey: string

        OpenRouter API key.

      • defaultModel: string = 'openrouter/auto'

        Default model (defaults to 'openrouter/auto').

      Returns OpenAiAdapter

    • Preset for Alibaba Qwen API endpoint (DashScope OpenAI compatible).

      Parameters

      • apiKey: string

        DashScope API key.

      • defaultModel: string = 'qwen-plus'

        Default model (defaults to 'qwen-plus').

      Returns OpenAiAdapter