界面已本地化;技能介绍与说明文档按所选语言由 AI 自动翻译,代码、命令、路径和专业术语保留原文,以原作者文档为准。
探索技能
数据与研究 · SKILL.md

setup

setup

【数据与研究】Install YiVal, inspect CLI commands, create/validate experiment YAML, and choose dataset/config fields.

独立 GitHub 快照 · 自动分类 · 以原作者文档为准

技能说明

GitHub

name: setup description: "Install YiVal, inspect CLI commands, create/validate experiment YAML, and choose dataset/config fields." disable-model-invocation: true metadata: disco-role: operating license: Apache 2.0

YiVal setup and configuration

Use this sub-skill when the user needs to install YiVal, inspect yival CLI behavior, initialize or validate YAML, choose dataset source fields, or debug early config loading before an experiment run.

Read first

Useful bundled helper:

  • python sub-skills/setup/scripts/build_config_template.py --help builds a starter YAML through YiVal's own config-generation utility after importing built-ins.

Installation checklist

  1. Use Python >=3.10,<3.13.
  2. Install YiVal in the target environment:
    • from PyPI/package index: python -m pip install yival
    • from a source checkout: python -m pip install -e .
  3. Install optional trainer extras only for approved fine-tuning: python -m pip install 'yival[trainers]' or python -m pip install -e '.[trainers]'.
  4. If CLI import errors mention pkg_resources, run python -m pip install 'setuptools<81'.
  5. Confirm the environment from the skill root: python scripts/check_install.py --check-cli.

CLI setup routes

TaskCommand shape
Show root helppython -m yival --help or yival --help
Generate a templateyival init --config_path config.yml --function my_module.my_func --source_type dataset ...
Validate YAMLyival validate config.yml
Run a configyival run config.yml --output_path results.pkl
Try packaged demosyival demo --qa_expected_results, yival demo --basic_interactive, yival demo --auto_prompts
Interactive auto-configyival gen or yival task

Important defaults:

  • yival run --display is an action="store_true" flag with default True; CLI runs normally display Dash results unless you call ExperimentRunner.run(display=False) programmatically.
  • yival bot defaults to interactive=True and display=False.
  • yival demo copies a packaged demo config into the current working directory before running it.

YAML minimum contract

Every useful config needs:

description: short experiment description
custom_function: module.path.function_name
dataset:
  source_type: dataset

Then add fields according to source type:

  • source_type: dataset: include file_path and reader.
  • source_type: machine_generated: include data_generators.
  • source_type: user_input: normally no file path; used for interactive UI.

For prompt/model comparisons, also add variations and one or more evaluators.

Decision points

  • If rows already exist, prefer source_type: dataset with csv_reader and a small fixture first.
  • If examples must be generated from a prompt or document, route to prompt-automation before running provider-backed generation.
  • If the task is mostly metric/selector design, route to evaluation-optimization.
  • If YAML contains custom_* sections, route to custom-components to verify class/config paths and registry keys.
  • For no-network smoke tests, run the root helper python scripts/write_minimal_experiment.py --run from the skill root.

Validation workflow

  1. Load or generate YAML.
  2. Check custom_function importability. For local modules, ensure the module's directory is on PYTHONPATH or run from a working directory where it imports directly.
  3. Check dataset row keys match the custom function's parameters except state.
  4. Check variation names match the StringWrapper(name=...) calls in the custom function.
  5. Check evaluator/reader/generator ids exist in registry overview.
  6. Run yival validate config.yml; if it passes, run a tiny dataset before scaling up.

Handoff to running

After setup is valid, read run for execution, result pickle names, Dash/interactive behavior, and programmatic runner choices.

我的收藏