Hub Python Library documentation

Cards de Repositório

Hugging Face's logo
Join the Hugging Face community

and get access to the augmented documentation experience

to get started

Cards de Repositório

A biblioteca huggingface_hub fornece uma interface em Python para criar, compartilhar e atualizar Model/Dataset Cards. Acesse a página de documentação dedicada para uma visão mais aprofundada do que são os Model Cards no Hub e como funcionam por baixo dos panos. Você também pode conferir nosso guia de Model Cards para ter uma ideia de como usar essas utilidades em seus próprios projetos.

Cartão do repositório

O objeto RepoCard é a classe pai de ModelCard, DatasetCard e SpaceCard.

classe huggingface_hub.RepoCard

< >

( content: strignore_metadata_errors: bool = False )

__init__

< >

( content: strignore_metadata_errors: bool = False )

Parâmetros

  • content (str) — O conteúdo do arquivo Markdown.

Inicialize um RepoCard a partir do conteúdo de uma string. O conteúdo deve ser um arquivo Markdown com um bloco YAML no início e um corpo em Markdown.

Exemplo:

>>> 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) — Uma instância de huggingface_hub.CardData contendo os metadados que você deseja incluir no cabeçalho YAML do card do repositório no Hugging Face Hub.
  • template_path (str, opcional) — Um caminho para um arquivo markdown com variáveis de template Jinja opcionais que podem ser preenchidas com template_kwargs. O padrão é o template padrão.
  • template_str (str, opcional) — Uma string de template Jinja bruta com variáveis opcionais. Usada quando nem o template_path nem o template padrão são apropriados. Ignorado se template_path também for fornecido.

Uma instância de RepoCard com os dados e o conteúdo da card especificados do modelo.

Inicialize um RepoCard a partir de um modelo. Por padrão, ele usa o modelo padrão.

Templates são templates Jinja2 que podem ser personalizados passando argumentos de palavra-chave.

carregar

< >

( 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]) — O ID do repositório associado a um repositório do Hugging Face Hub ou a um caminho de arquivo local.
  • repo_type (str, opcional) — O tipo de repositório do Hugging Face para o qual será feito o push. O padrão é None, o que usará “model”. As outras opções são “dataset” e “space”. Não é usado ao carregar de um caminho de arquivo local. Se isso for chamado de uma classe filha, o valor padrão será o repo_type da classe filha.
  • token (str, opcional) — Token de autenticação, obtido com o método huggingface_hub.HfApi.login. O padrão é o token armazenado.
  • ignore_metadata_errors (str) — Se True, os erros durante a análise da seção de metadados serão ignorados. Algumas informações podem ser perdidas durante o processo. Use por sua conta e risco.

O RepoCard (ou subclasse) inicializado a partir do arquivo README.md ou do caminho do arquivo do repositório.

Inicialize um RepoCard a partir do README.md de um repositório do Hugging Face Hub ou de um caminho de arquivo local.

Exemplo:

>>> 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) — O ID do repositório no Hugging Face Hub para o qual o conteúdo será enviado. Exemplo: “nateraw/food”.
  • token (str, opcional) — Token de autenticação, obtido com o método huggingface_hub.HfApi.login. O padrão será o token armazenado.
  • repo_type (str, opcional, padrão “model”) — O tipo de repositório do Hugging Face para o qual será feito o push. As opções são “model”, “dataset” e “space”. Se esta função for chamada por uma classe filha, o padrão será o repo_type da classe filha.
  • commit_message (str, opcional) — O resumo / título / primeira linha do commit gerado.
  • commit_description (str, opcional) — A descrição do commit gerado.
  • revision (str, opcional) — A revisão git de onde o commit será feito. O padrão é o topo do ramo "main".
  • create_pr (bool, opcional) — Se deve ou não criar um Pull Request com este commit. O padrão é False.
  • parent_commit (str, opcional) — O OID / SHA do commit pai, como uma string hexadecimal. Abreviações (os 7 primeiros caracteres) também são suportadas. Se especificado e create_pr for False, o commit falhará se revision não apontar para parent_commit. Se especificado e create_pr for True, a pull request será criada a partir de parent_commit. Especificar parent_commit garante que o repositório não tenha sido alterado antes de commitar as mudanças, e pode ser especialmente útil se o repositório for atualizado / commitado de forma concorrente.

