Hub Python Library documentation

Tarjetas de repositorio

Hugging Face's logo
Join the Hugging Face community

and get access to the augmented documentation experience

to get started

Tarjetas de repositorio

La biblioteca huggingface_hub proporciona una interfaz de Python para crear, compartir y actualizar tarjetas de modelos/datasets. Visita la página de documentación dedicada para una visión más profunda de qué son las tarjetas de modelos en el Hub y cómo funcionan por debajo. También puedes consultar nuestra guía de tarjetas de modelos para hacerte una idea de cómo utilizarías estas utilidades en tus propios proyectos.

Tarjeta del repositorio

El objeto RepoCard es la clase padre de ModelCard, DatasetCard y SpaceCard.

clase huggingface_hub.RepoCard

< >

( content: strignore_metadata_errors: bool = False )

__init__

< >

( content: strignore_metadata_errors: bool = False )

Parámetros

  • content (str) — El contenido del archivo Markdown.

Inicializa un RepoCard a partir de contenido de cadena. El contenido debe ser un archivo Markdown con un bloque YAML al inicio y un cuerpo Markdown.

Ejemplo:

>>> from huggingface_hub.repocard import RepoCard
>>> text = '''
... ---
... language: en
... license: mit
... ---
...
... # My repo
... '''
>>> card = RepoCard(text)
>>> card.data.to_dict()
{'language': 'en', 'license': 'mit'}
>>> card.text
'\n# My repo\n'
> [!TIP] > Raises the following error: > > - [`ValueError`](https://docs.python.org/3/library/exceptions.html#ValueError) > when the content of the repo card metadata is not a dictionary.

from_template

< >

( card_data: CardDatatemplate_path: str | None = Nonetemplate_str: str | None = None**template_kwargs ) → huggingface_hub.repocard.RepoCard

Parámetros

  • card_data (huggingface_hub.CardData) — Una instancia de huggingface_hub.CardData que contiene los metadatos que deseas incluir en la cabecera YAML de la tarjeta del repositorio en Hugging Face Hub.
  • template_path (str, opcional) — Una ruta a un archivo markdown con variables de plantilla Jinja opcionales que se pueden completar con template_kwargs. El valor predeterminado es la plantilla predeterminada.
  • template_str (str, opcional) — Una cadena de plantilla Jinja sin procesar con variables opcionales. Se utiliza cuando ni template_path ni la plantilla predeterminada son adecuadas. Se ignora si también se proporciona template_path.

Una instancia de RepoCard con los datos de tarjeta especificados y el contenido de la plantilla.

Inicializa un RepoCard a partir de una plantilla. De forma predeterminada, utiliza la plantilla predeterminada.

Los plantillas son plantillas Jinja2 que se pueden personalizar pasando argumentos de palabra clave.

carga

< >

( repo_id_or_path: str | pathlib.Pathrepo_type: str | None = Nonetoken: str | None = Noneignore_metadata_errors: bool = False ) → huggingface_hub.repocard.RepoCard

Parámetros

  • repo_id_or_path (Union[str, Path]) — El ID de repositorio asociado a un repositorio de Hugging Face Hub o una ruta de archivo local.
  • repo_type (str, opcional) — El tipo de repositorio de Hugging Face al que se enviarán los datos. El valor predeterminado es None, lo que utilizará “model”. Las otras opciones son “dataset” y “space”. No se utiliza al cargar desde una ruta de archivo local. Si se llama desde una clase hija, el valor predeterminado será el repo_type de la clase hija.
  • token (str, opcional) — Token de autenticación, obtenido con el método huggingface_hub.HfApi.login. Por defecto, se utilizará el token almacenado.
  • ignore_metadata_errors (str) — Si es True, los errores al analizar la sección de metadatos se ignorarán. Puede perderse cierta información durante el proceso. Úselo bajo su propio riesgo.

La RepoCard (o subclase) inicializada a partir del archivo README.md o ruta de archivo del repositorio.

Inicializa un RepoCard a partir del README.md de un repositorio de Hugging Face Hub o de una ruta de archivo local.

Ejemplo:

>>> from huggingface_hub.repocard import RepoCard
>>> card = RepoCard.load("nateraw/food")
>>> assert card.data.tags == ["generated_from_trainer", "image-classification", "pytorch"]

push_to_hub

< >

( repo_id: strtoken: str | None = Nonerepo_type: str | None = Nonecommit_message: str | None = Nonecommit_description: str | None = Nonerevision: str | None = Nonecreate_pr: bool | None = Noneparent_commit: str | None = None ) → str

Parámetros

  • repo_id (str) — El ID del repositorio de Hugging Face Hub al que se enviarán los datos. Ejemplo: “nateraw/food”.
  • token (str, opcional) — Token de autenticación, obtenido con el método huggingface_hub.HfApi.login. Por defecto, se utilizará el token almacenado.
  • repo_type (str, opcional, valor predeterminado “model”) — El tipo de repositorio de Hugging Face al que se enviarán los datos. Las opciones son “model”, “dataset” y “space”. Si esta función es llamada por una clase hija, el valor predeterminado será el repo_type de la clase hija.
  • commit_message (str, opcional) — El resumen / título / primera línea del commit generado.
  • commit_description (str, opcional) — La descripción del commit generado.
  • revision (str, opcional) — La revisión de git desde la que se realizará el commit. Por defecto, es la cabecera de la rama "main".
  • create_pr (bool, opcional) — Indica si se debe crear una Pull Request con este commit. El valor predeterminado es False.
  • parent_commit (str, opcional) — El OID / SHA del commit padre, como una cadena hexadecimal. También se admiten abreviaturas (los 7 primeros caracteres). Si se especifica y create_pr es False, el commit fallará si revision no apunta a parent_commit. Si se especifica y create_pr es True, la pull request se creará desde parent_commit. Especificar parent_commit garantiza que el repositorio no haya cambiado antes de confirmar los cambios, y puede ser especialmente útil si el repositorio se actualiza / confirma de forma concurrente.

Devuelve

str

URL del commit que actualizó los metadatos de la tarjeta.

Sube un RepoCard a un repositorio de Hugging Face Hub.

save

< >

( filepath: pathlib.Path | str )

Parámetros

  • filepath (Union[Path, str]) — Ruta de archivo del archivo de markdown a guardar.

Guardar una RepoCard en un archivo.

Ejemplo:

>>> from huggingface_hub.repocard import RepoCard
>>> card = RepoCard("---\nlanguage: en\n---\n# This is a test repo card")
>>> card.save("/tmp/test.md")

validate

< >

( repo_type: str | None = None )

Parámetros

  • repo_type (str, opcional, valor predeterminado “model”) — El tipo de repositorio de Hugging Face al que se enviará. Las opciones son “model”, “dataset” y “space”. Si esta función se llama desde una clase hija, el valor predeterminado será el repo_type de la clase hija.

Valida la tarjeta contra la lógica de validación de tarjetas del Hugging Face Hub. El uso de esta función requiere acceso a internet, por lo que solo se llama internamente por huggingface_hub.repocard.RepoCard.push_to_hub().

Lanza los siguientes errores:

  • ValueError si la tarjeta no supera las comprobaciones de validación.
  • HTTPError si la solicitud a la API de Hub falla por cualquier otra razón.

Datos de la tarjeta

El objeto CardData es la clase padre de ModelCardData y DatasetCardData.

clase huggingface_hub.CardData

< >

( ignore_metadata_errors: bool = False**kwargs )

Estructura que contiene metadatos de una RepoCard.

CardData es la clase padre de ModelCardData y DatasetCardData.

Los metadatos se pueden exportar como un diccionario o YAML. La exportación se puede personalizar para alterar la representación de los datos (ejemplo: aplanar los resultados de evaluación). CardData se comporta como un diccionario (puede obtener, eliminar y establecer valores) pero no hereda de dict para permitir esta etapa de exportación.

get

< >

( key: strdefault: typing.Any = None )

Obtener el valor para una clave de metadatos dada.

pop

< >

( key: strdefault: typing.Any = None )

Valor de pop para una clave de metadatos dada.

to_dict

< >

( ) → dict

Devuelve

dict

CardData representado como un diccionario listo para volcarse en un bloque YAML para su inclusión en un archivo README.md.

Convierte CardData en un dict.

to_yaml

< >

( line_break = Noneoriginal_order: list[str] | None = None ) → str

Parámetros

  • line_break (str, opcional) — El salto de línea que se utilizará al volcar a yaml.
  • original_order (list[str], opcional) — Si se proporciona, reordena los campos de metadatos para que coincidan con esta lista antes de volcarlos. Cualquier clave que no esté en original_order se añade después de las claves enumeradas, preservando su orden relativo existente. Útil para realizar un recorrido de ida y vuelta de un bloque YAML sin alterar el orden de sus claves.

Devuelve

str

CardData representado como un bloque YAML.

Volca CardData en un bloque YAML para su inclusión en un archivo README.md.

Tarjetas de modelos

ModelCard

clase huggingface_hub.ModelCard

< >

( content: strignore_metadata_errors: bool = False )

from_template

< >

( card_data: ModelCardDatatemplate_path: str | None = Nonetemplate_str: str | None = None**template_kwargs ) → huggingface_hub.ModelCard

Parámetros

  • card_data (huggingface_hub.ModelCardData) — Una instancia de huggingface_hub.ModelCardData que contiene los metadatos que deseas incluir en la cabecera YAML de la tarjeta del modelo en Hugging Face Hub.
  • template_path (str, opcional) — Una ruta a un archivo markdown con variables de plantilla Jinja opcionales que se pueden completar con template_kwargs. El valor predeterminado es la plantilla predeterminada.
  • template_str (str, opcional) — Una cadena de plantilla Jinja sin procesar con variables opcionales. Se utiliza cuando ni template_path ni la plantilla predeterminada son adecuadas. Se ignora si también se proporciona template_path.

Una instancia de ModelCard con los datos de la tarjeta especificados y el contenido de la plantilla.

Inicializa una ModelCard a partir de una plantilla. De forma predeterminada, utiliza la plantilla predeterminada, que se puede encontrar aquí: https://github.com/huggingface/huggingface_hub/blob/main/src/huggingface_hub/templates/modelcard_template.md

Los plantillas son plantillas Jinja2 que se pueden personalizar pasando argumentos de palabra clave.

Ejemplo:

>>> from huggingface_hub import ModelCard, ModelCardData, EvalResult

>>> # Using the Default Template
>>> card_data = ModelCardData(
...     language='en',
...     license='mit',
...     library_name='timm',
...     tags=['image-classification', 'resnet'],
...     datasets=['beans'],
...     metrics=['accuracy'],
... )
>>> card = ModelCard.from_template(
...     card_data,
...     model_description='This model does x + y...'
... )

>>> # Including Evaluation Results
>>> card_data = ModelCardData(
...     language='en',
...     tags=['image-classification', 'resnet'],
...     eval_results=[
...         EvalResult(
...             task_type='image-classification',
...             dataset_type='beans',
...             dataset_name='Beans',
...             metric_type='accuracy',
...             metric_value=0.9,
...         ),
...     ],
...     model_name='my-cool-model',
... )
>>> card = ModelCard.from_template(card_data)

>>> # Using a Custom Template
>>> card_data = ModelCardData(
...     language='en',
...     tags=['image-classification', 'resnet']
... )
>>> card = ModelCard.from_template(
...     card_data=card_data,
...     template_path='./src/huggingface_hub/templates/modelcard_template.md',
...     custom_template_var='custom value',  # will be replaced in template if it exists
... )

ModelCardData

clase huggingface_hub.ModelCardData

< >

( base_model: str | list[str] | None = Nonedatasets: str | list[str] | None = Noneeval_results: list[huggingface_hub.repocard_data.EvalResult] | None = Nonelanguage: str | list[str] | None = Nonelibrary_name: str | None = Nonelicense: str | None = Nonelicense_name: str | None = Nonelicense_link: str | None = Nonemetrics: list[str] | None = Nonemodel_name: str | None = Nonepipeline_tag: str | None = Nonetags: list[str] | None = Noneignore_metadata_errors: bool = False**kwargs )

Parámetros

  • base_model (str o list[str], opcional) — El identificador del modelo base del que deriva el modelo. Esto es aplicable, por ejemplo, si su modelo es un ajuste fino o un adaptador de un modelo existente. El valor debe ser el ID de un modelo en el Hub (o una lista de IDs si su modelo deriva de varios modelos). El valor predeterminado es None.
  • datasets (Union[str, list[str]], opcional) — Conjunto de datos o lista de conjuntos de datos que se utilizaron para entrenar este modelo. Debe ser un ID de conjunto de datos encontrado en https://hf.co/datasets. El valor predeterminado es None.
  • eval_results (Union[list[EvalResult], EvalResult], opcional) — Lista de huggingface_hub.EvalResult que definen los resultados de evaluación del modelo. Si se proporciona, model_name se utiliza como nombre en los tableros de clasificación de PapersWithCode. El valor predeterminado es None.
  • language (Union[str, list[str]], opcional) — Idioma de los datos de entrenamiento o metadatos del modelo. Debe ser un código ISO 639-1, 639-2 o 639-3 (dos/tres letras), o un valor especial como “code”, “multilingual”. El valor predeterminado es None.
  • library_name (str, opcional) — Nombre de la biblioteca utilizada por este modelo. Ejemplo: keras o cualquier biblioteca de https://github.com/huggingface/huggingface.js/blob/main/packages/tasks/src/model-libraries.ts. Por defecto, None.
  • license (str, opcional) — Licencia de este modelo. Ejemplo: apache-2.0 o cualquier licencia de https://huggingface.co/docs/hub/repositories-licenses. El valor predeterminado es None.
  • license_name (str, opcional) — Nombre de la licencia de este modelo. El valor predeterminado es None. Debe usarse en conjunto con license_link. Las licencias comunes (Apache-2.0, MIT, CC-BY-SA-4.0) no necesitan un nombre. En ese caso, use license en su lugar.
  • license_link (str, opcional) — Enlace a la licencia de este modelo. El valor predeterminado es None. Debe usarse en conjunto con license_name. Las licencias comunes (Apache-2.0, MIT, CC-BY-SA-4.0) no requieren un enlace. En ese caso, use license en su lugar.
  • metrics (list[str], opcional) — Lista de métricas utilizadas para evaluar este modelo. Debe ser un nombre de métrica que se pueda encontrar en https://hf.co/metrics. Ejemplo: ‘accuracy’. El valor predeterminado es None.
  • model_name (str, opcional) — Un nombre para este modelo. Se utiliza junto con eval_results para construir el model-index dentro de los metadatos de la tarjeta. El nombre que proporcione aquí es el que se utilizará en los tableros de clasificación de PapersWithCode. Si se proporciona None, se utiliza el nombre del repositorio como valor predeterminado. El valor predeterminado es None.
  • pipeline_tag (str, opcional) — La etiqueta de pipeline asociada con el modelo. Ejemplo: “text-classification”.
  • tags (list[str], opcional) — Lista de etiquetas para añadir a tu modelo que se pueden usar al filtrar en el Hugging Face Hub. El valor predeterminado es None.
  • ignore_metadata_errors (str) — Si es True, los errores al analizar la sección de metadatos se ignorarán. Puede perderse cierta información durante el proceso. Úselo bajo su propio riesgo.
  • kwargs (dict, opcional) — Metadatos adicionales que se añadirán a la tarjeta del modelo. El valor predeterminado es None.

Metadatos de la tarjeta del modelo que se utilizan en Hugging Face Hub cuando se incluyen al inicio de tu README.md

Ejemplo:

>>> from huggingface_hub import ModelCardData
>>> card_data = ModelCardData(
...     language="en",
...     license="mit",
...     library_name="timm",
...     tags=['image-classification', 'resnet'],
... )
>>> card_data.to_dict()
{'language': 'en', 'license': 'mit', 'library_name': 'timm', 'tags': ['image-classification', 'resnet']}

Tarjetas de conjuntos de datos

Las tarjetas de conjuntos de datos también se conocen como tarjetas de datos en la comunidad de ML.

DatasetCard

clase huggingface_hub.DatasetCard

< >

( content: strignore_metadata_errors: bool = False )

from_template

< >

( card_data: DatasetCardDatatemplate_path: str | None = Nonetemplate_str: str | None = None**template_kwargs ) → huggingface_hub.DatasetCard

Parámetros

  • card_data (huggingface_hub.DatasetCardData) — Una instancia de huggingface_hub.DatasetCardData que contiene los metadatos que deseas incluir en la cabecera YAML de la tarjeta del conjunto de datos en Hugging Face Hub.
  • template_path (str, opcional) — Una ruta a un archivo markdown con variables de plantilla Jinja opcionales que se pueden completar con template_kwargs. El valor predeterminado es la plantilla predeterminada.
  • template_str (str, opcional) — Una cadena de plantilla Jinja sin procesar con variables opcionales. Se utiliza cuando ni template_path ni la plantilla predeterminada son adecuadas. Se ignora si también se proporciona template_path.

Una instancia de DatasetCard con los datos de la tarjeta especificados y el contenido de la plantilla.

Inicializa un DatasetCard a partir de una plantilla. De forma predeterminada, utiliza la plantilla predeterminada, que se puede encontrar aquí: https://github.com/huggingface/huggingface_hub/blob/main/src/huggingface_hub/templates/datasetcard_template.md

Los plantillas son plantillas Jinja2 que se pueden personalizar pasando argumentos de palabra clave.

Ejemplo:

>>> from huggingface_hub import DatasetCard, DatasetCardData

>>> # Using the Default Template
>>> card_data = DatasetCardData(
...     language='en',
...     license='mit',
...     annotations_creators='crowdsourced',
...     task_categories=['text-classification'],
...     task_ids=['sentiment-classification', 'text-scoring'],
...     multilinguality='monolingual',
...     pretty_name='My Text Classification Dataset',
... )
>>> card = DatasetCard.from_template(
...     card_data,
...     pretty_name=card_data.pretty_name,
... )

>>> # Using a Custom Template
>>> card_data = DatasetCardData(
...     language='en',
...     license='mit',
... )
>>> card = DatasetCard.from_template(
...     card_data=card_data,
...     template_path='./src/huggingface_hub/templates/datasetcard_template.md',
...     custom_template_var='custom value',  # will be replaced in template if it exists
... )

DatasetCardData

clase huggingface_hub.DatasetCardData

< >

( language: str | list[str] | None = Nonelicense: str | list[str] | None = Noneannotations_creators: str | list[str] | None = Nonelanguage_creators: str | list[str] | None = Nonemultilinguality: str | list[str] | None = Nonesize_categories: str | list[str] | None = Nonesource_datasets: list[str] | None = Nonetask_categories: str | list[str] | None = Nonetask_ids: str | list[str] | None = Nonepaperswithcode_id: str | None = Nonepretty_name: str | None = Nonetrain_eval_index: dict | None = Noneconfig_names: str | list[str] | None = Noneignore_metadata_errors: bool = False**kwargs )

Parámetros

  • language (list[str], opcional) — Idioma de los datos o metadatos del conjunto de datos. Debe ser un código ISO 639-1, 639-2 o 639-3 (dos/tres letras), o un valor especial como “code”, “multilingual”.
  • license (Union[str, list[str]], opcional) — Licencia(s) de este conjunto de datos. Ejemplo: apache-2.0 o cualquier licencia de https://huggingface.co/docs/hub/repositories-licenses.
  • annotations_creators (Union[str, list[str]], opcional) — Cómo se crearon las anotaciones del conjunto de datos. Las opciones son: ‘found’, ‘crowdsourced’, ‘expert-generated’, ‘machine-generated’, ‘no-annotation’, ‘other’.
  • language_creators (Union[str, list[str]], opcional) — Cómo se crearon los datos basados en texto del conjunto de datos. Las opciones son: ‘found’, ‘crowdsourced’, ‘expert-generated’, ‘machine-generated’, ‘other’
  • multilinguality (Union[str, list[str]], opcional) — Si el conjunto de datos es multilingüe. Las opciones son: ‘monolingual’, ‘multilingual’, ‘translation’, ‘other’.
  • size_categories (Union[str, list[str]], opcional) — El número de ejemplos en el conjunto de datos. Las opciones son: ‘n<1K’, ‘1K1T’, y ‘other’.
  • source_datasets (list[str]], opcional) — Indica si el conjunto de datos es original o se ha extendido a partir de otro conjunto de datos existente. Las opciones son: ‘original’ y ‘extended’.
  • task_categories (Union[str, list[str]], opcional) — ¿Qué categorías de tareas admite el conjunto de datos?
  • task_ids (Union[str, list[str]], opcional) — ¿Qué tareas específicas admite el conjunto de datos?
  • paperswithcode_id (str, opcional) — ID del conjunto de datos en PapersWithCode.
  • pretty_name (str, opcional) — Un nombre más legible para el conjunto de datos. (ej. “Cats vs. Dogs”)
  • train_eval_index (dict, opcional) — Un diccionario que describe la especificación necesaria para realizar la evaluación en el Hub. Si no se proporciona, se obtendrá de la clave ‘train-eval-index’ de los kwargs.
  • config_names (Union[str, list[str]], opcional) — Una lista de las configuraciones de datos disponibles para el conjunto de datos.

