Sentence-Transformers Training Router
huggingface/skills
Routes a sentence-transformers training task to the right model type and required reference docs and example scripts, covering bi-encoders, rerankers, sparse and multi-vector models.
The LoRA-family three-axis routing surface (usemoestyle / routeperlayer / routersource) — the variant matrix, per-variant module details (LoRA/T-LoRA/Hydra), and GlobalRouter mechanics.
$ npx skills add sorryhyun/anima_lora --skill lora-routing -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install sorryhyun/anima_lora lora-routing --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/sorryhyun/anima_lora.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.claude/skills/lora-routing .claude/skills/lora-routing && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "lora-routing" agent skill from https://github.com/sorryhyun/anima_lora/tree/main/.claude/skills/lora-routing into .claude/skills/lora-routing/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "lora-routing", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/sorryhyun/anima_lora/tree/main/.claude/skills/lora-routingType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add sorryhyun/anima_lora --skill lora-routing -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install sorryhyun/anima_lora lora-routing --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/sorryhyun/anima_lora.git skills-src && mkdir -p .agents/skills && cp -r skills-src/.claude/skills/lora-routing .agents/skills/lora-routing && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "lora-routing" agent skill from https://github.com/sorryhyun/anima_lora/tree/main/.claude/skills/lora-routing into .agents/skills/lora-routing/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "lora-routing", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add sorryhyun/anima_lora --skill lora-routing -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install sorryhyun/anima_lora lora-routing --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/sorryhyun/anima_lora.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/.claude/skills/lora-routing .cursor/skills/lora-routing && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "lora-routing" agent skill from https://github.com/sorryhyun/anima_lora/tree/main/.claude/skills/lora-routing into .cursor/skills/lora-routing/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "lora-routing", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/sorryhyun/anima_lora.git --path .claude/skills/lora-routing--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add sorryhyun/anima_lora --skill lora-routing -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install sorryhyun/anima_lora lora-routing --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/sorryhyun/anima_lora.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/.claude/skills/lora-routing .gemini/skills/lora-routing && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "lora-routing" agent skill from https://github.com/sorryhyun/anima_lora/tree/main/.claude/skills/lora-routing into .gemini/skills/lora-routing/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "lora-routing", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install sorryhyun/anima_lora lora-routingInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add sorryhyun/anima_lora --skill lora-routing -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/sorryhyun/anima_lora.git skills-src && mkdir -p .github/skills && cp -r skills-src/.claude/skills/lora-routing .github/skills/lora-routing && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "lora-routing" agent skill from https://github.com/sorryhyun/anima_lora/tree/main/.claude/skills/lora-routing into .github/skills/lora-routing/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "lora-routing", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add sorryhyun/anima_lora --skill lora-routing -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install sorryhyun/anima_lora lora-routing --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/sorryhyun/anima_lora.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/.claude/skills/lora-routing .opencode/skills/lora-routing && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "lora-routing" agent skill from https://github.com/sorryhyun/anima_lora/tree/main/.claude/skills/lora-routing into .opencode/skills/lora-routing/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "lora-routing", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
lora-routingThe LoRA-family three-axis routing surface (usemoestyle / routeperlayer / routersource) — the variant matrix, per-variant module details (LoRA/T-LoRA/Hydra), and GlobalRouter mechanics.
Lora Routing is an agent skill from sorryhyun/anima_lora. The LoRA-family three-axis routing surface (usemoestyle / routeperlayer / routersource) — the variant matrix, per-variant module details (LoRA/T-LoRA/Hydra), and GlobalRouter mechanics. Load before adding/changing a LoRA variant, touching routing code in networks/loraanima/ or loramodules/, or debugging router behavior.
Its SKILL.md is about 1.3k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.
It sits in AI & LLM Engineering, covering Fine-tuning. The repository describes itself as: optimized anima lora training script. The licence is MIT.
Read from SKILL.md and the folder at commit d16b651. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
No scripts in the folder and no shell commands in SKILL.md.
From the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md.
From URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Lora Routing loads about 1.3k tokens when it runs. Until then it costs about 85 tokens; SKILL.md has 499 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.
The full file from sorryhyun/anima_lora at commit d16b651, republished under its MIT licence (© sorryhyun). 499 words, ~1,301 tokens.
.claude/skills/lora-routing/SKILL.md (or your agent's skills folder).The three axes (use_moe_style / route_per_layer / router_source) are consumed by lora_anima/config.py::LoRANetworkCfg.from_kwargs and dispatched by networks/__init__.py::resolve_network_spec. Legal values:
| Axis | Values |
|---|---|
use_moe_style | False / "shared_A" |
route_per_layer | true / false |
router_source | "none" / "input" / "sigma" / "fei" / "crossattn_emb" (empty / unset → "none") |
Two constraints, both raising in from_kwargs: "input" requires route_per_layer=True (no per-Linear input signal reaches a network-level router); "crossattn_emb" requires route_per_layer=False.
Variants that exist as cells in this matrix:
| Variant | use_moe_style | route_per_layer | router_source | Network module / path |
|---|---|---|---|---|
| Plain LoRA / T-LoRA | False | — | "none" | lora_anima + lora_modules/lora.py |
| HydraLoRA (paper) | "shared_A" | True | "input" | lora_anima + lora_modules/hydra.py |
| σ-router on Hydra | "shared_A" | True | "sigma" | same |
| FEI-on-Hydra | "shared_A" | True | "fei" | same |
| Text-routed Hydra | "shared_A" | False | "crossattn_emb" | lora_anima + GlobalRouter (pools + LN on the cross-attn text vector) |
The "crossattn_emb" cell routes the whole pool by prompt content (pooled post-LLM-adapter text features) instead of σ/noise-frequency: the network-level GlobalRouter reads the same vector the DiT cross-attends to, fired per cond/uncond branch via set_crossattn_routing (train, train.py) / set_hydra_crossattn (inference, library/inference/generation.py), broadcasting to the standard _routing_weights slot.
Pre-plan2 metadata stamps (ss_use_hydra, ss_use_fei_router) no longer load; the stamps are now ss_use_moe_style / ss_route_per_layer / ss_router_source. use_moe_style="independent_A" (the former stacked-experts / FeRA layout) is no longer a legal value — passing it raises a ValueError (networks/lora_anima/config.py::_as_moe_style).
All live in networks/lora_modules/. Stack freely via toggle flags in configs/methods/lora.toml.
lora.py::LoRAModule) — Classic low-rank: y = x + (x @ down @ up) * scale * multiplier._timestep_mask buffer on LoRAModule (registered in base.py) is rebound to a shared live-updated mask by lora_anima/network.py::LoRANetwork.set_timestep_mask. Effective rank varies with denoising step via a power-law schedule. Training-only — inference runs full rank at every t (baking into DiT is bit-equivalent). See docs/methods/timestep_mask.md.hydra.py) — MoE-style multi-head routing: shared lora_down + per-expert lora_up_i heads, layer-local router on the adapted Linear's input (router_source="input") or σ-features / FEI features ("sigma" / "fei"). With route_per_layer=False the per-layer router drops out for a network-level GlobalRouter fed σ-features, FEI, or pooled cross-attn text (router_source="crossattn_emb"). Requires cache_llm_adapter_outputs=true. Produces a *_moe.safetensors sibling for router-live inference. See docs/methods/hydra-lora.md.ReFT was removed from the live tree on 2026-06-08 and downgraded to a bench probe — module, configs, docs and a re-integration map live in
bench/reft/(INTEGRATION.md+impl/).
lora_anima/routers.py::GlobalRouter (re-exported from network.py for back-compat) — Linear(F_in → H) → ReLU → Linear(H → E) → softmax/τ. Built when cfg.route_per_layer=False and cfg.use_moe_style != False. Final layer is zero-init so step-0 gates are uniform; warmup is the symmetry-breaker. Under router_source="crossattn_emb" the router is built with apply_layer_norm=True and input_dim=CROSSATTN_EMB_DIM; its forward RMS-pools a raw (B, L, D) text tensor over the sequence axis and LayerNorms (parameterless) before the MLP — no extra state_dict keys, on/off is deterministic from router_source.
Hook site: LoRANetwork.set_fei(z_t) runs the FEI computation (via library/runtime/fei.py) and the router once, then writes the resulting (B, num_experts) tensor by reference into each routing-aware module's _routing_weights buffer. One Python-level write propagates to every adapted Linear that step — hence the failure mode to watch for: router collapse takes every layer down together.
Training-loop call: train.py fires network.set_fei(noisy_model_input) at the per-step σ/FEI hook block when the cfg has route_per_layer=False and router_source="fei". Inference: library/inference/generation.py mirrors the same call before each Euler step.
© sorryhyun, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
Just SKILL.md in .claude/skills/lora-routing of sorryhyun/anima_lora.
Open the folder on GitHubat commit d16b651
Lora Routing next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Lora Routing this skillsorryhyun/anima_lora | 125 | — | ~1.3k | Automated safety check: Pass | MIT | |
| Sentence-Transformers Training Routerhuggingface/skills | 11k | 1 repos | ~2.6k | Automated safety check: Pass | Apache-2.0 | |
| Train RlOpenPipe/ART | 11k | — | ~2.4k | Automated safety check: Pass | Apache-2.0 | |
| Qwopus27b Rl TrainingR6410418/Jackrong-llm-finetuning-guide | 1.7k | — | ~830 | Automated safety check: Pass | Apache-2.0 | |
| Dataset Evaluationawslabs/agent-plugins | 916 | 1 repos | ~1.3k | Automated safety check: Pass | Apache-2.0 | |
| Train SftOpenPipe/ART | 11k | — | ~2.9k | Automated safety check: Pass | Apache-2.0 |
huggingface/skills
Routes a sentence-transformers training task to the right model type and required reference docs and example scripts, covering bi-encoders, rerankers, sparse and multi-vector models.
OpenPipe/ART
RL training reference for the ART framework. An agent skill from OpenPipe/ART.
R6410418/Jackrong-llm-finetuning-guide
Prepare, validate, launch-plan, monitor, resume, and stop configurable Qwopus 27B reinforcement-learning workflows for GRPO or GSPO.
awslabs/agent-plugins
Validates dataset formatting and quality for SageMaker model fine-tuning (SFT, DPO, or RLVR).
OpenPipe/ART
SFT training reference for the ART framework. An agent skill from OpenPipe/ART.
Orchestra-Research/AI-Research-SKILLs
Fine-tune LLMs using reinforcement learning with TRL - SFT for instruction tuning, DPO for preference alignment, PPO/GRPO for reward optimization, and reward model training.
sorryhyun/anima_lora
The model catalog (library/downloads.py) — one Asset row per weight (repo, files, destination, installed probe), packs, resolve() name order, and the rule that loaders import their default paths…
sorryhyun/anima_lora
Qwen-Image-2.1 LoRA line (NOT Anima) — running cache/train through the daemon, make gui-qwen, the CacheRequest/TrainRequest flag surface and how to add a field, model-dir resolution, cache layout…
sorryhyun/anima_lora
The trainer ↔ animetools boundary — what the curation split moved out, the typed request/stage API the make targets build, the git-pin dev loop and its stale-venv trap, and the tests that guard the…
sorryhyun/anima_lora
Free-fit native-shape bucketing — the token bands per edge tier, tier choice at preprocess time, the compiledynamicseq coupling and per-tier graph budget, and why training never needs --targetres.
sorryhyun/anima_lora
Caption pipeline — position-clause grammar (never hand-split a caption), make caption-autotag modes, make caption-position (v2 rewrite rules and gates), and the preprocess-stage wiring for both.
sorryhyun/anima_lora
The ComfyUI node map — which node lives in which standalone repo vs in-tree under customnodes/, where each is symlinked, and the vendor-sync rule for the vendor/ subsets.
Categories
The LoRA-family three-axis routing surface (usemoestyle / routeperlayer / routersource) — the variant matrix, per-variant module details (LoRA/T-LoRA/Hydra), and GlobalRouter mechanics. Lora Routing is an agent skill from sorryhyun/anima_lora. The LoRA-family three-axis routing surface (usemoestyle / routeperlayer / routersource) — the variant matrix, per-variant module details (LoRA/T-LoRA/Hydra), and GlobalRouter mechanics.
Lora Routing fits situations like: tasks that involve Fine-tuning.
Run `npx skills add sorryhyun/anima_lora --skill lora-routing -a claude-code`. Or copy the skill folder (.claude/skills/lora-routing in sorryhyun/anima_lora) into .claude/skills/lora-routing in your project. Claude Code loads it when a task matches its description.
Run `npx skills add sorryhyun/anima_lora --skill lora-routing -a codex`. Or copy the skill folder (.claude/skills/lora-routing in sorryhyun/anima_lora) into .agents/skills/lora-routing in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add sorryhyun/anima_lora --skill lora-routing -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/lora-routing, .gemini/skills/lora-routing, .github/skills/lora-routing and .opencode/skills/lora-routing in your project.
SKILL.md names no scripts, command-line tools or credentials: Lora Routing is instructions for the agent only.
SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.
Lora Routing is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 1.3k tokens (SKILL.md is roughly 5.2k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.
Skills that share tags, products or a category with Lora Routing: Sentence-Transformers Training Router (huggingface/skills, 11k stars), Train Rl (OpenPipe/ART, 11k stars), Qwopus27b Rl Training (R6410418/Jackrong-llm-finetuning-guide, 1.7k stars) and Dataset Evaluation (awslabs/agent-plugins, 916 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
sorryhyun (a GitHub user) maintains it in sorryhyun/anima_lora, which has 125 GitHub stars. The repository holds 12 skills in this directory. The repository was last updated on October 10, 2026.
Source: sorryhyun/anima_lora on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.