Retorna

str

URL do commit que atualizou os metadados do card.

Envie um RepoCard para um repositório no Hugging Face Hub.

salvar

< >

( filepath: pathlib.Path | str )

Parâmetros

  • filepath (Union[Path, str]) — Caminho do arquivo para salvar o arquivo Markdown.

Salve um RepoCard em um arquivo.

Exemplo:

>>> 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, padrão “model”) — O tipo de repositório do Hugging Face para o qual será feito o push. As opções são “model”, “dataset” e “space”. Se esta função for chamada de uma classe filha, o padrão será o repo_type da classe filha.

Valida o card contra a lógica de validação de cards do Hugging Face Hub. O uso desta função requer acesso à internet, portanto, ela é chamada apenas internamente por huggingface_hub.repocard.RepoCard.push_to_hub().

Gera os seguintes erros:

  • ValueError se o cartão falhar nas verificações de validação.
  • HTTPError se a solicitação à API do Hub falhar por qualquer outro motivo.

Dados do cartão

O objeto CardData é a classe pai de ModelCardData e DatasetCardData.

classe huggingface_hub.CardData

< >

( ignore_metadata_errors: bool = False**kwargs )

Estrutura contendo metadados de um RepoCard.

CardData é a classe pai de ModelCardData e DatasetCardData.

Metadados podem ser exportados como um dicionário ou YAML. A exportação pode ser personalizada para alterar a representação dos dados (exemplo: achatar resultados de avaliação). CardData se comporta como um dicionário (pode obter, remover e definir valores), mas não herda de dict para permitir essa etapa de exportação.

get

< >

( key: strdefault: typing.Any = None )

Obtém o valor para uma chave de metadados específica.

pop

< >

( key: strdefault: typing.Any = None )

Valor pop para uma chave de metadados específica.

to_dict

< >

( ) → dict

Retorna

dict

CardData representado como um dicionário pronto para ser exportado em um bloco YAML para inclusão em um arquivo README.md.

Converte CardData em um dict.

to_yaml

< >

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

Parâmetros

  • line_break (str, opcional) — A quebra de linha a ser usada ao despejar em yaml.
  • original_order (list[str], opcional) — Se fornecida, reordena os campos de metadados para corresponder a esta lista antes de despejar. Qualquer chave não presente em original_order é adicionada após as chaves listadas, preservando sua ordem relativa existente. Útil para fazer round-trip de um bloco YAML sem embaralhar suas chaves.

Retorna

str

CardData representado como um bloco YAML.

Exporta CardData para um bloco YAML para inclusão em um arquivo README.md.

Cartões de Modelo

ModelCard

classe 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) — Uma instância de huggingface_hub.ModelCardData contendo os metadados que você deseja incluir no cabeçalho YAML do model card no Hugging Face Hub.
  • template_path (str, opcional) — Um caminho para um arquivo markdown com variáveis de template Jinja opcionais que podem ser preenchidas com template_kwargs. O padrão é o template padrão.
  • template_str (str, opcional) — Uma string de template Jinja bruta com variáveis opcionais. Usada quando nem o template_path nem o template padrão são apropriados. Ignorado se template_path também for fornecido.

Uma instância de ModelCard com os dados e o conteúdo da card especificados a partir do modelo.

Inicialize um ModelCard a partir de um modelo. Por padrão, ele usa o modelo padrão, que pode ser encontrado aqui: https://github.com/huggingface/huggingface_hub/blob/main/src/huggingface_hub/templates/modelcard_template.md

Templates são templates Jinja2 que podem ser personalizados passando argumentos de palavra-chave.

Exemplo:

>>> 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