Metadatos de la tarjeta del conjunto de datos que se utilizan en Hugging Face Hub cuando se incluyen al inicio de tu README.md

Space Cards

SpaceCard

clase huggingface_hub.SpaceCard

< >

( content: strignore_metadata_errors: bool = False )

SpaceCardData

clase huggingface_hub.SpaceCardData

< >

( title: str | None = Nonesdk: str | None = Nonesdk_version: str | None = Nonepython_version: str | None = Noneapp_file: str | None = Noneapp_port: int | None = Nonelicense: str | None = Noneduplicated_from: str | None = Nonemodels: list[str] | None = Nonedatasets: list[str] | None = Nonetags: list[str] | None = Noneignore_metadata_errors: bool = False**kwargs )

Parámetros

  • title (str, opcional) — Título del Space.
  • sdk (str, opcional) — SDK del Space (uno de gradio, streamlit, docker o static).
  • sdk_version (str, opcional) — Versión del SDK utilizado (si es el sdk de Gradio/Streamlit).
  • python_version (str, opcional) — Versión de Python utilizada en el Space (si es sdk de Gradio/Streamlit).
  • app_file (str, opcional) — Ruta a su archivo de aplicación principal (que contiene código Python de gradio o streamlit, o código html estático). La ruta es relativa a la raíz del repositorio.
  • app_port (str, opcional) — Puerto en el que se está ejecutando su aplicación. Se utiliza solo si sdk es docker.
  • license (str, opcional) — Licencia de este modelo. Ejemplo: apache-2.0 o cualquier licencia de https://huggingface.co/docs/hub/repositories-licenses.
  • duplicated_from (str, opcional) — ID del Space original si este es un Space duplicado.
  • models (list[str], opcional) — Lista de modelos relacionados con este Space. Debe ser un ID de dataset encontrado en https://hf.co/models.
  • datasets (list[str], opcional) — Lista de conjuntos de datos relacionados con este Space. Debe ser un ID de conjunto de datos encontrado en https://hf.co/datasets.
  • tags (list[str], opcional) — Lista de etiquetas para añadir a tu Space que se pueden utilizar al filtrar en el Hub.
  • ignore_metadata_errors (str) — Si es True, los errores al analizar la sección de metadatos se ignorarán. Puede perderse cierta información durante el proceso. Úselo bajo su propio riesgo.
  • kwargs (dict, opcional) — Metadatos adicionales que se añadirán a la tarjeta del espacio.

