Mô hình tuỳ chỉnh được lưu trữ cho Earth Engine

Để thực hiện suy luận bằng mô hình được huấn luyện tuỳ chỉnh bằng một khung học máy như TensorFlow hoặc PyTorch, bạn cần lưu và tải mô hình lên Vertex AI, tạo một điểm cuối dự đoán và triển khai mô hình để phân phát lưu lượng truy cập tại điểm cuối đã tạo.

Đầu vào của mô hình

Trước khi lưu và tải mô hình lên Vertex AI, bạn nên đảm bảo rằng mô hình chấp nhận dữ liệu ở định dạng tải trọng mà Earth Engine hỗ trợ. Để biết thêm thông tin chi tiết, hãy xem trang các định dạng tải trọng của chúng tôi.

Cấu phần phần mềm mô hình

Bước tiếp theo là lưu mô hình của bạn vào một định dạng có thể lưu trữ trong Vertex AI.

TensorFlow

Bạn có thể lưu các mô hình dựa trên TensorFlow ở một số định dạng khác nhau, nhưng Vertex AI yêu cầu định dạng SavedModel. Bạn phải xuất các mô hình dựa trên Keras dưới dạng SavedModels bằng tf.keras.Model.export(). Các mô hình TensorFlow khác yêu cầu sử dụng tf.saved_model.save() nguyên thuỷ hơn. Hãy xem tài liệu về định dạng SavedModel để biết thêm thông tin chi tiết.

PyTorch

Các mô hình PyTorch có cách chuẩn bị cấu phần phần mềm mô hình để phân phát dự đoán hơi khác. Nếu tạo mô hình tuỳ chỉnh đã huấn luyện, trước tiên, bạn phải lưu mô hình đó. Vì lý do hiệu suất, bạn nên chuyển đổi mô hình PyTorch sang TorchScript và lưu tệp mô hình bằng:

model_scripted = torch.jit.script(model) # Export to TorchScript
model_scripted.save('model.pt') # Save

Sau khi lưu tệp mô hình, bạn cần lưu trữ tệp đó để có thể triển khai tệp đó cho Vertex AI. Khi sử dụng vùng chứa tạo sẵn, mô hình phải có tên là "model". Để lưu trữ mô hình, bạn cần chạy torch-model-archiver, bao gồm mọi trình xử lý tuỳ chỉnh và các tệp bổ sung mà mô hình của bạn yêu cầu. Sau đây là ví dụ về điều đó:

torch-model-archiver -f \
  --model-name model \
  --version 1.0  \
  --serialized-file $model_file \
  --handler $hander_file \
  --extra-files $index_to_name_file \
  --export-path $model_path

Triển khai mô hình cho Vertex AI

Sau khi lưu tệp mô hình, bước tiếp theo là tải mô hình lên Vertex AI. Nếu cấu phần phần mềm mô hình của bạn chưa có trong Google Cloud Storage, trước tiên, hãy sao chép bản lưu trữ mô hình vào đó bằng một lệnh như gsutil cp $model_path gs://${your-bucket}/models/model.

Sau khi sao chép, bạn có thể sử dụng Đăng ký mô hình của Vertex AI để tải mô hình lên hoặc sử dụng dòng lệnh gcloud và chạy một lệnh như sau:

gcloud ai models upload \
  --artifact-uri=gs://{your-bucket}/models/model \
  --display-name=${display-name} \
  --container-image-uri=${model-container} \
  --container-grpc-ports=8500

MẸO: Để đạt được hiệu suất tối ưu, hãy bật tính năng dự đoán gRPC bằng cờ container-grpc-ports. Xem thêm thông tin về thông tin dự đoán gRPC tại tài liệu về định dạng tải trọng. Bạn chỉ có thể chỉ định cờ này bằng công cụ dòng lệnh gcloud.

Quản lý thiết bị đầu cuối theo mô hình

Sau khi tải mô hình lên Vertex AI, hãy tạo một điểm cuối và triển khai mô hình thông qua trang Dự đoán trực tuyến bằng cách tạo một điểm cuối mới hoặc bằng cách sử dụng dòng lệnh gcloud với các lệnh endpoints createendpoints deploy-model. Ví dụ:

Tạo mô hình:

gcloud ai endpoints create \
  --display-name=${endpoint-name}

Triển khai mô hình

gcloud ai endpoints deploy-model {endpoint-id} \
  --model=${model-id} \
  --traffic-split=0=100 \
  --display-name=${model-display-name} \
  --min-replica-count=${min-replica-count} \
  --max-replica-count=${max-replica-count}

Sau khi triển khai mô hình, bạn có thể kết nối với mô hình của mình trong Earth Engine để thực hiện suy luận.