UI はローカライズ済みです。スキルの紹介と説明文書は選択した言語へ AI が自動翻訳し、コード・コマンド・パス・専門用語は原文のままです。原作者の文書が優先されます。
スキルを探す
データ・研究 · SKILL.md

evals-and-graph

evals-and-graph

Guides agents building Pydantic Evals datasets, evaluators, reports, Logfire evals, and pydantic-graph GraphBuilder state-machine workflows.

Independent GitHub snapshot · Automated classification · Original documentation governs

スキルの説明

GitHub

name: evals-and-graph description: "Guides agents building Pydantic Evals datasets, evaluators, reports, Logfire evals, and pydantic-graph GraphBuilder state-machine workflows." disable-model-invocation: true metadata: disco-role: operating license: MIT

Evals and Graph

Use this sub-skill when a task involves pydantic_evals datasets, cases, evaluators, reports, experiment runs, Logfire-backed eval analysis, or pydantic_graph state machines built with GraphBuilder.

Read First

  • Read references/evals-workflows.md when creating Dataset/Case objects, custom evaluators, report evaluators, serialized YAML/JSON datasets, concurrency/retry settings, lifecycle hooks, or agent-eval integrations.
  • Read references/graph-workflows.md when designing a graph with GraphBuilder, StepContext, typed state/deps, BaseNode interop, decisions, joins, maps, broadcasts, or Mermaid diagrams.
  • Read references/troubleshooting.md when eval outputs, evaluator return types, optional Logfire tracing, graph typing, legacy Graph, joins, or rendered edges behave unexpectedly.
  • Run scripts/evals_graph_smoke.py after installing pydantic-evals and pydantic-graph to verify a no-network eval plus a builder graph run.

Routing

  • Use evals for repeatable system-quality measurement over cases; keep ordinary unit tests for deterministic API contracts, regressions, and fast local assertions.
  • Start eval work with typed Dataset[InputsT, OutputT, MetadataT], named Case(...) rows, deterministic code evaluators, and evaluate_sync(..., progress=False, max_concurrency=1) while debugging.
  • Add LLMJudge only when deterministic checks cannot express the quality target; route judge model/provider selection to ../models-and-providers/SKILL.md.
  • Evaluate Pydantic AI agents by wrapping agent.run_sync() or agent.run() as the dataset task; route agent construction, TestModel, FunctionModel, and Agent.override(...) details to ../agent-core/SKILL.md.
  • Use GraphBuilder for new graph workflows; import the legacy Graph runner only to maintain existing code and expect a deprecation warning when imported from pydantic_graph.

Boundaries

  • For core Agent construction, deterministic TestModel tests, run methods, dependencies, streaming, and message history, read ../agent-core/SKILL.md.
  • For LLM judge provider strings, optional provider extras, model settings, fallback, and auth diagnostics, read ../models-and-providers/SKILL.md.
  • For function tools, toolsets, approvals, deferred calls, and ModelRetry, read ../tools-and-toolsets/SKILL.md.
  • For structured output/message serialization used by evaluated agents, read ../outputs-and-messages/SKILL.md.
  • For maintainer VCR/cassette, native repo test selection, and CI workflow mechanics, read ../repo-development/SKILL.md when that sub-skill exists.

Non-Negotiables

  • Keep bundled eval examples deterministic and no-network unless the user explicitly asks for live provider judging or Logfire upload.
  • Give every eval case a useful name; include expected_output or metadata whenever evaluators need ground truth.
  • Return evaluator scalars, EvaluationReason, or mappings of those values; do not return arbitrary models or nested dicts from Evaluator.evaluate().
  • Use builder-first graph APIs: GraphBuilder(...), @g.step, g.edge_from(...).to(...), g.decision(), g.join(...), .map(), and graph.run(...).
  • Keep graph state and deps types consistent across GraphBuilder, StepContext, BaseNode[...], and GraphRunContext[...] annotations.
保存したスキル