huggingface / huggingface/diffusers
[design] adding a `validation` decorator
- Lenguaje dominante
- Python
- Estrellas
- 34.5k
- Forks
- 7.3k
- Merge medio
- 3 d 3 h
- PR fusionados (30 d)
- 91
Descripción
We try to avoid using the `kwargs` argument at diffusers because it's error prone and makes our code less readable. However, there are some instances where a fixed signature might not be practical. For example, our default attention processor class `AttnProcessor/AttnProcessor2.0` can now be used in conjunction with other attention processors such as `IPAdapterProcessor`. If we need to pass a new argument to `IPAdapterProcessor`, we will need to add it to the `AttnProcessor`'s signature as well. It may be worthwhile to consider adding a `validation` decorator https://github.com/huggingface/huggingface_hub/blob/c528f78fa7404869f32a2b04eac0f9964a5c6f9e/src/huggingface_hub/utils/_validators.py#L46 for this use case
(Original discussion can be found here: https://github.com/huggingface/diffusers/pull/6573#discussion_r1463072069.)
Guía de contribución
Línea de trabajo
Comience con la discusión original en PR #6573 y la implementación referenciada de huggingface_hub/utils/_validators.py. Compare ese decorador con el problema de signaturas de AttnProcessor, AttnProcessor2.0 e IPAdapterProcessor descrito aquí; para darlo por terminado se requiere un diseño acordado y unos puntos de entrada afectados claros, que este issue todavía no especifica.
Escrito por el modelo de indexación a partir del texto del issue.
Evaluación
- Stack tecnológico
- python
- Área
- backend-api-design
- Tipo de issue
- Nueva funcionalidad
- Dificultad
- 5/5
- Tiempo estimado
- Más de una semana
- Estado de actividad
- Estancado
- Claridad
- Necesita aclaración
- Aptitud para principiantes
- 25/100