classe 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 ou list[str], opcional) — O identificador do modelo base do qual o modelo deriva. Isso se aplica, por exemplo, se o seu modelo for um fine-tune ou adaptador de um modelo existente. O valor deve ser o ID de um modelo no Hub (ou uma lista de IDs se o seu modelo deriva de vários modelos). O padrão é None.
  • datasets (Union[str, list[str]], opcional) — Dataset ou lista de datasets que foram usados para treinar este modelo. Deve ser um ID de dataset encontrado em https://hf.co/datasets. O padrão é None.
  • eval_results (Union[list[EvalResult], EvalResult], opcional) — Lista de huggingface_hub.EvalResult que definem os resultados de avaliação do modelo. Se fornecida, model_name é usada como nome nos rankings do PapersWithCode. O valor padrão é None.
  • language (Union[str, list[str]], opcional) — Idioma dos dados de treinamento ou metadados do modelo. Deve ser um código ISO 639-1, 639-2 ou 639-3 (dois/três letras), ou um valor especial como “code”, “multilingual”. O padrão é None.
  • library_name (str, opcional) — Nome da biblioteca usada por este modelo. Exemplo: keras ou qualquer biblioteca de https://github.com/huggingface/huggingface.js/blob/main/packages/tasks/src/model-libraries.ts. Padrão: None.
  • license (str, opcional) — Licença deste modelo. Exemplo: apache-2.0 ou qualquer licença de https://huggingface.co/docs/hub/repositories-licenses. O padrão é None.
  • license_name (str, opcional) — Nome da licença deste modelo. O padrão é None. Deve ser usado em conjunto com license_link. Licenças comuns (Apache-2.0, MIT, CC-BY-SA-4.0) não precisam de um nome. Nesse caso, use license em vez disso.
  • license_link (str, opcional) — Link para a licença deste modelo. O padrão é None. Deve ser usado em conjunto com license_name. Licenças comuns (Apache-2.0, MIT, CC-BY-SA-4.0) não precisam de um link. Nesse caso, use license em vez disso.
  • metrics (list[str], opcional) — Lista de métricas usadas para avaliar este modelo. Deve ser um nome de métrica que pode ser encontrado em https://hf.co/metrics. Exemplo: ‘accuracy’. Padrão: None.
  • model_name (str, opcional) — Um nome para este modelo. Ele é usado junto com eval_results para construir o model-index nos metadados do card. O nome fornecido aqui é o que será usado nos rankings do PapersWithCode. Se None for fornecido, o nome do repositório é usado como padrão. Padrão: None.
  • pipeline_tag (str, opcional) — A tag de pipeline associada ao modelo. Exemplo: “text-classification”.
  • tags (list[str], opcional) — Lista de tags para adicionar ao seu modelo, que podem ser usadas ao filtrar no Hugging Face Hub. O valor padrão é None.
  • ignore_metadata_errors (str) — Se True, os erros durante a análise da seção de metadados serão ignorados. Algumas informações podem ser perdidas durante o processo. Use por sua conta e risco.
  • kwargs (dict, opcional) — Metadados adicionais que serão adicionados ao cartão do modelo. O padrão é None.

Metadados do Model Card usados pelo Hugging Face Hub quando incluídos no topo do seu README.md

Exemplo:

>>> 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']}

Cartões de Dataset

Dataset cards também são conhecidos como Data Cards na comunidade de ML.

DatasetCard

classe 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) — Uma instância de huggingface_hub.DatasetCardData contendo os metadados que você deseja incluir no cabeçalho YAML do cartão do dataset no Hugging Face Hub.
  • template_path (str, opcional) — Um caminho para um arquivo markdown com variáveis de template Jinja opcionais que podem ser preenchidas com template_kwargs. O padrão é o template padrão.
  • template_str (str, opcional) — Uma string de template Jinja bruta com variáveis opcionais. Usada quando nem o template_path nem o template padrão são apropriados. Ignorado se template_path também for fornecido.

Uma instância de DatasetCard com os dados e o conteúdo da card especificados a partir do modelo.

Inicialize um DatasetCard a partir de um modelo. Por padrão, ele usa o modelo padrão, que pode ser encontrado aqui: https://github.com/huggingface/huggingface_hub/blob/main/src/huggingface_hub/templates/datasetcard_template.md

Templates são templates Jinja2 que podem ser personalizados passando argumentos de palavra-chave.

Exemplo:

>>> 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