Metadatos de la Space Card que utiliza Hugging Face Hub cuando se incluyen al inicio de tu README.md

Para obtener una referencia exhaustiva de la configuración de Spaces, visite https://huggingface.co/docs/hub/spaces-config-reference#spaces-configuration-reference.

Ejemplo:

>>> from huggingface_hub import SpaceCardData
>>> card_data = SpaceCardData(
...     title="Dreambooth Training",
...     license="mit",
...     sdk="gradio",
...     duplicated_from="multimodalart/dreambooth-training"
... )
>>> card_data.to_dict()
{'title': 'Dreambooth Training', 'sdk': 'gradio', 'license': 'mit', 'duplicated_from': 'multimodalart/dreambooth-training'}

Utilidades

EvalResult

clase huggingface_hub.EvalResult

< >

( task_type: strdataset_type: strdataset_name: strmetric_type: strmetric_value: typing.Anytask_name: str | None = Nonedataset_config: str | None = Nonedataset_split: str | None = Nonedataset_revision: str | None = Nonedataset_args: dict[str, typing.Any] | None = Nonemetric_name: str | None = Nonemetric_config: str | None = Nonemetric_args: dict[str, typing.Any] | None = Noneverified: bool | None = Noneverify_token: str | None = Nonesource_name: str | None = Nonesource_url: str | None = None )

