Optimizations Client¶
The Optimizations client provides methods for managing optimization experiments in the Opik platform.
- class opik.rest_api.optimizations.client.OptimizationsClient(*, client_wrapper: SyncClientWrapper)¶
Bases:
object
- find_optimizations(*, page: int | None = None, size: int | None = None, dataset_id: str | None = None, name: str | None = None, dataset_deleted: bool | None = None, request_options: RequestOptions | None = None) OptimizationPagePublic ¶
Find optimizations
- Parameters:
page (Optional[int])
size (Optional[int])
dataset_id (Optional[str])
name (Optional[str])
dataset_deleted (Optional[bool])
request_options (Optional[RequestOptions]) – Request-specific configuration.
- Returns:
Optimizations resource
- Return type:
Examples
from Opik import OpikApi client = OpikApi(api_key=”YOUR_API_KEY”, workspace_name=”YOUR_WORKSPACE_NAME”, ) client.optimizations.find_optimizations()
- create_optimization(*, dataset_name: str, objective_name: str, status: Literal['running', 'completed', 'cancelled'] | Any, id: str | None = OMIT, name: str | None = OMIT, metadata: Dict[str, Any | None] | None = OMIT, last_updated_at: datetime | None = OMIT, request_options: RequestOptions | None = None) None ¶
Create optimization
- Parameters:
dataset_name (str)
objective_name (str)
status (OptimizationWriteStatus)
id (Optional[str])
name (Optional[str])
metadata (Optional[JsonNodeWrite])
last_updated_at (Optional[dt.datetime])
request_options (Optional[RequestOptions]) – Request-specific configuration.
- Return type:
None
Examples
from Opik import OpikApi client = OpikApi(api_key=”YOUR_API_KEY”, workspace_name=”YOUR_WORKSPACE_NAME”, ) client.optimizations.create_optimization(dataset_name=’dataset_name’, objective_name=’objective_name’, status=”running”, )
- upsert_optimization(*, dataset_name: str, objective_name: str, status: Literal['running', 'completed', 'cancelled'] | Any, id: str | None = OMIT, name: str | None = OMIT, metadata: Dict[str, Any | None] | None = OMIT, last_updated_at: datetime | None = OMIT, request_options: RequestOptions | None = None) None ¶
Upsert optimization
- Parameters:
dataset_name (str)
objective_name (str)
status (OptimizationWriteStatus)
id (Optional[str])
name (Optional[str])
metadata (Optional[JsonNodeWrite])
last_updated_at (Optional[dt.datetime])
request_options (Optional[RequestOptions]) – Request-specific configuration.
- Return type:
None
Examples
from Opik import OpikApi client = OpikApi(api_key=”YOUR_API_KEY”, workspace_name=”YOUR_WORKSPACE_NAME”, ) client.optimizations.upsert_optimization(dataset_name=’dataset_name’, objective_name=’objective_name’, status=”running”, )
- delete_optimizations_by_id(*, ids: Sequence[str], request_options: RequestOptions | None = None) None ¶
Delete optimizations by id
- Parameters:
ids (Sequence[str])
request_options (Optional[RequestOptions]) – Request-specific configuration.
- Return type:
None
Examples
from Opik import OpikApi client = OpikApi(api_key=”YOUR_API_KEY”, workspace_name=”YOUR_WORKSPACE_NAME”, ) client.optimizations.delete_optimizations_by_id(ids=[‘ids’], )
- get_optimization_by_id(id: str, *, request_options: RequestOptions | None = None) OptimizationPublic ¶
Get optimization by id
- Parameters:
id (str)
request_options (Optional[RequestOptions]) – Request-specific configuration.
- Returns:
Optimization resource
- Return type:
Examples
from Opik import OpikApi client = OpikApi(api_key=”YOUR_API_KEY”, workspace_name=”YOUR_WORKSPACE_NAME”, ) client.optimizations.get_optimization_by_id(id=’id’, )
- update_optimizations_by_id(id: str, *, name: str | None = OMIT, status: Literal['running', 'completed', 'cancelled'] | Any | None = OMIT, request_options: RequestOptions | None = None) None ¶
Update optimization by id
- Parameters:
id (str)
name (Optional[str])
status (Optional[OptimizationUpdateStatus])
request_options (Optional[RequestOptions]) – Request-specific configuration.
- Return type:
None
Examples
from Opik import OpikApi client = OpikApi(api_key=”YOUR_API_KEY”, workspace_name=”YOUR_WORKSPACE_NAME”, ) client.optimizations.update_optimizations_by_id(id=’id’, )
Usage Example¶
import opik
client = opik.Opik()
# Create an optimization
client.rest_client.optimizations.create_optimization(
name="my-optimization",
dataset_name="my-dataset",
objective_name="accuracy",
status="running"
)
# Get an optimization by ID
optimization = client.rest_client.optimizations.get_optimization_by_id(
"optimization-id"
)
# Update optimization status
client.rest_client.optimizations.update_optimization(
id="optimization-id",
status="completed"
)
# Delete optimizations
client.rest_client.optimizations.delete_optimizations_by_id(
ids=["optimization-id-1", "optimization-id-2"]
)