def METHOD_NAME():
    df = dispatch.make_df(
        {
            "Cost": range(15),
            "Post": [1, 2, 3, 4, 5] * 3,
            "Author": ["A"] * 5 + ["B"] * 5 + ["C"] * 2 + ["D"] * 3,
            "Engaging_User": ["A"] * 5 + ["B"] * 3 + ["E"] * 2 + ["D"] * 3 + ["G"] * 2,
        }
    )
    cat_groups = ["Author", "Engaging_User"]
    labels = ColumnSelector(["Post"]) >> ops.LambdaOp(lambda col: (col > 3).astype("int8"))
    te_features = cat_groups >> ops.TargetEncoding(
        labels,
        out_path="./",
        kfold=1,
        out_dtype="float32",
        drop_folds=False,  # Keep folds to validate
    )
    workflow = nvt.Workflow(te_features + ["Author", "Engaging_User"])
    workflow.fit_transform(nvt.Dataset(df)).to_ddf().compute(scheduler="synchronous")