GSPO sequence-parallel (SDP/SP) paths are untested (loss + metrics)
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 4/5
- Tiempo estimado
- 3-5 días
- Aptitud para principiantes
- 25/100
- Tipo de issue
- Error
- Claridad
- Bastante claro
- Estado de actividad
- Tranquilo
- Stack tecnológico
- distributed-systems, python
- Área
- testing-qa
Línea de trabajo
Start in fast_llm/layers/language_model/loss/policy_gradient.py, where fused_gspo_loss_forward_backward and compute_gspo_metrics all-reduce over sdp_group and sp_group. Then read _run_lm_loss_distributed and _test_gspo_metrics in tests/layers/test_lm_losses.py, which only exercise the vocab-parallel group. Done means a sequence-split test path that checks the reduced segment aggregates against a single-rank reference, plus a gspo loss subtest.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
Claude Opus 4.8 note: surfaced during review of #555.
Both the GSPO loss kernel (fused_gspo_loss_forward_backward) and the GSPO diagnostic metrics (compute_gspo_metrics) in fast_llm/layers/language_model/loss/policy_gradient.py all-reduce their per-segment buffers over the sequence-data-parallel (sdp_group) and sequence-parallel (sp_group) groups, to reconstruct per-document/segment aggregates when the sequence is split across those ranks.
Gap: the distributed test harness (_run_lm_loss_distributed / _test_gspo_metrics in tests/layers/test_lm_losses.py) only ever drives the vocab-parallel group (it splits the vocab dimension). sdp_group/sp_group stay at their None defaults, so those all_reduce branches never execute under test. There is also no gspo loss subtest in _run_lm_loss_distributed at all — only grpo, grpo_metrics, and gspo_metrics.
Why it needs its own effort: exercising the SDP/SP reduction requires a sequence-split test path (partition tokens/documents across ranks along the sequence dimension, then verify the reduced segment aggregates match a single-rank reference), which is beyond the current 2-rank vocab-split harness.
Single-rank and vocab-parallel paths are tested and verified; this issue tracks the remaining SDP/SP coverage for both the GSPO loss and its metrics.
- Lenguaje dominante
- Python
- Estrellas
- 337
- Forks
- 52
- Métricas de merge de PR
- Sin PR fusionados en 30 d
Preparar el entorno
- Incluye un Dockerfile o un archivo de Docker Compose
- Tiene una plantilla de pull request
- Leer la guía de contribución
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de ServiceNow/Fast-LLM
-
Dificultad 4/5 3-5 días Aptitud para principiantes 30/100
ServiceNow/Fast-LLM#538 ·
-
enhancement
Dificultad 5/5 Más de una semana Aptitud para principiantes 12/100
ServiceNow/Fast-LLM#533 ·
-
Dificultad 5/5 Más de una semana Aptitud para principiantes 15/100
ServiceNow/Fast-LLM#510 · 1 comentario ·
-
Dificultad 5/5 Más de una semana Aptitud para principiantes 12/100
ServiceNow/Fast-LLM#507 ·
-
Dificultad 4/5 3-5 días Aptitud para principiantes 25/100
ServiceNow/Fast-LLM#500 ·
Todos los issues de ServiceNow/Fast-LLM
Issues similares
-
area/profiles comp/cli P3 type/feature
Dificultad 2/5 1-3 horas Aptitud para principiantes 74/100
NousResearch/hermes-agent#146372 ·
Los mantenedores suelen responder en 1 día
-
[BUG] OpenAI-compatible embedding model alias breaks embedder constructionPosiblemente ocupada Un pull request vinculado a esta issue está abierto o ya se fusionó. Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 65/100
Los mantenedores suelen responder en 1 día
-
[oblt-aw][autodoc] Document obs-aw-automerge contract and fix automerge doc inconsistenciesPosiblemente ocupada @github-actions la tomó hoy. Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 76/100
Los mantenedores suelen responder en 1 día
-
GeoSeries scale and skew tests fail with pytest 9.2.0Posiblemente ocupada @jiayuasu la tomó hoy. Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 82/100
Los mantenedores suelen responder en 1 día
-
admission-deferred priority: medium status: ready work-class: scoped
Dificultad 2/5 1-3 horas Aptitud para principiantes 70/100
melodic-software/claude-code-plugins#10887 · 4 comentarios ·
Los mantenedores suelen responder en 1 día