Skip to content

AI21BackendAdapter

Defined in: backend/src/providers/ai21.ts:111

Backend adapter for AI21 Labs Chat Completions API.

Features:

  • Jamba models with efficient tokenization
  • OpenAI-compatible API
  • RAG support with document parameter
  • Text-only (no vision support)
  • No function calling
  • Pricing from $0.50 per 1M tokens

new AI21BackendAdapter(config): AI21BackendAdapter

Defined in: backend/src/providers/ai21.ts:116

BackendAdapterConfig

AI21BackendAdapter

readonly metadata: AdapterMetadata

Defined in: backend/src/providers/ai21.ts:112

Adapter metadata for identification and capabilities.

BackendAdapter.metadata

estimateCost(request): Promise<number | null>

Defined in: backend/src/providers/ai21.ts:471

Estimate cost.

IRChatRequest

Promise<number | null>

BackendAdapter.estimateCost


execute(request, signal?): Promise<IRChatResponse>

Defined in: backend/src/providers/ai21.ts:246

Execute non-streaming request.

IRChatRequest

AbortSignal

Promise<IRChatResponse>

BackendAdapter.execute


executeStream(request, signal?): IRChatStream

Defined in: backend/src/providers/ai21.ts:288

Execute streaming request.

IRChatRequest

AbortSignal

IRChatStream

BackendAdapter.executeStream


fromIR(request): AI21Request

Defined in: backend/src/providers/ai21.ts:147

Convert IR to AI21 format.

IRChatRequest

AI21Request

BackendAdapter.fromIR


healthCheck(): Promise<boolean>

Defined in: backend/src/providers/ai21.ts:430

Health check.

Promise<boolean>

BackendAdapter.healthCheck


listModels(options?): Promise<ListModelsResult>

Defined in: backend/src/providers/ai21.ts:450

List available AI21 models.

Since AI21 doesn’t have a public models endpoint, this uses:

  1. Static config (config.models) - if provided
  2. Default model list - built-in list of Jamba models

ListModelsOptions

Promise<ListModelsResult>

BackendAdapter.listModels


toIR(response, originalRequest, latencyMs): IRChatResponse

Defined in: backend/src/providers/ai21.ts:192

Convert AI21 response to IR.

AI21Response

IRChatRequest

number

IRChatResponse

BackendAdapter.toIR