Parámetros

  • task_type (str) — El identificador de la tarea. Ejemplo: “image-classification”.
  • dataset_type (str) — El identificador del conjunto de datos. Ejemplo: “common_voice”. Utilice el identificador del conjunto de datos de https://hf.co/datasets.
  • dataset_name (str) — Un nombre descriptivo para el conjunto de datos. Ejemplo: “Common Voice (French)“.
  • metric_type (str) — El identificador de la métrica. Ejemplo: “wer”. Utilice el id de la métrica de https://hf.co/metrics.
  • metric_value (Any) — El valor de la métrica. Ejemplo: 0.9 o “20.0 ± 1.2”.
  • task_name (str, opcional) — Un nombre descriptivo para la tarea. Ejemplo: “Speech Recognition”.
  • dataset_config (str, opcional) — El nombre de la configuración del conjunto de datos utilizado en load_dataset(). Ejemplo: fr en load_dataset("common_voice", "fr"). Consulte la documentación de datasets para obtener más información: https://hf.co/docs/datasets/package_reference/loading_methods#datasets.load_dataset.name
  • dataset_split (str, opcional) — La partición utilizada en load_dataset(). Ejemplo: “test”.
  • dataset_revision (str, opcional) — La revisión (también conocida como Git Sha) del conjunto de datos utilizado en load_dataset(). Ejemplo: 5503434ddd753f426f4b38109466949a1217c2bb
  • dataset_args (dict[str, Any], opcional) — Los argumentos pasados durante Metric.compute(). Ejemplo para bleu: {"max_order": 4}
  • metric_name (str, opcional) — Un nombre legible para la métrica. Ejemplo: “Test WER”.
  • metric_config (str, opcional) — El nombre de la configuración de métrica utilizada en load_metric(). Ejemplo: bleurt-large-512 en load_metric("bleurt", "bleurt-large-512"). Consulte la documentación de datasets para obtener más información: https://huggingface.co/docs/datasets/v2.1.0/en/loading#load-configurations
  • metric_args (dict[str, Any], opcional) — Los argumentos pasados durante Metric.compute(). Ejemplo para bleu: max_order: 4
  • verified (bool, opcional) — Indica si las métricas provienen del servicio de evaluación de Hugging Face o no. Se calcula automáticamente por Hugging Face, no lo establezca.
  • verify_token (str, opcional) — Un JSON Web Token que se utiliza para verificar si las métricas provienen del servicio de evaluación de Hugging Face o no.
  • source_name (str, opcional) — El nombre de la fuente del resultado de la evaluación. Ejemplo: “Open LLM Leaderboard”.
  • source_url (str, opcional) — La URL de la fuente del resultado de la evaluación. Ejemplo: ”https://huggingface.co/spaces/open-llm-leaderboard/open_llm_leaderboard”.

