ソース情報
- リポジトリ
- tomevault-io/tomes
- ソースの最終更新活動
- 2026年7月23日 21:48
- 検出された SKILL.md の言語
- 英語
- スター
- 1
- フォーク
- 0
インストール方法
デフォルトでは、最初にソースを確認する Prompt が選択されています。直接コマンドに切り替えるか、ローカルコピーをダウンロードすることもできます。
ソースファイルを確認
インストールを決める前に、SKILL.md と SkillsMP に表示されている付属ファイルをお読みください。
メニュー
デフォルトでは、最初にソースを確認する Prompt が選択されています。直接コマンドに切り替えるか、ローカルコピーをダウンロードすることもできます。
インストールを決める前に、SKILL.md と SkillsMP に表示されている付属ファイルをお読みください。
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
直接コマンドでは確認用 Prompt が省略されます。実行前にソースを確認してください。
npx skills add https://github.com/tomevault-io/tomes --skill training-smoke-testコマンドは1行のまま表示されます。コピー前に横へスクロールして全体を確認してください。
ローカルで確認しますか?SkillsMP が現在取得できるファイルをダウンロードできます。
> Use when this capability is needed.
Use when writing kernel, account, or note MASM code that reads from or writes to the advice provider (advice stack / advice map) — validate advice data.
Use when writing a Rust test that exercises a failure path or a MASM test that expects a `panic` / `assert` — assert on the specific expected error variant or error code.
SOC 職業分類に基づく
SKILL.md を表示中
| name | training-smoke-test |
| description | > Use when this capability is needed. |
Create short, single-node training scripts that exercise a specific feature in a
real GPU run. These scripts are derived from the 190M base config
(src/scripts/train/OLMo3/OLMo-3-190M.py) and train for only ~20 steps with an
eval callback to confirm the feature works.
Determine the feature under test and what "success" looks like. Examples:
| Feature | Success signal |
|---|---|
| CP perplexity evals | LM evaluator reports CE loss and PPL without error |
| TP training | Training completes 20 steps, loss decreases |
| New data mix | Data loader produces batches without errors |
| New attention backend | Training completes 20 steps with the new backend, no kernel errors |
Start from src/scripts/train/OLMo3/OLMo-3-190M.py and place the new script in
src/scripts/train/smoketests/.
Key modifications:
<feature>-test.py in src/scripts/train/smoketests/.Duration.steps(20) — just enough to confirm the feature works.SEQ_LENGTH * 16 — small but enough for distributed training.Float8Config, InstanceFilterConfig,
CheckpointerCallback, FOR_BENCHMARKING, CHINCHILLA_MULTIPLE,
estimate_lr() none of these are needed for a quick verification.enabled=False.Depending on what is being verified, add the relevant config. Common patterns:
Context Parallelism (CP):
from olmo_core.train.train_module import TransformerContextParallelConfig
# In train_module_config:
cp_config=TransformerContextParallelConfig.ulysses(degree=2),
Tensor Parallelism (TP):
from olmo_core.train.train_module import TransformerTensorParallelConfig
# In train_module_config:
tp_config=TransformerTensorParallelConfig(degree=2),
New attention backend:
from olmo_core.nn.attention import AttentionBackendName
# In model_config — override the backend selection:
model_config = TransformerConfig.olmo3_190M(
vocab_size=tokenizer_config.padded_vocab_size(),
attn_backend=AttentionBackendName.flash_4, # or .te, .torch, etc.
)
Available backends: torch, flash_2, flash_3, flash_4, te.
The base script selects between flash_2 and flash_3 based on GPU type;
a verification script can hardcode a specific backend to test it.
PPL evals (LMEvaluator):
from olmo_core.data import NumpyPaddedFSLDatasetConfig
from olmo_core.train.callbacks import LMEvaluatorCallbackConfig
# In trainer_config:
.with_callback(
"lm_evaluator",
LMEvaluatorCallbackConfig(
eval_dataset=NumpyPaddedFSLDatasetConfig.from_data_mix(
DataMix.v3_small_ppl_validation,
mix_base_dir=get_root_dir(cli_context.cluster),
sequence_length=SEQ_LENGTH,
tokenizer=tokenizer_config,
work_dir=work_dir,
),
eval_interval=10,
),
)
Full recommended evals (PPL + downstream):
trainer_config = trainer_config.with_recommended_evals(
tokenizer_config, SEQ_LENGTH, cli_context.cluster, task_set="fast"
)
Note: downstream evals require full logits and are incompatible with CP or TP.
Before launching, ask the user what priority to use for the Beaker job.
The options are: low, normal, high, urgent. Not all workspaces support
all priorities (e.g., ai2/OLMo_3 caps at normal).
# Dry run first to check the config renders:
python src/scripts/train/smoketests/<feature>-test.py \
dry_run test-<feature> ai2/jupiter
# Launch on Beaker:
python src/scripts/train/smoketests/<feature>-test.py \
launch test-<feature> ai2/jupiter \
--launch.priority=<priority> \
--launch.follow=false
Always launch with --launch.follow=false (or set --launch.launch_timeout=<seconds>
to cap how long to wait). This avoids blocking the terminal indefinitely.
By default the launch command follows the job logs in the terminal until
completion, which requires step_soft_timeout and blocks the session. Using
follow=false lets the job run asynchronously.
After launching, report the Beaker experiment link to the user so they can monitor the job.
To reconnect to a running job later:
gantry follow <experiment-id>
Check the Beaker logs for:
Scripts live in src/scripts/train/smoketests/ and are named <feature-slug>-test.py.
Examples:
src/scripts/train/smoketests/cp-ppl-eval-test.pysrc/scripts/train/smoketests/tp-training-test.pysrc/scripts/train/smoketests/cp-tp-combined-test.pysrc/scripts/train/smoketests/new-data-mix-test.pysrc/scripts/train/smoketests/flash4-attn-test.pySource: allenai/OLMo-core — distributed by TomeVault.