Hub documentation

Sử dụng AllenNLP trên Hugging Face

Hugging Face's logo
Join the Hugging Face community

and get access to the augmented documentation experience

to get started

Sử dụng AllenNLP trên Hugging Face

allennlp là thư viện NLP để phát triển các mô hình tiên tiến cho nhiều tác vụ ngôn ngữ khác nhau. Nó cung cấp các trừu tượng và API cấp cao cho các thành phần và mô hình phổ biến trong NLP hiện đại. Nó cũng cung cấp một khung có thể mở rộng, giúp dễ dàng chạy và quản lý các thí nghiệm NLP.

Khám phá allennlp trên Hub

Bạn có thể tìm các mô hình allennlp trên Hub bằng cách lọc ở phía bên trái của trang mô hình.

Tất cả các mô hình trên Hub đều đi kèm với các tính năng hữu ích

  1. Một tab chỉ số huấn luyện với các trace TensorBoard được tự động lưu trữ.
  2. Các thẻ metadata giúp tăng khả năng tìm kiếm.
  3. Một widget tương tác mà bạn có thể sử dụng để thử nghiệm trực tiếp với mô hình ngay trong trình duyệt.
  4. Một widget của Inference Providers cho phép thực hiện các yêu cầu suy luận.

Sử dụng các mô hình có sẵn

Bạn có thể sử dụng lớp Predictor để tải các mô hình có sẵn trên Hub. Để làm điều này, hãy sử dụng phương thức from_path và dùng tiền tố "hf://" với id của kho lưu trữ. Dưới đây là một ví dụ từ đầu đến cuối.

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)

Để có được một đoạn mã như thế này, bạn có thể nhấp vào Use in AllenNLP ở góc trên bên phải,

Chia sẻ các mô hình của bạn

Bước đầu tiên là lưu mô hình cục bộ. Ví dụ, bạn có thể sử dụng phương thức archive_model để lưu mô hình dưới dạng tệp model.tar.gz. Sau đó, bạn có thể đẩy mô hình đã nén lên Hub. Khi bạn huấn luyện một mô hình bằng allennlp, mô hình sẽ được tự động serialize nên bạn có thể sử dụng đó như một tùy chọn ưu tiên.

Sử dụng CLI của AllenNLP

Để đẩy bằng CLI, bạn có thể sử dụng lệnh allennlp push_to_hf như được hiển thị bên dưới.

allennlp push_to_hf --repo_name test_allennlp --archive_path model 
Tham sốLoạiMô tả
--repo_name, -nstr / PathTên của kho trên Hub.
--organization, -ostrTên tùy chọn của tổ chức mà pipeline sẽ được tải lên.
--serialization-dir, -sstr / PathĐường dẫn đến thư mục chứa mô hình đã được serialize.
--archive-path, -astr / PathNếu bạn đang sử dụng một mô hình đã nén (ví dụ: model/model.tar.gz) thay vì một đường dẫn serialization, bạn có thể sử dụng cờ này.
--local-repo-path, -lstr / PathĐường dẫn cục bộ đến kho lưu trữ mô hình (sẽ được tạo nếu chưa tồn tại). Mặc định là hub trong thư mục làm việc hiện tại.
--commit-message, -cstrThông báo commit để sử dụng cho việc cập nhật. Mặc định là "update repository".

Từ một script Python

Hàm push_to_hf có cùng các tham số với 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
)

Chỉ trong một phút, bạn có thể đưa mô hình của mình lên Hub, thử nghiệm trực tiếp trong trình duyệt và chia sẻ với cộng đồng. Toàn bộ metadata cần thiết sẽ được tải lên cho bạn!

Tài nguyên bổ sung

  • Trang website của AllenNLP.
  • Kho mã của AllenNLP.
Update on GitHub