> ## Documentation Index
> Fetch the complete documentation index at: https://docs.upsonic.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# SambaNova

> Using SambaNova AI for open and hosted models with Upsonic

## Overview

SambaNova provides an OpenAI-compatible API for multiple model families. The default endpoint is `https://api.sambanova.ai/v1`; you can override it with `SAMBANOVA_BASE_URL` or pass `base_url` to `SambaNovaProvider`. Model profiles are matched by name prefix (e.g. `deepseek-*`, `llama-*`, `qwen*`, `mistral*`).

**Model Class:** `SambaNovaModel`

## Authentication

```bash theme={null}
export SAMBANOVA_API_KEY="..."
# Optional: custom base URL
export SAMBANOVA_BASE_URL="https://api.sambanova.ai/v1"
```

## Examples

```python theme={null}
from upsonic import Agent, Task
from upsonic.models.sambanova import SambaNovaModel

model = SambaNovaModel(model_name="gpt-oss-120b")
agent = Agent(model=model)

task = Task("Hello, how are you?")
result = agent.do(task)
print(result)
```

## Model Settings

You can set model parameters in two ways: on the model or on the Agent.

**On the model:**

```python theme={null}
from upsonic import Agent, Task
from upsonic.models.sambanova import SambaNovaModel, SambaNovaModelSettings

model = SambaNovaModel(
    model_name="gpt-oss-120b",
    settings=SambaNovaModelSettings(max_tokens=1024, temperature=0.7)
)
agent = Agent(model=model)
```

**On the Agent:**

```python theme={null}
from upsonic import Agent, Task
from upsonic.models.sambanova import SambaNovaModelSettings

agent = Agent(
    model="sambanova/gpt-oss-120b",
    settings=SambaNovaModelSettings(max_tokens=1024, temperature=0.7)
)
```

## Parameters

| Parameter             | Type        | Description                    | Default       | Source |
| --------------------- | ----------- | ------------------------------ | ------------- | ------ |
| `max_tokens`          | `int`       | Maximum tokens to generate     | Model default | Base   |
| `temperature`         | `float`     | Sampling temperature (0.0-2.0) | 1.0           | Base   |
| `top_p`               | `float`     | Nucleus sampling               | 1.0           | Base   |
| `seed`                | `int`       | Random seed                    | None          | Base   |
| `stop_sequences`      | `list[str]` | Stop sequences                 | None          | Base   |
| `presence_penalty`    | `float`     | Token presence penalty         | 0.0           | Base   |
| `frequency_penalty`   | `float`     | Token frequency penalty        | 0.0           | Base   |
| `parallel_tool_calls` | `bool`      | Allow parallel tools           | True          | Base   |
| `timeout`             | `float`     | Request timeout (seconds)      | 600           | Base   |
