# Bypassing MoA

URL: https://interfaze.ai/docs/bypass-moa

Run only the raw transformer layer for lower latency when you don't need task-specific accuracy.

## Turning it on

Skip MoA for a request with the `x-interfaze-bypass-moa` header:

```text
x-interfaze-bypass-moa: true
```

If you use the [Interfaze SDK](https://interfaze.ai/docs/integrations/interfaze-sdk), set `bypassMoA: true` when creating the client instead and the header is added for you. With any other SDK, set the header as a default header on the client so every request carries it.

**Interfaze SDK · typescript**

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

const interfaze = new Interfaze({
  apiKey: process.env.INTERFAZE_API_KEY,
  bypassMoA: true, // run the raw model layer only
});
```

**Vercel AI SDK · typescript**

```typescript
import { createOpenAI } from "@ai-sdk/openai";

const interfaze = createOpenAI({
  baseURL: "https://api.interfaze.ai/v1",
  apiKey: process.env.INTERFAZE_API_KEY,
  headers: {
    "x-interfaze-bypass-moa": "true",
  },
});
```

**LangChain SDK · typescript**

```typescript
import { ChatOpenAI } from "@langchain/openai";

const interfaze = new ChatOpenAI({
  configuration: {
    baseURL: "https://api.interfaze.ai/v1",
    defaultHeaders: {
      "x-interfaze-bypass-moa": "true",
    },
  },
  apiKey: process.env.INTERFAZE_API_KEY,
  model: "interfaze-beta",
});
```

**Interfaze SDK · python**

```python
import os
from interfaze import Interfaze

interfaze = Interfaze(
    api_key=os.environ["INTERFAZE_API_KEY"],
    bypass_moa=True,  # run the raw model layer only
)
```

**LangChain SDK · python**

```python
import os
from langchain_openai import ChatOpenAI

interfaze = ChatOpenAI(
    base_url="https://api.interfaze.ai/v1",
    api_key=os.environ["INTERFAZE_API_KEY"],
    model="interfaze-beta",
    default_headers={"x-interfaze-bypass-moa": "true"},
)
```

## What you lose

With MoA bypassed, the model no longer runs the specialized tasks behind the scenes, so responses come back without [precontext](https://interfaze.ai/docs/precontext) and the accuracy gains on OCR, web search, scraping, transcription, and other task-specific work go away.

If you want the raw output of one specialized task without the full model, [run tasks](https://interfaze.ai/docs/run-tasks) is the better tool. It is both faster and cheaper than a full request, and you keep the specialized accuracy.