Representación aplanada de los resultados individuales de evaluación encontrados en el model-index de las Model Cards.

Para obtener más información sobre la especificación de model-index, consulte https://github.com/huggingface/hub-docs/blob/main/modelcard.md?plain=1.

is_equal_except_value

< >

( other: EvalResult )

Devuelve True si self y other describen exactamente la misma métrica pero con un valor diferente.

model_index_to_eval_results

huggingface_hub.repocard_data.model_index_to_eval_results

< >

( model_index: list ) → model_name (str)

Parámetros

  • model_index (list[dict[str, Any]]) — Estructura de datos de un índice de modelos, que probablemente proviene de un archivo README.md en el Hugging Face Hub.

Devuelve

model_name (str)

El nombre del modelo tal como aparece en el índice de modelos. Se utiliza como identificador del modelo en tablas de clasificación como PapersWithCode. eval_results (list[EvalResult]): Una lista de objetos huggingface_hub.EvalResult que contiene las métricas informadas en el model_index proporcionado.

Recibe un índice de modelo y devuelve el nombre del modelo y una lista de objetos huggingface_hub.EvalResult.

Se puede encontrar una especificación detallada del índice del modelo aquí: https://github.com/huggingface/hub-docs/blob/main/modelcard.md?plain=1

Ejemplo:

