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

# experiment_result

## Module

Experiment result wrapper for easy status access and monitoring.

## ExperimentPhaseInfo

Wrapper for experiment phase status information.

Provides easy access to phase-level progress and status information for an experiment.

**Examples**

# Access phase information from experiment status

experiment = Experiment.get(name="ml-eval", project\_name="My Project")
status = experiment.get\_status()

log\_gen = status.log\_generation
if log\_gen.is\_complete:
print("Log generation phase completed!")
elif log\_gen.is\_in\_progress:
print(f"Log generation at \{log\_gen.progress\_percent:.1f}%")

# Check phase status

print(f"Phase status: \{log\_gen}")  # Human-readable string

### is\_complete

```python theme={null}
def is_complete(self) -> bool
```

Whether this phase is complete (progress >= 100%).

### is\_failed

```python theme={null}
def is_failed(self) -> bool
```

Whether this phase failed. Currently always returns False.

### is\_in\_progress

```python theme={null}
def is_in_progress(self) -> bool
```

Whether this phase is in progress (0% \< progress \< 100%).

### is\_pending

```python theme={null}
def is_pending(self) -> bool
```

Whether this phase hasn't started yet (progress = 0%).

### to\_dict

```python theme={null}
def to_dict(self) -> dict[str, Any]
```

Convert the phase info to a dictionary.

**Examples**

phase\_dict = status.log\_generation.to\_dict()
print(phase\_dict\["progress\_percent"])
print(phase\_dict\["is\_complete"])

## ExperimentStatusInfo

Wrapper for experiment status information.

Provides human-readable access to experiment execution status, including progress
tracking and phase-level information.

**Examples**

# Get status information

experiment = Experiment.get(name="ml-eval", project\_name="My Project")
status = experiment.get\_status()

# Human-readable output

print(status)  # "Experiment Running (45.2%)"
print(f"Log Generation: \{status.log\_generation}")  # "In Progress (45.2%)"

# Check status

if status.is\_complete:
print("Experiment completed!")
elif status.is\_in\_progress:
print(f"Progress: \{status.overall\_progress:.1f}%")
elif status.is\_pending:
print("Experiment hasn't started yet")

# Convert to dictionary

status\_dict = status.to\_dict()
print(status\_dict\["overall\_progress"])

### from\_result

```python theme={null}
def from_result(cls, result: dict[str, Any]) -> ExperimentStatusInfo
```

Create from experiment.run() result dictionary.

**Arguments**

* `result`: Dictionary returned from Experiment.run().

### is\_complete

```python theme={null}
def is_complete(self) -> bool
```

Whether the experiment is complete (all phases at 100%).

### is\_failed

```python theme={null}
def is_failed(self) -> bool
```

Whether the experiment has failed. Currently always returns False.

### is\_in\_progress

```python theme={null}
def is_in_progress(self) -> bool
```

Whether the experiment is currently running (0% \< progress \< 100%).

### is\_pending

```python theme={null}
def is_pending(self) -> bool
```

Whether the experiment hasn't started yet (progress = 0%).

### overall\_progress

```python theme={null}
def overall_progress(self) -> float
```

Overall progress percentage across all phases.

Currently uses log\_generation progress. In the future, this may
average multiple phase progress values.

## Returns

float: Progress percentage from 0.0 to 100.0.

### to\_dict

```python theme={null}
def to_dict(self) -> dict[str, Any]
```

Convert the status info to a dictionary.

**Examples**

status = experiment.get\_status()
status\_dict = status.to\_dict()
print(status\_dict\["overall\_progress"])
print(status\_dict\["log\_generation"]\["is\_complete"])

## ExperimentRunResult

Wrapper for experiment.run() result with human-readable access.

Provides easy access to experiment run information including the link,
status, and underlying experiment response. This wrapper makes it simple
to work with experiment run results by exposing commonly needed information
through intuitive properties and methods.

**Examples**

# Run an experiment and access the result

experiment = Experiment(
name="ml-evaluation",
dataset\_name="ml-dataset",
prompt\_name="ml-prompt",
project\_name="My AI Project"
).create()

result = experiment.run()

# Access basic information

print(result)  # Human-readable summary
print(f"View results: \{result.link}")
print(f"Experiment ID: \{result.experiment\_id}")

# Check status

if result.status.is\_in\_progress:
print(f"Progress: \{result.status.overall\_progress:.1f}%")
elif result.status.is\_complete:
print("Experiment completed!")

# Get dataset and prompt information

if result.dataset\_info:
print(f"Dataset: \{result.dataset\_info\['name']}")
if result.prompt\_info:
print(f"Prompt: \{result.prompt\_info\['name']}")

# Convert to dictionary

result\_dict = result.to\_dict()
print(result\_dict\["link"])

### dataset\_info

```python theme={null}
def dataset_info(self) -> dict[str, str | None] | None
```

Get dataset information if available.

**Examples**

result = experiment.run()
if result.dataset\_info:
print(f"Dataset: \{result.dataset\_info\['name']}")
print(f"Version: \{result.dataset\_info\['version']}")

### experiment

```python theme={null}
def experiment(self) -> ExperimentResponse
```

Get the underlying ExperimentResponse object.

## Returns

ExperimentResponse: The raw API response object.

### prompt\_info

```python theme={null}
def prompt_info(self) -> dict[str, str | None] | None
```

Get prompt information if available.

**Examples**

result = experiment.run()
if result.prompt\_info:
print(f"Prompt: \{result.prompt\_info\['name']}")
print(f"ID: \{result.prompt\_info\['id']}")

### to\_dict

```python theme={null}
def to_dict(self) -> dict[str, Any]
```

Convert the result to a dictionary.

**Examples**

result = experiment.run()
result\_dict = result.to\_dict()
print(result\_dict\["link"])
print(result\_dict\["status"]\["overall\_progress"])
