# Models

URL: https://interfaze.ai/docs/models

Interfaze comes in two models.

- [interfaze-1](https://interfaze.ai/docs/models/interfaze-1) is the flagship. It has the highest accuracy and a 1M-token context window.
- [interfaze-1-lite](https://interfaze.ai/docs/models/interfaze-1-lite) is a smaller any-to-text model with open weights under the Apache 2.0 license. It has a 128k-token context window, takes text, images, audio and files, and runs on a single 80 GB GPU, so you can self-host it.

## Which model should I use?

Pick **interfaze-1** when:

- accuracy matters most, for example OCR on dense or degraded documents
- your input is long: big PDFs, long transcripts or many files in one request

Pick **interfaze-1-lite** when:

- you want to self-host the model, or run it offline
- you want a smaller model for OCR, transcription, extraction or classification
- your input fits in 128k tokens

Lite matches or beats interfaze-1 on multimodal reasoning (MMMU-Pro), visual grounding (RefCOCO) and structured output (SOB). interfaze-1 leads on text in images (OCRBench V2), science (GPQA Diamond), multilingual knowledge (MMMLU) and text-to-SQL.

## Compare specs

[View pricing](https://interfaze.ai/pricing) | [View limits](https://interfaze.ai/docs/limits) | [View leaderboard](https://interfaze.ai/leaderboards)

## Switch models

Set the `model` param on any request. Everything else stays the same.

**Interfaze SDK · typescript**

```typescript
import { Interfaze } from "interfaze";

const interfaze = new Interfaze();

const response = await interfaze.chat.completions.create({
	model: "interfaze-1-lite",
	messages: [{ role: "user", content: "Summarise the attached contract in three bullets." }],
});

console.log(response.choices[0]?.message.content);
```

**Vercel AI SDK · typescript**

```typescript
import { interfaze } from "@interfaze-ai/ai-sdk";
import { generateText } from "ai";

const { text } = await generateText({
	model: interfaze("interfaze-1-lite"),
	prompt: "Summarise the attached contract in three bullets.",
});

console.log(text);
```

**LangChain SDK · typescript**

```typescript
import { ChatInterfaze } from "@interfaze-ai/langchain";

const interfaze = new ChatInterfaze({ model: "interfaze-1-lite" });

const response = await interfaze.invoke("Summarise the attached contract in three bullets.");

console.log(response.content);
```

**OpenAI SDK · typescript**

```typescript
import OpenAI from "openai";

const client = new OpenAI({
	baseURL: "https://api.interfaze.ai/v1",
	apiKey: process.env.INTERFAZE_API_KEY,
});

const response = await client.chat.completions.create({
	model: "interfaze-1-lite",
	messages: [{ role: "user", content: "Summarise the attached contract in three bullets." }],
});

console.log(response.choices[0]?.message.content);
```

**Interfaze SDK · python**

```python
from interfaze import Interfaze

interfaze = Interfaze()

response = interfaze.chat.completions.create(
    model="interfaze-1-lite",
    messages=[{"role": "user", "content": "Summarise the attached contract in three bullets."}],
)

print(response.choices[0].message.content)
```

**LangChain SDK · python**

```python
from interfaze_langchain import ChatInterfaze

interfaze = ChatInterfaze(model="interfaze-1-lite")

response = interfaze.invoke("Summarise the attached contract in three bullets.")

print(response.content)
```

**OpenAI SDK · python**

```python
import os
from openai import OpenAI

client = OpenAI(
    base_url="https://api.interfaze.ai/v1",
    api_key=os.environ["INTERFAZE_API_KEY"],
)

response = client.chat.completions.create(
    model="interfaze-1-lite",
    messages=[{"role": "user", "content": "Summarise the attached contract in three bullets."}],
)

print(response.choices[0].message.content)
```

**cURL · bash**

```bash
curl https://api.interfaze.ai/v1/chat/completions \
  -H "Authorization: Bearer $INTERFAZE_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "interfaze-1-lite",
    "messages": [
      { "role": "user", "content": "Summarise the attached contract in three bullets." }
    ]
  }'
```

When you don't set `model`, the Interfaze SDK and LangChain integration run on `interfaze-1`.

## Model cards

- [interfaze-1](https://interfaze.ai/docs/models/interfaze-1): specs, benchmarks, capabilities and architecture.
- [interfaze-1-lite](https://interfaze.ai/docs/models/interfaze-1-lite): specs, benchmarks, capabilities, architecture and how to self-host.