classe 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 dos dados ou metadados do conjunto de dados. Deve ser um código ISO 639-1, 639-2 ou 639-3 (dois/três letras) ou um valor especial como “code”, “multilingual”.
  • license (Union[str, list[str]], opcional) — Licença(s) deste conjunto de dados. Exemplo: apache-2.0 ou qualquer licença de https://huggingface.co/docs/hub/repositories-licenses.
  • annotations_creators (Union[str, list[str]], opcional) — Como as anotações do conjunto de dados foram criadas. As opções são: ‘found’, ‘crowdsourced’, ‘expert-generated’, ‘machine-generated’, ‘no-annotation’, ‘other’.
  • language_creators (Union[str, list[str]], opcional) — Como os dados baseados em texto do conjunto de dados foram criados. As opções são: ‘found’, ‘crowdsourced’, ‘expert-generated’, ‘machine-generated’, ‘other’
  • multilinguality (Union[str, list[str]], opcional) — Se o conjunto de dados é multilíngue. As opções são: ‘monolingual’, ‘multilingual’, ‘translation’, ‘other’.
  • size_categories (Union[str, list[str]], opcional) — O número de exemplos no conjunto de dados. As opções são: ‘n<1K’, ‘1K1T’, e ‘other’.
  • source_datasets (list[str]], opcional) — Indica se o conjunto de dados é original ou estendido a partir de outro conjunto de dados existente. As opções são: ‘original’ e ‘extended’.
  • task_categories (Union[str, list[str]], opcional) — Quais categorias de tarefa o conjunto de dados suporta?
  • task_ids (Union[str, list[str]], opcional) — Quais tarefas específicas o conjunto de dados suporta?
  • paperswithcode_id (str, opcional) — ID do conjunto de dados no PapersWithCode.
  • pretty_name (str, opcional) — Um nome mais legível para o conjunto de dados. (ex. “Cats vs. Dogs”)
  • train_eval_index (dict, opcional) — Um dicionário que descreve a especificação necessária para realizar a avaliação no Hub. Se não for fornecido, ele será obtido da chave ‘train-eval-index’ dos kwargs.
  • config_names (Union[str, list[str]], opcional) — Uma lista dos configs de dataset disponíveis para o dataset.

Metadados do Dataset Card que são usados pelo Hugging Face Hub quando incluídos no topo do seu README.md

Cartões de Espaço

SpaceCard

classe huggingface_hub.SpaceCard

< >

( content: strignore_metadata_errors: bool = False )

SpaceCardData

classe 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 do Space.
  • sdk (str, opcional) — SDK do Space (um de gradio, streamlit, docker ou static).
  • sdk_version (str, opcional) — Versão do SDK utilizado (se for o SDK do Gradio/Streamlit).
  • python_version (str, opcional) — Versão do Python usada no Space (se for o sdk do Gradio/Streamlit).
  • app_file (str, opcional) — Caminho para o arquivo principal da sua aplicação (que contém código Python do gradio ou streamlit, ou código html estático). O caminho é relativo à raiz do repositório.
  • app_port (str, opcional) — Porta na qual sua aplicação está em execução. Usado apenas se sdk for docker.
  • license (str, opcional) — Licença deste modelo. Exemplo: apache-2.0 ou qualquer licença de https://huggingface.co/docs/hub/repositories-licenses.
  • duplicated_from (str, opcional) — ID do Space original, caso este seja um Space duplicado.
  • models (list[str], opcional) — Lista de modelos relacionados a este Space. Deve ser um ID de dataset encontrado em https://hf.co/models.
  • datasets (list[str], opcional) — Lista de datasets relacionados a este Space. Deve ser um ID de dataset encontrado em https://hf.co/datasets.
  • tags (list[str], opcional) — Lista de tags para adicionar ao seu Space, que podem ser usadas ao filtrar no Hub.
  • ignore_metadata_errors (str) — Se True, os erros durante a análise da seção de metadados serão ignorados. Algumas informações podem ser perdidas durante o processo. Use por sua conta e risco.
  • kwargs (dict, opcional) — Metadados adicionais que serão adicionados ao cartão do espaço.

Metadados do Space Card usados pelo Hugging Face Hub quando incluídos no topo do seu README.md

