# init

Initialize the Fiddler client with connection parameters and global configuration.

This function establishes a connection to the Fiddler platform and configures the global client state. It handles authentication, server compatibility validation, logging setup, and creates the singleton connection instance used throughout the client library.

## Parameters

| Parameter  | Type                                   | Required | Default | Description                                                               |
| ---------- | -------------------------------------- | -------- | ------- | ------------------------------------------------------------------------- |
| `url`      | `str`                                  | ✓        | `-`     | The base `URL` to your Fiddler platform instance                          |
| `token`    | `str`                                  | ✓        | `-`     | Authentication token obtained from the Fiddler UI Credentials tab         |
| `proxies`  | `dict \| None`                         | ✗        | `None`  | Dictionary mapping protocol to proxy `URL` for `HTTP` requests            |
| `timeout`  | `float \| tuple[float, float] \| None` | ✗        | `None`  | `HTTP` request timeout settings (float or tuple of connect/read timeouts) |
| `verify`   | `bool`                                 | ✗        | `True`  | Whether to verify server's `TLS` certificate                              |
| `validate` | `bool`                                 | ✗        | `True`  | Whether to validate server/client version compatibility                   |

## Raises

* **ValueError** – If url or token parameters are empty
* **IncompatibleClient** – If server version is incompatible with client version
* **ConnectionError** – If unable to connect to the Fiddler platform **Return type:** None

## Examples

Basic initialization:

```python
import fiddler as fdl

fdl.init(
    url="https://your-instance.fiddler.ai",
    token="your-auth-token"
)
```

Initialization with custom timeout and proxy:

```python
fdl.init(
    url="https://your-instance.fiddler.ai",
    token="your-auth-token",
    timeout=(10.0, 60.0),  # 10s connect, 60s read timeout
    proxies={"https": "https://proxy.company.com:8080"}
)
```

Initialization for development with relaxed settings:

```python
fdl.init(
    url="https://your-instance.fiddler.ai",
    token="dev-token",
    verify=False,  # Skip SSL verification
    validate=False,  # Skip version compatibility check
)
```

{% hint style="info" %}
The client implements automatic retry strategies for transient failures. Configure retry duration via FIDDLER\_CLIENT\_RETRY\_MAX\_DURATION\_SECONDS environment variable (default: 300 seconds).
{% endhint %}

Logging is performed under the 'fiddler' namespace at INFO level. If no root logger is configured, a stderr handler is automatically attached unless auto\_attach\_log\_handler=False.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.fiddler.ai/api/fiddler-evals-sdk/connection/init.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
