Skip to main content

experiments

Creates, updates, deletes, gets or lists an experiments resource.

Overview​

Nameexperiments
TypeResource
Iddatadog.llm_observability.experiments

Fields​

The following fields are returned by SELECT queries:

NameDatatypeDescription
idstringUnique identifier of the experiment. (example: 3fd6b5e0-8910-4b1c-a7d0-5b84de329012)
attributesobjectAttributes of an Agent Observability experiment.
typestringResource type of an Agent Observability experiment. (experiments) (example: experiments)

Methods​

The following methods are available for this resource:

NameAccessible byRequired ParamsOptional ParamsDescription
list_llmobs_experimentsselectfilter[project_id], filter[dataset_id], filter[id], filter[name], filter[experiment], filter[metadata], filter[parent_experiment_id], filter[is_deleted], include[user_data], include[dataset_names], page[cursor], page[limit]List all Agent Observability experiments sorted by creation date, newest first.
create_llmobs_experimentinsertdataCreate a new Agent Observability experiment.
update_llmobs_experimentupdateexperiment_id, dataPartially update an existing Agent Observability experiment.
aggregate_llmobs_experimentationexecdataExecute an analytics aggregation over Agent Observability experimentation data.<br />Use this endpoint to compute metrics (for example average eval scores) grouped by fields such as span_id or experiment_id.<br /><br />At least one compute definition and one index must be provided.
search_llmobs_experimentationexecdataSearch across Agent Observability experimentation entities — projects, datasets, dataset records, experiments, and experiment runs — using cursor-based pagination.<br /><br />The filter.scope field controls which entity types are returned. At least one valid scope must be provided.<br /><br />Returns 200 OK when all results fit in a single page. Returns 206 Partial Content with a cursor in meta.after when additional pages are available.
simple_search_llmobs_experimentationexecdataSearch across Agent Observability experimentation entities using offset-based (page-number) pagination.<br />Use this endpoint when you need total page count or want to navigate to a specific page number.<br /><br />The filter.scope field controls which entity types are returned. At least one valid scope must be provided.
delete_llmobs_experimentsexecdataDelete one or more Agent Observability experiments.

Parameters​

Parameters can be passed in the WHERE clause of a query. Check the Methods section to see which parameters are required or optional for each operation.

NameDatatypeDescription
experiment_idstringThe ID of the Agent Observability experiment. (example: 3fd6b5e0-8910-4b1c-a7d0-5b84de329012)
sitestringThe Datadog site (region) for your organization, for example datadoghq.com, us3.datadoghq.com, us5.datadoghq.com, ap1.datadoghq.com, ap2.datadoghq.com, datadoghq.eu, ddog-gov.com. Resolved from the DD_SITE environment variable when set. Optional: defaults to datadoghq.com, or the value of the DD_SITE environment variable when set; a WHERE value overrides both.
filter[dataset_id]stringFilter experiments by dataset ID.
filter[experiment]stringFilter by logical experiment name. This is the name field set when creating an experiment through POST /experiments. Returns all experiment runs that share the same name, enabling cross-commit and cross-branch comparisons.
filter[id]stringFilter experiments by experiment ID. Can be specified multiple times.
filter[is_deleted]booleanWhen true, return only soft-deleted experiments. Defaults to false.
filter[metadata]stringFilter by JSONB metadata containment. Provide a JSON object string where experiments whose metadata contains all specified key-value pairs are returned. For example: &#123;"commit":"abc123","branch":"main"&#125;.
filter[name]stringFilter experiments by their exact run name.
filter[parent_experiment_id]stringFilter experiments by the ID of their parent (baseline) experiment. Returns all experiments that were run against the given baseline. Can be specified multiple times.
filter[project_id]stringFilter experiments by project ID. Required if filter&#91;dataset_id&#93; is not provided.
include[dataset_names]booleanWhen true, enrich each experiment with its dataset name in the dataset_name field.
include[user_data]booleanWhen true, enrich each experiment with its author's user data in the author field.
page[cursor]stringUse the pagination cursor returned in meta.after to retrieve the next page of results.
page[limit]integer (int64)Maximum number of results to return per page. Values above 5000 are clamped to 5000. Defaults to 5000.

SELECT examples​

List all Agent Observability experiments sorted by creation date, newest first.

SELECT
id,
attributes,
type
FROM datadog.llm_observability.experiments
WHERE filter[project_id] = '{{ filter[project_id] }}'
AND filter[dataset_id] = '{{ filter[dataset_id] }}'
AND filter[id] = '{{ filter[id] }}'
AND filter[name] = '{{ filter[name] }}'
AND filter[experiment] = '{{ filter[experiment] }}'
AND filter[metadata] = '{{ filter[metadata] }}'
AND filter[parent_experiment_id] = '{{ filter[parent_experiment_id] }}'
AND filter[is_deleted] = '{{ filter[is_deleted] }}'
AND include[user_data] = '{{ include[user_data] }}'
AND include[dataset_names] = '{{ include[dataset_names] }}'
AND page[cursor] = '{{ page[cursor] }}'
AND page[limit] = '{{ page[limit] }}'
;

INSERT examples​

Create a new Agent Observability experiment.

INSERT INTO datadog.llm_observability.experiments (
data
)
SELECT
'{{ data }}' /* required */
RETURNING
data
;

UPDATE examples​

Partially update an existing Agent Observability experiment.

UPDATE datadog.llm_observability.experiments
SET
data = '{{ data }}'
WHERE
experiment_id = '{{ experiment_id }}' --required
AND data = '{{ data }}' --required
RETURNING
data;

Lifecycle Methods​

EXEC variables use wire (API) names.

Execute an analytics aggregation over Agent Observability experimentation data.<br />Use this endpoint to compute metrics (for example average eval scores) grouped by fields such as span_id or experiment_id.<br /><br />At least one compute definition and one index must be provided.

EXEC datadog.llm_observability.experiments.aggregate_llmobs_experimentation
@@json=
'{
"data": "{{ data }}"
}'
;