Hub Python Library documentation
Tarjetas de repositorio
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.
__init__
< source >( content: strignore_metadata_errors: bool = False )
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.
> [!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
< source >( 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 dehuggingface_hub.CardDataque 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 contemplate_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 nitemplate_pathni la plantilla predeterminada son adecuadas. Se ignora si también se proporcionatemplate_path.
Devuelve
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
< source >( 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á elrepo_typede la clase hija. - token (
str, opcional) — Token de autenticación, obtenido con el métodohuggingface_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.
Devuelve
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.
push_to_hub
< source >( 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étodohuggingface_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á elrepo_typede 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 esFalse. - 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 ycreate_presFalse, el commit fallará sirevisionno apunta aparent_commit. Si se especifica ycreate_presTrue, la pull request se creará desdeparent_commit. Especificarparent_commitgarantiza 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
< source >( filepath: pathlib.Path | str )
Guardar una RepoCard en un archivo.
validate
< source >( repo_type: str | None = None )
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:
ValueErrorsi la tarjeta no supera las comprobaciones de validación.HTTPErrorsi 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.
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.
Obtener el valor para una clave de metadatos dada.
Valor de pop para una clave de metadatos dada.
to_dict
< source >( ) → 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
< source >( 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é enoriginal_orderse 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
from_template
< source >( 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 contemplate_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 nitemplate_pathni la plantilla predeterminada son adecuadas. Se ignora si también se proporcionatemplate_path.
Devuelve
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
< source >( 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 (
strolist[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 dehuggingface_hub.EvalResultque definen los resultados de evaluación del modelo. Si se proporciona,model_namese utiliza como nombre en los tableros de clasificación de PapersWithCode. El valor predeterminado esNone. - 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 esNone. - 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 conlicense_link. Las licencias comunes (Apache-2.0, MIT, CC-BY-SA-4.0) no necesitan un nombre. En ese caso, uselicenseen su lugar. - license_link (
str, opcional) — Enlace a la licencia de este modelo. El valor predeterminado es None. Debe usarse en conjunto conlicense_name. Las licencias comunes (Apache-2.0, MIT, CC-BY-SA-4.0) no requieren un enlace. En ese caso, uselicenseen 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 coneval_resultspara construir elmodel-indexdentro 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
from_template
< source >( 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 dehuggingface_hub.DatasetCardDataque 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 contemplate_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 nitemplate_pathni la plantilla predeterminada son adecuadas. Se ignora si también se proporcionatemplate_path.
Devuelve
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
< source >( 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
SpaceCardData
clase huggingface_hub.SpaceCardData
< source >( 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 degradio,streamlit,dockerostatic). - 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 esdocker. - 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
< source >( 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 enload_dataset(). Ejemplo: fr enload_dataset("common_voice", "fr"). Consulte la documentación dedatasetspara 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 enload_dataset(). Ejemplo: “test”. - dataset_revision (
str, opcional) — La revisión (también conocida como Git Sha) del conjunto de datos utilizado enload_dataset(). Ejemplo: 5503434ddd753f426f4b38109466949a1217c2bb - dataset_args (
dict[str, Any], opcional) — Los argumentos pasados duranteMetric.compute(). Ejemplo parableu:{"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 enload_metric(). Ejemplo: bleurt-large-512 enload_metric("bleurt", "bleurt-large-512"). Consulte la documentación dedatasetspara 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 duranteMetric.compute(). Ejemplo parableu: 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.
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
< source >( 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
< source >( 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 objetoshuggingface_hub.EvalResultque 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
< source >( 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 enload_metric(). Ejemplo: bleurt-large-512 enload_metric("bleurt", "bleurt-large-512"). - metrics_verified (
bool, opcional, valor predeterminadoFalse) — 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 enload_dataset(). - dataset_split (
str, opcional) — Ejemplo: test. El nombre de la división del conjunto de datos utilizado enload_dataset(). - dataset_revision (
str, opcional) — Ejemplo: 5503434ddd753f426f4b38109466949a1217c2bb. El nombre de la revisión del conjunto de datos utilizada enload_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
< source >( 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,Noneo"model"si se actualiza a un modelo. El valor predeterminado esNone. - overwrite (
bool, opcional, valor predeterminadoFalse) — Si se establece enTrue, 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 esf"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 desderevisioncon ese commit. El valor predeterminado esFalse. - 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 ycreate_presFalse, el commit fallará sirevisionno apunta aparent_commit. Si se especifica ycreate_presTrue, la pull request se creará desdeparent_commit. Especificarparent_commitgarantiza 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)