Files
fn_registry/python/functions/ml/genconfig_to_sdcpp_args.md
T
egutierrez 47fac22230 chore: auto-commit (799 archivos)
- .claude/CLAUDE.md
- .claude/commands/subagentes.md
- .claude/rules/INDEX.md
- .mcp.json
- bash/functions/cybersecurity/analyze_dns.md
- bash/functions/cybersecurity/audit_http_headers.md
- bash/functions/cybersecurity/audit_ssh_config.md
- bash/functions/cybersecurity/check_firewall.md
- bash/functions/cybersecurity/detect_suspicious_users.md
- bash/functions/cybersecurity/encrypt_file.md
- ...

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-14 00:28:20 +02:00

2.5 KiB

name, kind, lang, domain, version, purity, signature, description, tags, params, output, uses_functions, uses_types, returns, returns_optional, error_type, imports, tested, tests, test_file_path, file_path
name kind lang domain version purity signature description tags params output uses_functions uses_types returns returns_optional error_type imports tested tests test_file_path file_path
genconfig_to_sdcpp_args function py ml 1.0.0 pure def genconfig_to_sdcpp_args(cfg: GenerationConfig) -> list[str] Convierte un GenerationConfig a lista de args CLI para stable-diffusion.cpp (sd-cli). Mapea sampler via _SAMPLER_MAP, aplana LoRAs como pares --lora path:weight. Sin I/O ni dependencias externas.
ml
sdcpp
stable-diffusion-cpp
cli
converter
pure
pendiente-usar
name desc
cfg Instancia de GenerationConfig con los parametros de generacion validados.
Lista de strings con los argumentos CLI en orden. Listo para subprocess.run(['sd'] + args, ...).
generation_config_py_ml
false
true
sampler euler_a se mapea a euler_a en el flag --sampling-method
sampler dpm++2m se mapea a dpmpp2m
lora con path y weight se agrega como --lora path:weight
multiples loras generan multiples pares --lora
negative_prompt None produce string vacio en --negative-prompt
model.path tiene prioridad sobre model.name en -m
args contiene --prompt --seed --steps --cfg-scale --sampling-method -W -H -m
python/functions/ml/tests/test_genconfig_to_sdcpp_args.py python/functions/ml/genconfig_to_sdcpp_args.py

Ejemplo

from ml.genconfig_to_sdcpp_args import genconfig_to_sdcpp_args
from ml.generation_config import GenerationConfig
from ml.model_ref import ModelRef
from ml.lora_ref import LoraRef

cfg = GenerationConfig(
    prompt="a cat",
    seed=1,
    steps=20,
    cfg_scale=7.0,
    sampler="dpm++2m",
    width=512,
    height=512,
    model=ModelRef(name="v1-5", model_type="sd15", path="/models/v1-5.ckpt"),
    loras=[LoraRef(path="/loras/detail.safetensors", weight=0.8)],
)

args = genconfig_to_sdcpp_args(cfg)
# ["--prompt", "a cat", "--negative-prompt", "", "--seed", "1",
#  "--steps", "20", "--cfg-scale", "7.0", "--sampling-method", "dpmpp2m",
#  "-W", "512", "-H", "512", "-m", "/models/v1-5.ckpt",
#  "--lora", "/loras/detail.safetensors:0.8"]

Notas

Mapa de samplers (_SAMPLER_MAP):

  • euler → euler
  • euler_a → euler_a
  • dpm++2m → dpmpp2m
  • dpm++2m_v2 → dpmpp2mv2
  • heun → heun
  • dpm2 → dpm2
  • lcm → lcm

Si cfg.model.path es None, se usa cfg.model.name (nombre de hub o path relativo segun configuracion del entorno sdcpp). Los LoRAs sin path se omiten silenciosamente.