>>> from huggingface_hub.repocard_data import model_index_to_eval_results
>>> # Define a minimal model index
>>> model_index = [
...     {
...         "name": "my-cool-model",
...         "results": [
...             {
...                 "task": {
...                     "type": "image-classification"
...                 },
...                 "dataset": {
...                     "type": "beans",
...                     "name": "Beans"
...                 },
...                 "metrics": [
...                     {
...                         "type": "accuracy",
...                         "value": 0.9
...                     }
...                 ]
...             }
...         ]
...     }
... ]
>>> model_name, eval_results = model_index_to_eval_results(model_index)
>>> model_name
'my-cool-model'
>>> eval_results[0].task_type
'image-classification'
>>> eval_results[0].metric_type
'accuracy'

eval_results_to_model_index

huggingface_hub.repocard_data.eval_results_to_model_index

< >

( model_name: streval_results: list ) → model_index (list[dict[str, Any]])

Parámetros

  • model_name (str) — Nombre del modelo (p. ej., “my-cool-model”). Se utiliza como identificador del modelo en clasificaciones como PapersWithCode.
  • eval_results (list[EvalResult]) — Lista de objetos huggingface_hub.EvalResult que contienen las métricas que se informarán en el model-index.

Devuelve

model_index (list[dict[str, Any]])