Para obter uma referência exaustiva da configuração de Spaces, visite https://huggingface.co/docs/hub/spaces-config-reference#spaces-configuration-reference.

Exemplo:

>>> 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'}

Utilitários

EvalResult

classe 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) — O identificador da tarefa. Exemplo: “image-classification”.
  • dataset_type (str) — O identificador do dataset. Exemplo: “common_voice”. Use o id do dataset de https://hf.co/datasets.
  • dataset_name (str) — Um nome legível para o conjunto de dados. Exemplo: “Common Voice (French)“.
  • metric_type (str) — O identificador da métrica. Exemplo: “wer”. Use o id da métrica de https://hf.co/metrics.
  • metric_value (Any) — O valor da métrica. Exemplo: 0.9 ou “20.0 ± 1.2”.
  • task_name (str, opcional) — Um nome legível para a tarefa. Exemplo: “Speech Recognition”.
  • dataset_config (str, opcional) — O nome da configuração do dataset usado em load_dataset(). Exemplo: fr em load_dataset("common_voice", "fr"). Veja a documentação de datasets para mais informações: https://hf.co/docs/datasets/package_reference/loading_methods#datasets.load_dataset.name
  • dataset_split (str, opcional) — A divisão usada em load_dataset(). Exemplo: “test”.
  • dataset_revision (str, opcional) — A revisão (também conhecida como Git Sha) do conjunto de dados usado em load_dataset(). Exemplo: 5503434ddd753f426f4b38109466949a1217c2bb
  • dataset_args (dict[str, Any], opcional) — Os argumentos passados durante Metric.compute(). Exemplo para bleu: {"max_order": 4}
  • metric_name (str, opcional) — Um nome legível para a métrica. Exemplo: “Test WER”.
  • metric_config (str, opcional) — O nome da configuração de métrica usada em load_metric(). Exemplo: bleurt-large-512 em load_metric("bleurt", "bleurt-large-512"). Veja a documentação do datasets para mais informações: https://huggingface.co/docs/datasets/v2.1.0/en/loading#load-configurations
  • metric_args (dict[str, Any], opcional) — Os argumentos passados durante Metric.compute(). Exemplo para bleu: max_order: 4
  • verified (bool, opcional) — Indica se as métricas se originam do serviço de avaliação do Hugging Face ou não. Calculado automaticamente pelo Hugging Face, não defina.
  • verify_token (str, opcional) — Um JSON Web Token usado para verificar se as métricas têm origem no serviço de avaliação do Hugging Face ou não.
  • source_name (str, opcional) — O nome da origem do resultado da avaliação. Exemplo: “Open LLM Leaderboard”.
  • source_url (str, opcional) — A URL da origem do resultado da avaliação. Exemplo: ”https://huggingface.co/spaces/open-llm-leaderboard/open_llm_leaderboard”.

Representação achatada dos resultados individuais de avaliação encontrados no model-index dos Model Cards.

Para mais informações sobre a especificação do model-index, consulte https://github.com/huggingface/hub-docs/blob/main/modelcard.md?plain=1.

is_equal_except_value

< >

( other: EvalResult )

Retorna True se self e other descrevem exatamente a mesma métrica, mas com um 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]]) — Estrutura de dados de índice de modelo, provavelmente originada de um arquivo README.md no Hugging Face Hub.

Retorna

model_name (str)

O nome do modelo conforme encontrado no índice do modelo. Isso é usado como identificador do modelo em rankings como PapersWithCode. eval_results (list[EvalResult]): Uma lista de objetos huggingface_hub.EvalResult contendo as métricas relatadas no model_index fornecido.

Recebe um índice de modelo e retorna o nome do modelo e uma lista de objetos huggingface_hub.EvalResult.

Uma especificação detalhada do índice do modelo pode ser encontrada aqui: https://github.com/huggingface/hub-docs/blob/main/modelcard.md?plain=1

Exemplo:

>>> 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) — Nome do modelo (ex.: “my-cool-model”). Isso é usado como identificador do modelo em rankings como o PapersWithCode.
  • eval_results (list[EvalResult]) — Lista de objetos huggingface_hub.EvalResult contendo as métricas a serem relatadas no model-index.

