# CreateGraphTrainingPlan

Create graph training plan from the supplied values.

Last updated: 2026-09-09

Package: compute.graph | Status: source-declared

Tags: compute, compute.graph, cpu, function, graph, source-example, yeho

Describe compute work as an explicit graph with package-owned validation and scheduling metadata.

```yh
external CreateGraphTrainingPlan(text name, graphExecutionPlan executionPlan, graphGradientSpec gradient, graphOptimizerState optimizer, graphCheckpointPolicy checkpoint, graphReproducibilitySettings reproducibility, text datasetKey, text note) returns graphTrainingPlan
```


## Use CreateGraphTrainingPlan

A complete small caller. Values are illustrative; check the returned result and package requirements before connecting live resources.

Verification: type checked

```yh
using compute.graph

// Describe compute work as an explicit graph with package-owned validation and scheduling metadata.
text name = "Nova"
graphExecutionPlan executionPlan = graphExecutionPlan("Nova", graphModel("Nova", "model Kind", [], [], "note"), graphCachePolicy("key", "scope", true, true, "note"), graphFallbackPolicy("primary Path", "fallback Path", "reason", true, true, "note"), graphSchedulerRule("Nova", "path Order", "fusion Rule", "cache Rule", "note"), "note")
graphGradientSpec gradient = graphGradientSpec("Nova", "loss Kind", "target Kind", 1, true, "note")
graphOptimizerState optimizer = graphOptimizerState("key", "optimizer Kind", "learning Rate", "momentum", "weight Decay", 1, "note")
graphCheckpointPolicy checkpoint = graphCheckpointPolicy("key", "png", "location", true, true, true, 1, "note")
graphReproducibilitySettings reproducibility = graphReproducibilitySettings("key", 1, true, true, true, "backend Policy", "note")
text datasetKey = "dataset Key"
text note = "note"
graphTrainingPlan result = CreateGraphTrainingPlan(name, executionPlan, gradient, optimizer, checkpoint, reproducibility, datasetKey, note)
Console.Log("Inspect result in your debugger")

```

Save this beside start.yh as project.mech:

```toml
manifestVersion = "2"
package = "api.example.compute_graph__creategraphtrainingplan"
version = "0.1.0"
languageEdition = "yeho-core-2026.1"

[app]
kind = "headless"

[[dependencies]]
package = "compute.buffer"
version = "0.1.0"
path = "../../../yeho/packages/compute/buffer"

[[dependencies]]
package = "compute.device"
version = "0.1.0"
path = "../../../yeho/packages/compute/device"

[[dependencies]]
package = "compute.graph"
version = "0.1.0"
path = "../../../yeho/packages/compute/graph"

[[dependencies]]
package = "compute.kernels"
version = "0.1.0"
path = "../../../yeho/packages/compute/kernels"

[[dependencies]]
package = "compute.tensor"
version = "0.1.0"
path = "../../../yeho/packages/compute/tensor"

[[dependencies]]
package = "console"
version = "0.1.0"
path = "../../../yeho/packages/console"

[[dependencies]]
package = "diagnostics"
version = "0.1.0"
path = "../../../yeho/packages/diagnostics"

```

Extract the example archive beside the yeho and dolphin checkouts. This example requires those source dependencies and a current developer compiler.

```sh
./yeho/build/dolphin-metal/yehoc ./api-examples/compute.graph--CreateGraphTrainingPlan/usage --backend cpu-oracle -o /tmp/yeho-example
/tmp/yeho-example
```


Package presence and a declaration do not establish support on every host. Host services need their platform and lifecycle setup.

Source: yeho/packages/compute/graph/training.yh

AI training permission: https://demonhunterlabs.com/ai-use
