Thành phần đường ống Pusher TFX

Thành phần Pusher được sử dụng để đẩy mô hình đã được xác thực đến mục tiêu triển khai trong quá trình đào tạo hoặc đào tạo lại mô hình. Trước khi triển khai, Pusher dựa vào một hoặc nhiều sự hỗ trợ từ các thành phần xác thực khác để quyết định có nên đẩy mô hình hay không.

  • Người đánh giá khen ngợi mô hình nếu mô hình được đào tạo mới "đủ tốt" để được đưa vào sản xuất.
  • (Tùy chọn nhưng được khuyến nghị) InfraValidator hỗ trợ mô hình nếu mô hình có thể phục vụ được về mặt cơ học trong môi trường sản xuất.

Thành phần Pusher sử dụng mô hình được đào tạo ở định dạng SavingModel và tạo ra SavingModel tương tự, cùng với siêu dữ liệu phiên bản.

Sử dụng thành phần Pusher

Thành phần đường ống Pusher thường rất dễ triển khai và yêu cầu ít tùy chỉnh vì tất cả công việc đều được thực hiện bởi thành phần Pusher TFX. Mã điển hình trông như thế này:

pusher = Pusher(
  model=trainer.outputs['model'],
  model_blessing=evaluator.outputs['blessing'],
  infra_blessing=infra_validator.outputs['blessing'],
  push_destination=tfx.proto.PushDestination(
    filesystem=tfx.proto.PushDestination.Filesystem(
        base_directory=serving_model_dir)
  )
)

Đẩy một mô hình được tạo từ InfraValidator.

(Từ phiên bản 0.30.0)

InfraValidator cũng có thể tạo ra tạo phẩm InfraBlessing chứa một mô hình có phần khởi động và Pusher có thể đẩy nó giống như một tạo phẩm Model .

infra_validator = InfraValidator(
    ...,
    # make_warmup=True will produce a model with warmup requests in its
    # 'blessing' output.
    request_spec=tfx.proto.RequestSpec(..., make_warmup=True)
)

pusher = Pusher(
    # Push model from 'infra_blessing' input.
    infra_blessing=infra_validator.outputs['blessing'],
    push_destination=tfx.proto.PushDestination(...)
)

Thông tin chi tiết hơn có sẵn trong tài liệu tham khảo API Pusher .