Retorna

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

Os eval_results convertidos em um model-index.

Recebe o nome do modelo e uma lista de huggingface_hub.EvalResult e retorna um model-index válido que será compatível com o formato esperado pelo Hugging Face Hub.

Exemplo:

>>> 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) — O nome do modelo em linguagem natural.
  • task_pretty_name (str) — O nome de uma tarefa em linguagem natural.
  • task_id (str) — Exemplo: automatic-speech-recognition. Um id de tarefa.
  • metrics_pretty_name (str) — Um nome para a métrica em linguagem natural. Exemplo: Test WER.
  • metrics_id (str) — Exemplo: wer. Um id de métrica de https://hf.co/metrics.
  • metrics_value (Any) — O valor da métrica. Exemplo: 20.0 ou “20.0 ± 1.2”.
  • dataset_pretty_name (str) — O nome do conjunto de dados em linguagem natural.
  • dataset_id (str) — Exemplo: common_voice. Um id de dataset de https://hf.co/datasets.
  • metrics_config (str, opcional) — O nome da configuração de métrica usada em load_metric(). Exemplo: bleurt-large-512 em load_metric("bleurt", "bleurt-large-512").
  • metrics_verified (bool, opcional, padrão False) — Indica se as métricas se originam do serviço de avaliação do Hugging Face ou não. Calculado automaticamente pelo Hugging Face, não defina.
  • dataset_config (str, opcional) — Exemplo: fr. O nome da configuração do conjunto de dados usado em load_dataset().
  • dataset_split (str, opcional) — Exemplo: test. O nome da divisão do conjunto de dados usado em load_dataset().
  • dataset_revision (str, opcional) — Exemplo: 5503434ddd753f426f4b38109466949a1217c2bb. O nome da revisão do conjunto de dados usado em load_dataset().
  • metrics_verification_token (bool, opcional) — Um JSON Web Token usado para verificar se as métricas têm origem no serviço de avaliação da Hugging Face ou não.

Retorna

dict

um dicionário de metadados com o resultado de um modelo avaliado em um conjunto de dados.

Cria um dicionário de metadados com o resultado de um modelo avaliado em um conjunto de dados.

Exemplo:

>>> 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) — O nome do repositório.
  • metadata (dict) — Um dicionário contendo os metadados a serem atualizados.
  • repo_type (str, opcional) — Defina como "dataset" ou "space" se estiver atualizando para um dataset ou space, None ou "model" se estiver atualizando para um modelo. O padrão é None.
  • overwrite (bool, opcional, padrão False) — Se definido como True, um campo existente pode ser sobrescrito; caso contrário, tentar sobrescrever um campo existente causará um erro.
  • token (str, opcional) — O token de autenticação do Hugging Face.
  • commit_message (str, opcional) — O resumo / título / primeira linha do commit gerado. O padrão é f"Update metadata with huggingface_hub"
  • commit_description (str, opcional) — A descrição do commit gerado
  • revision (str, opcional) — A revisão git de onde o commit será feito. O padrão é o topo do ramo "main".
  • create_pr (boolean, opcional) — Se deve ou não criar um Pull Request a partir de revision com esse commit. Padrão é False.
  • parent_commit (str, opcional) — O OID / SHA do commit pai, como uma string hexadecimal. Abreviações (os 7 primeiros caracteres) também são suportadas. Se especificado e create_pr for False, o commit falhará se revision não apontar para parent_commit. Se especificado e create_pr for True, a pull request será criada a partir de parent_commit. Especificar parent_commit garante que o repositório não tenha sido alterado antes de commitar as mudanças, e pode ser especialmente útil se o repositório for atualizado / commitado de forma concorrente.

Retorna

str

URL do commit que atualizou os metadados do card.

Atualiza os metadados no README.md de um repositório no Hugging Face Hub. Se o arquivo README.md ainda não existir, um novo será criado com os metadados e o template padrão de ModelCard ou DatasetCard. Para um repositório space, um erro é lançado pois um Space não pode existir sem um arquivo README.md.

Exemplo:

>>> 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