# xLAM 2 32B

> Run xLAM 2 32B by infsh online or via API. Pay per run, no setup.

**URL:** https://inference.sh/apps/infsh/xlam-2-32b-fc-r-i1
**Last updated:** 2026-09-17

---

A system capable of advanced multi-step reasoning and a strong understanding of language and context to create actionable plans.

- app: `infsh/xlam-2-32b-fc-r-i1`
- maker: [infsh](https://inference.sh/apps/infsh.md)
- category: [chat](https://inference.sh/apps/category/chat.md)
- runs via: api, javascript and python sdk, belt cli, mcp

## xlam-2-32b-fc-r-i1 API Guide

### About
a system capable of advanced multi-step reasoning and a strong understanding of language and context to create actionable plans.

### Get an API Key
Create one in [settings → api keys](https://app.inference.sh/settings/keys). The examples read it from `INFERENCE_API_KEY`.

```bash
export INFERENCE_API_KEY="inf_your_key"
```

### 1. Calling the API

#### Install the Client

```bash
pip install inferencesh
```

#### Run and Get Result
Submit a request and wait for the final result.

```python
import os
from inferencesh import inference

client = inference(api_key=os.environ["INFERENCE_API_KEY"])

## version @5d8psrqw pinned
result = client.run({
        "app": "infsh/xlam-2-32b-fc-r-i1@5d8psrqw",
        "input": {}
    })

print(result["output"])
```

#### Stream Live Updates
Get real-time progress updates as the task runs.

```python
import os
from inferencesh import inference

client = inference(api_key=os.environ["INFERENCE_API_KEY"])

## version @5d8psrqw pinned
## stream=True yields updates as they arrive
for update in client.run({
        "app": "infsh/xlam-2-32b-fc-r-i1@5d8psrqw",
        "input": {}
    }, stream=True):
    if update.get("progress"):
        print(f"progress: {update['progress']}%")
    if update.get("output"):
        print(f"output: {update['output']}")
```

#### Run in the Background
Start the task and get its id back right away, then check on it with `GET /tasks/{id}`. It is done when `status` is 10 (completed), 11 (failed) or 12 (cancelled).

```python
import os
from inferencesh import inference, TaskStatus

client = inference(api_key=os.environ["INFERENCE_API_KEY"])

## returns as soon as the task is created
task = client.run({
        "app": "infsh/xlam-2-32b-fc-r-i1@5d8psrqw",
        "input": {}
    }, wait=False)

## later: read its current state
state = client.tasks.get(task["id"]).data
if state["status"] == TaskStatus.COMPLETED:
    print(state["output"])
```

### 2. Files

#### Automatic Upload

```python
## local file paths are automatically uploaded
result = client.run({
    "app": "infsh/xlam-2-32b-fc-r-i1@5d8psrqw",
    "input": {
        "image": "/path/to/local/image.png",  # detected & uploaded
        "audio": "https://example.com/audio.mp3",  # url passed through
    }
})
```

#### Manual Upload

```python
## upload and get a hosted URL
file = client.files.upload("/path/to/file.png")
print(file.uri)  # https://cloud.inference.sh/...
```

### 3. Schema

#### Input
- **system_prompt** (string): The system prompt to use for the model
- **context_size** (integer): Context Size
- **temperature** (number): Temperature
- **top_p** (number): Top P
- **top_k** (integer): Top K
- **min_p** (number): Min P
- **frequency_penalty** (number): Frequency Penalty
- **presence_penalty** (number): Presence Penalty
- **repetition_penalty** (number): Repetition Penalty
- **seed** (integer): Seed
- **stop** (array): Stop
- **max_tokens** (integer): Max Tokens
- **reasoning_effort** (string): ReasoningEffortEnum
- **reasoning_max_tokens** (integer): Reasoning Max Tokens
- **tools** (array): Tools
- **tool_choice** (object): ToolChoice
- **response_format** (object): ResponseFormat
- **context** (array): Context
- **role** (string): ChatMessageRole
- **text** (string): Text
- **reasoning** (string): Reasoning
- **attachments** (array): Attachments
- **images** (array): Images
- **files** (array): Files
- **tool_call_id** (string): Tool Call Id

#### Output
- **reasoning** (string): Reasoning
- **response** (string): Response
- **tool_calls** (array): Tool Calls
- **usage** (object): LLMUsage

## other chat apps

- [DeepSeek V4.1 Flash 1017](https://inference.sh/apps/melious/deepseek-v4-1-flash-1017.md): $0.341/M input, $0.0341/M cached input, $1.364/M output
- [Gemini 4 Argon](https://inference.sh/apps/google/gemini-4-argon.md): $2.00/M input, $10.00/M output
- [GPT-6 Sol](https://inference.sh/apps/openai/gpt-6-sol.md): $2.00/M input, $0.20/M cached input, $10.00/M output
- [GPT-6 Luna](https://inference.sh/apps/openai/gpt-6-luna.md): $0.10/M input, $0.01/M cached, $0.50/M output
- [GPT-6.1 Sol](https://inference.sh/apps/openai/gpt-6-1-sol.md): $2.00/M input, $0.10/M cached, $10.00/M output

## faq

### how much does xLAM 2 32B cost?

you pay per run from your inference shell credits, and the app shows its cost before each run. no subscription is required.

### how do I run xLAM 2 32B via api?

call infsh/xlam-2-32b-fc-r-i1 with the javascript or python sdk, the rest api, or `belt app run infsh/xlam-2-32b-fc-r-i1` from a terminal. the api reference on this page lists every input.

### who makes xLAM 2 32B?

xLAM 2 32B is made by infsh and runs on inference shell. every infsh app is listed at https://inference.sh/apps/infsh.

### can my agent use xLAM 2 32B?

yes. agents call it as a tool through the inference shell mcp server (https://api.inference.sh/mcp), the belt cli or the sdk, and pay per run like you do.

### what are the alternatives to xLAM 2 32B?

other chat apps on inference shell include DeepSeek V4.1 Flash 1017, Gemini 4 Argon, GPT-6 Sol, GPT-6 Luna. they run through the same api, so switching is a one-line change.
