All skills
datadog-labs avatar

/agent-observability-experiment-bootstrap

@47d0cf5 official

Bootstrap a reproducible LLM Observability experiment through the Python ddtrace SDK or the Node dd-trace SDK. Use for experiment, dataset, evaluator, benchmark, regression, or LLM-as-a-judge scaffolding. The legacy Python invocation remains supported.

Use this Skill: https://skilld.dev/gh/datadog-labs/agent-skills/agent-observability-experiment-bootstrap

This session only. Nothing lands on disk.

referencespythonevaluator-stylesremote.md

≈488 tokens on demand. Your agent reads this file only when SKILL.md points to it.

--evaluator-style remote (LLM-as-Judge running server-side)

RemoteEvaluator instances that point at a judge configured in the Datadog UI. The judge LLM call runs on Datadog's side, not in the user's experiment process — useful when the judge is shared across experiments or has its own quota / model selection.

Code to emit

from ddtrace.llmobs import RemoteEvaluator

# Create the judge in Datadog UI first: Agent Observability → Evaluations → New Evaluator
quality_judge = RemoteEvaluator(eval_name="<name-from-datadog-ui>")

# Optional: customize the payload the judge receives
custom_judge = RemoteEvaluator(
    eval_name="<name>",
    transform_fn=lambda ctx: {
        "question": ctx.input_data.get("question"),
        "answer": ctx.output_data,
        "reference": ctx.expected_output,
    },
)

Setup the user has to do first

The judge must exist in the Datadog UI before the experiment runs. Emit a comment in the generated file telling the user:

# Before running this experiment:
#   1. Open Datadog → Agent Observability → Evaluations → Custom evaluators
#   2. Create an LLM-as-a-Judge evaluator. Note the eval_name you give it.
#   3. Paste that name into RemoteEvaluator(eval_name="...") below.

When to prefer remote over inline LLMJudge

  • The same judge is reused across multiple experiments (single source of truth in the UI).
  • The judge needs its own model/provider config that the experiment process doesn't have access to.
  • The user wants to swap judges without changing experiment code.

For one-off rubrics tied to a single experiment, inline LLMJudge (under the function style) is simpler. See references/python/evaluator-styles/function.md.

When NOT to use this style

If the user doesn't have a judge configured in Datadog yet and won't set one up, fall back to function style with an LLMJudge placeholder — at least the experiment runs end-to-end.

Source: SKILL.md on GitHub

No alerts1mo3 checks · Risk SAFE
  • Gen Agent Trust Hub1mo

    This skill provides scaffolding for LLM observability experiments using Datadog's official SDKs. It adheres to security best practices by explicitly forbidding the hardcoding of credentials, implementing PII scrubbing for datasets, and utilizing official vendor libraries and documentation.

  • Socket1mo

    No alerts

  • Snyk1mo

    Risk: LOW · No issues

Signed by skilld at 47d0cf5. This ties the file your Agent reads to that commit on GitHub. It does not review the instructions.

Last checked against GitHub yesterday.

Activeupdated last month

README badge

README badge for datadog-labs/agent-skills/agent-observability-experiment-bootstrap