Provider: AI21 Labs

Call AI21 Labs models through Respan Gateway with unified logs, cost, and latency.
This page is for Respan LLM Gateway users.

Use Respan Gateway to call AI21 Labs models (jamba-1.5-large, jamba-1.5-mini, jamba-mini, and the rest) while keeping unified observability (logs, cost, latency, reliability) in Respan.

Quick setup

1

Get a Respan API key

Sign up and create a key on the API keys page.

Send your first request

Pick the integration that matches your stack. The base URL is https://api.respan.ai/api and the only key needed is your RESPAN_API_KEY.

Point the official AI21 Python SDK at the Respan gateway by overriding api_host.

Python
1from ai21 import AI21Client
2from ai21.models.chat import ChatMessage
3
4client = AI21Client(
5 api_key="YOUR_RESPAN_API_KEY",
6 api_host="https://api.respan.ai/api",
7)
8
9response = client.chat.completions.create(
10 model="jamba-1.5-large",
11 messages=[ChatMessage(role="user", content="Hello, AI21!")],
12)
13print(response.choices[0].message.content)

More integrations

AI21 Labs models work with every Respan gateway integration:

Switch models

Change the model parameter to call any supported model through the same client. Use the ai21/ prefix to disambiguate when routing across providers. Browse the full list on the Models page.

1client.chat.completions.create(model="ai21/jamba-1.5-large", messages=messages)
2client.chat.completions.create(model="ai21/jamba-1.5-mini", messages=messages)
3client.chat.completions.create(model="ai21/jamba-mini", messages=messages)
4client.chat.completions.create(model="openai/gpt-5.5", messages=messages)
5client.chat.completions.create(model="anthropic/claude-sonnet-4-5", messages=messages)

Use your own AI21 Labs key (BYOK)

Credits are the default path. If you’d rather bill AI21 directly, attach your own provider key.

1

Open Providers

Go to the Providers page.

2

Add AI21 Labs

Select AI21 Labs and paste your ai21labs.api_key.

3

Load balancing (Optional)

Add multiple credential sets and use Load balancing weight to distribute traffic across them.

Override credentials per model (Optional)

Use credential_override when one model on a request should use a different AI21 key than the default.

1{
2 "customer_credentials": {
3 "ai21labs": { "api_key": "YOUR_AI21LABS_API_KEY" }
4 },
5 "credential_override": {
6 "ai21/jamba-mini": { "api_key": "ANOTHER_AI21LABS_API_KEY" }
7 }
8}

Log without proxying (Optional)

Already calling AI21 directly? Send logs to Respan asynchronously to track cost, latency, and performance for those external calls.

1import requests
2
3requests.post(
4 "https://api.respan.ai/api/request-logs/create/",
5 headers={
6 "Authorization": "Bearer YOUR_RESPAN_API_KEY",
7 "Content-Type": "application/json",
8 },
9 json={
10 "model": "ai21/jamba-1.5-large",
11 "prompt_messages": [{"role": "user", "content": "Hello, how are you?"}],
12 "completion_message": {"role": "assistant", "content": "Hello from AI21 through Respan."},
13 "cost": 0.001,
14 "generation_time": 1.2,
15 "customer_params": {"customer_identifier": "user_123"},
16 },
17)

See the logging guide for the full setup.