Hub documentation

Usando AllenNLP no Hugging Face

Hugging Face's logo
Join the Hugging Face community

and get access to the augmented documentation experience

to get started

Usando AllenNLP no Hugging Face

allennlp é uma biblioteca de PLN para o desenvolvimento de modelos de última geração em diferentes tarefas linguísticas. Ela fornece abstrações e APIs de alto nível para componentes e modelos comuns no PLN moderno. Também oferece um framework extensível que facilita a execução e o gerenciamento de experimentos de PLN.

Explorando allennlp no Hub

Você pode encontrar modelos do allennlp no Hub filtrando à esquerda da página de modelos.

Todos os modelos no Hub vêm com recursos úteis

  1. Uma aba de métricas de treinamento com rastreamentos do TensorBoard hospedados automaticamente.
  2. Tags de metadados que auxiliam na descoberta.
  3. Um widget interativo que você pode usar para interagir com o modelo diretamente no navegador.
  4. Um widget de Inference Providers que permite fazer solicitações de inferência.

Usando modelos existentes

Você pode usar a classe Predictor para carregar modelos existentes no Hub. Para isso, use o método from_path e utilize o prefixo "hf://" com o id do repositório. Aqui está um exemplo de ponta a ponta.

import allennlp_models
from allennlp.predictors.predictor import Predictor

predictor = Predictor.from_path("hf://allenai/bidaf-elmo")
predictor_input = {
    "passage": "My name is Wolfgang and I live in Berlin", 
    "question": "Where do I live?"
}
predictions = predictor.predict_json(predictor_input)

Para obter um trecho como este, você pode clicar em Use in AllenNLP no canto superior direito,

Compartilhando seus modelos

O primeiro passo é salvar o modelo localmente. Por exemplo, você pode usar o método archive_model para salvar o modelo como um arquivo model.tar.gz. Em seguida, você pode enviar o modelo compactado para o Hub. Quando você treina um modelo com allennlp, o modelo é serializado automaticamente, então você pode usar isso como opção preferencial.

Usando a CLI do AllenNLP

Para enviar com a CLI, você pode usar o comando allennlp push_to_hf, conforme mostrado abaixo.

allennlp push_to_hf --repo_name test_allennlp --archive_path model 
ArgumentoTipoDescrição
--repo_name, -nstr / PathNome do repositório no Hub.
--organization, -ostrNome opcional da organização para a qual o pipeline deve ser enviado.
--serialization-dir, -sstr / PathCaminho para o diretório com o modelo serializado.
--archive-path, -astr / PathSe, em vez de um caminho de serialização, você estiver usando um modelo compactado (por exemplo, model/model.tar.gz), pode usar essa flag.
--local-repo-path, -lstr / PathCaminho local para o repositório do modelo (será criado se não existir). O padrão é hub no diretório de trabalho atual.
--commit-message, -cstrMensagem de commit a ser usada para a atualização. O padrão é "update repository".

A partir de um script Python

A função push_to_hf tem os mesmos parâmetros que o script bash.

from allennlp.common.push_to_hf import push_to_hf

serialization_dir = "path/to/serialization/directory"
push_to_hf(
    repo_name="my_repo_name",
    serialization_dir=serialization_dir,
    local_repo_path=self.local_repo_path
)

Em apenas um minuto, você pode colocar seu modelo no Hub, testá-lo diretamente no navegador e compartilhá-lo com o restante da comunidade. Todos os metadados necessários serão enviados para você!

Recursos adicionais

Update on GitHub