Los eval_results convertidos en un model-index.

Recibe un nombre de modelo dado y una lista de huggingface_hub.EvalResult y devuelve un model-index válido que será compatible con el formato esperado por el Hugging Face Hub.

Ejemplo:

>>> from huggingface_hub.repocard_data import eval_results_to_model_index, EvalResult
>>> # Define minimal eval_results
>>> eval_results = [
...     EvalResult(
...         task_type="image-classification",  # Required
...         dataset_type="beans",  # Required
...         dataset_name="Beans",  # Required
...         metric_type="accuracy",  # Required
...         metric_value=0.9,  # Required
...     )
... ]
>>> eval_results_to_model_index("my-cool-model", eval_results)
[{'name': 'my-cool-model', 'results': [{'task': {'type': 'image-classification'}, 'dataset': {'name': 'Beans', 'type': 'beans'}, 'metrics': [{'type': 'accuracy', 'value': 0.9}]}]}]

metadata_eval_result

huggingface_hub.metadata_eval_result

< >

( model_pretty_name: strtask_pretty_name: strtask_id: strmetrics_pretty_name: strmetrics_id: strmetrics_value: typing.Anydataset_pretty_name: strdataset_id: strmetrics_config: str | None = Nonemetrics_verified: bool = Falsedataset_config: str | None = Nonedataset_split: str | None = Nonedataset_revision: str | None = Nonemetrics_verification_token: str | None = None ) → dict

Parámetros

  • model_pretty_name (str) — El nombre del modelo en lenguaje natural.
  • task_pretty_name (str) — El nombre de una tarea en lenguaje natural.
  • task_id (str) — Ejemplo: automatic-speech-recognition. Un identificador de tarea.
  • metrics_pretty_name (str) — Un nombre para la métrica en lenguaje natural. Ejemplo: Test WER.
  • metrics_id (str) — Ejemplo: wer. Un identificador de métrica de https://hf.co/metrics.
  • metrics_value (Any) — El valor de la métrica. Ejemplo: 20.0 o “20.0 ± 1.2”.
  • dataset_pretty_name (str) — El nombre del conjunto de datos en lenguaje natural.
  • dataset_id (str) — Ejemplo: common_voice. Un id de dataset de https://hf.co/datasets.
  • metrics_config (str, opcional) — El nombre de la configuración de métrica utilizada en load_metric(). Ejemplo: bleurt-large-512 en load_metric("bleurt", "bleurt-large-512").
  • metrics_verified (bool, opcional, valor predeterminado False) — Indica si las métricas provienen del servicio de evaluación de Hugging Face o no. Se calcula automáticamente por Hugging Face, no lo establezca.
  • dataset_config (str, opcional) — Ejemplo: fr. El nombre de la configuración del conjunto de datos utilizado en load_dataset().
  • dataset_split (str, opcional) — Ejemplo: test. El nombre de la división del conjunto de datos utilizado en load_dataset().
  • dataset_revision (str, opcional) — Ejemplo: 5503434ddd753f426f4b38109466949a1217c2bb. El nombre de la revisión del conjunto de datos utilizada en load_dataset().
  • metrics_verification_token (bool, opcional) — Un JSON Web Token que se utiliza para verificar si las métricas provienen del servicio de evaluación de Hugging Face o no.

