Hub documentation
Usando AllenNLP no Hugging Face
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
- Uma aba de métricas de treinamento com rastreamentos do TensorBoard hospedados automaticamente.
- Tags de metadados que auxiliam na descoberta.
- Um widget interativo que você pode usar para interagir com o modelo diretamente no navegador.
- 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
| Argumento | Tipo | Descrição |
|---|---|---|
--repo_name, -n | str / Path | Nome do repositório no Hub. |
--organization, -o | str | Nome opcional da organização para a qual o pipeline deve ser enviado. |
--serialization-dir, -s | str / Path | Caminho para o diretório com o modelo serializado. |
--archive-path, -a | str / Path | Se, 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, -l | str / Path | Caminho 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, -c | str | Mensagem 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
- website da AllenNLP.
- Repositório do AllenNLP repository.