Verbose setting for RewritePass for better logging and debugging
Los mantenedores suelen responder en 3 días
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 3/5
- Tiempo estimado
- 1-2 días
- Aptitud para principiantes
- 55/100
Línea de trabajo
Revisa RewritePass en la implementación del pass ONNX IR correspondiente y optimize_onnx_using_onnx_ir en tetracode/src/www/python/tetrai/compilers/onnx2onnx/optimizer.py. Sigue cómo se construye el pass y cómo se aplican las reglas; después, verifica que una configuración opcional de verbose llegue a la aplicación de reglas, mientras el comportamiento predeterminado permanece sin cambios. Se considera terminado cuando ambos puntos de entrada solicitados admiten la configuración y es observable el registro de los passes activados.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
Problem: I want a setting to know if a pass is triggered.
Solution: Make a flag in RewritePass to be verbose or not.
Here is a proposal. Is there a batter way?
Change RewritePass:
class RewritePass(ir.passes.InPlacePass):
def __init__(
self,
rules: Sequence[pattern.RewriteRule] | pattern.RewriteRuleSet,
/,
verbose: int = 0, # ADD THIS
) -> None:
super().__init__()
if isinstance(rules, Sequence):
if not rules:
raise ValueError("rules must not be empty")
rules = pattern.RewriteRuleSet(rules)
assert isinstance(rules, pattern.RewriteRuleSet)
self.rules: pattern.RewriteRuleSet = rules
self.verbose = verbose # ADD THIS
def call(self, model: ir.Model) -> ir.passes.PassResult:
count = self.rules.apply_to_model(model, verbose=self.verbose if self.verbose else None) # CHANGE THIS LINE
if count:
print(f"Applied {count} of general pattern rewrite rules.")
return ir.passes.PassResult(model, bool(count))
File 2: tetracode/src/www/python/tetrai/compilers/onnx2onnx/optimizer.py
Add verbose parameter and pass it:
def optimize_onnx_using_onnx_ir(
onnx_model: rewriter._ModelProtoOrIr,
rewrite_rules: Sequence[rewriter.pattern.RewriteRule] | None = None,
logger: TetraLoggerAdapter = TetraLoggerAdapter(__name__),
verbose: int = 0, # ADD THIS
) -> rewriter._ModelProtoOrIr:
...
passes = [
...
rewriter.RewritePass(rewrite_rules, verbose=verbose), # ADD verbose HERE
...
]
- Lenguaje dominante
- Python
- Estrellas
- 457
- Forks
- 149
- Merge medio
- 3 d 19 h
- PR fusionados (30 d)
- 23
Preparar el entorno
- Sin Dockerfile ni archivo de Docker Compose
- Sin 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 microsoft/onnxscript
-
[torchlib] log2 and log10 lose float64 precisionPosiblemente ocupada @Syedmudassir1604 la tomó hace 1 día. Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
microsoft/onnxscript#3143 ·
Los mantenedores suelen responder en 3 días
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
microsoft/onnxscript#3003 · 3 comentarios ·
Los mantenedores suelen responder en 3 días
-
CI : Pin github actions to full commit SHAPosiblemente ocupada @Aniketsy la tomó hace 182 días. Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 68/100
microsoft/onnxscript#2903 · 6 comentarios ·
Los mantenedores suelen responder en 3 días
-
optimize() crashes when constant folding produces a string tensorPosiblemente ocupada @nniiovoo la tomó hace 7 días. Abierto
Dificultad 3/5 1-2 días Aptitud para principiantes 35/100
microsoft/onnxscript#3129 ·
Los mantenedores suelen responder en 3 días
-
bug module: torchlib
Dificultad 3/5 1-2 días Aptitud para principiantes 64/100
microsoft/onnxscript#3124 · 3 comentarios · 1 reacción ·
Los mantenedores suelen responder en 3 días
Todos los issues de microsoft/onnxscript
Issues similares
-
bug
Dificultad 2/5 1-3 horas Aptitud para principiantes 66/100
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
yt-project/yt#5624 ·
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
-
bug
Dificultad 2/5 1-3 horas Aptitud para principiantes 82/100
NousResearch/hermes-agent#148376 ·
Los mantenedores suelen responder en 1 día
-
Analysis
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
SACGF/variantgrid#2615 ·
Los mantenedores suelen responder en 1 día