Devuelve

dict

un diccionario de metadatos con el resultado de un modelo evaluado en un conjunto de datos.

Crea un diccionario de metadatos con el resultado de un modelo evaluado en un conjunto de datos.

Ejemplo:

>>> from huggingface_hub import metadata_eval_result
>>> results = metadata_eval_result(
...         model_pretty_name="RoBERTa fine-tuned on ReactionGIF",
...         task_pretty_name="Text Classification",
...         task_id="text-classification",
...         metrics_pretty_name="Accuracy",
...         metrics_id="accuracy",
...         metrics_value=0.2662102282047272,
...         dataset_pretty_name="ReactionJPEG",
...         dataset_id="julien-c/reactionjpeg",
...         dataset_config="default",
...         dataset_split="test",
... )
>>> results == {
...     'model-index': [
...         {
...             'name': 'RoBERTa fine-tuned on ReactionGIF',
...             'results': [
...                 {
...                     'task': {
...                         'type': 'text-classification',
...                         'name': 'Text Classification'
...                     },
...                     'dataset': {
...                         'name': 'ReactionJPEG',
...                         'type': 'julien-c/reactionjpeg',
...                         'config': 'default',
...                         'split': 'test'
...                     },
...                     'metrics': [
...                         {
...                             'type': 'accuracy',
...                             'value': 0.2662102282047272,
...                             'name': 'Accuracy',
...                             'verified': False
...                         }
...                     ]
...                 }
...             ]
...         }
...     ]
... }
True

metadata_update

huggingface_hub.metadata_update

< >

( repo_id: strmetadata: dictrepo_type: str | None = Noneoverwrite: bool = Falsetoken: str | None = Nonecommit_message: str | None = Nonecommit_description: str | None = Nonerevision: str | None = Nonecreate_pr: bool = Falseparent_commit: str | None = None ) → str

Parámetros

  • repo_id (str) — El nombre del repositorio.
  • metadata (dict) — Un diccionario que contiene los metadatos que se van a actualizar.
  • repo_type (str, opcional) — Establezca "dataset" o "space" si se actualiza a un dataset o space, None o "model" si se actualiza a un modelo. El valor predeterminado es None.
  • overwrite (bool, opcional, valor predeterminado False) — Si se establece en True, un campo existente puede sobrescribirse; de lo contrario, intentar sobrescribir un campo existente provocará un error.
  • token (str, opcional) — El token de autenticación de Hugging Face.
  • commit_message (str, opcional) — El resumen / título / primera línea del commit generado. El valor predeterminado es f"Update metadata with huggingface_hub"
  • commit_description (str, opcional) — La descripción del commit generado
  • revision (str, opcional) — La revisión de git desde la que se realizará el commit. Por defecto, es la cabecera de la rama "main".
  • create_pr (boolean, opcional) — Indica si se debe o no crear una Pull Request desde revision con ese commit. El valor predeterminado es False.
  • parent_commit (str, opcional) — El OID / SHA del commit padre, como una cadena hexadecimal. También se admiten abreviaturas (los 7 primeros caracteres). Si se especifica y create_pr es False, el commit fallará si revision no apunta a parent_commit. Si se especifica y create_pr es True, la pull request se creará desde parent_commit. Especificar parent_commit garantiza que el repositorio no haya cambiado antes de confirmar los cambios, y puede ser especialmente útil si el repositorio se actualiza / confirma de forma concurrente.

Devuelve

str

URL del commit que actualizó los metadatos de la tarjeta.

Actualiza los metadatos en el README.md de un repositorio en el Hugging Face Hub. Si el archivo README.md aún no existe, se crea uno nuevo con los metadatos y la plantilla predeterminada de ModelCard o DatasetCard. Para un repositorio de space, se lanza un error ya que un Space no puede existir sin un archivo README.md.

Ejemplo:

>>> from huggingface_hub import metadata_update
>>> metadata = {'model-index': [{'name': 'RoBERTa fine-tuned on ReactionGIF',
...             'results': [{'dataset': {'name': 'ReactionGIF',
...                                      'type': 'julien-c/reactiongif'},
...                           'metrics': [{'name': 'Recall',
...                                        'type': 'recall',
...                                        'value': 0.7762102282047272}],
...                          'task': {'name': 'Text Classification',
...                                   'type': 'text-classification'}}]}]}
>>> url = metadata_update("hf-internal-testing/reactiongif-roberta-card", metadata)
Update on GitHub