Bekerja dengan operasi yang berjalan lama

Halaman ini menjelaskan cara menangani operasi yang berjalan lama dalam AutoML Natural Language.

Pengantar

Beberapa operasi dalam AutoML Natural Language memerlukan waktu beberapa saat untuk diselesaikan:

  • datasets.importData
  • datasets.exportData
  • datasets.delete
  • models.batchPredict
  • models.create
  • models.delete
  • models.deploy
  • models.undeploy

Jika menggunakan UI AutoML Natural Language, Anda dapat menutup jendela browser tanpa memengaruhi operasi. Panel akan diperbarui saat operasi selesai.

Jika Anda melakukan panggilan API yang membutuhkan waktu lama untuk diselesaikan, panggilan awal akan langsung ditampilkan, meskipun operasi masih berjalan. Ada beberapa metode bantuan yang dapat Anda gunakan untuk menentukan status operasi yang berjalan lama.

AutoML Natural Language mengirimkan email kepada pemilik project saat operasi yang berjalan lama selesai.

Polling untuk status operasi

Anda dapat memeriksa status operasi yang berjalan lama. Pendekatan ini tidak memblokir program Anda, tetapi Anda harus menyimpan polling sampai operasi selesai.

Untuk mendapatkan status operasi, gunakan ID operasi dari respons saat memulai operasi.

Pada perintah di bawah, ganti operation-name dengan nama lengkap operasi Anda. Nama lengkap memiliki format projects/{project-id}/locations/us-central1/operations/{operation-id}.

curl -X GET \
  -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \
  -H "Content-Type: application/json" \
  https://automl.googleapis.com/v1/operation-name

Anda akan melihat output yang serupa dengan yang berikut ini untuk operasi impor: Dalam output, ada objek metadata yang berisi informasi khusus jenis permintaan tersebut. Kolom done menunjukkan apakah operasi selesai atau belum. Jika operasi selesai, respons akan berisi informasi tentang efek permintaan.

{
  "name": "projects/1234/locations/us-central1/operations/TBL2126599795587061786",
  "metadata": {
...
  },
  "done": true,
  "response": {
...
  }
}

Menunggu operasi

Jika ingin memblokir eksekusi pada operasi ini, Anda dapat menunggu operasi selesai (atau hingga waktu tunggu yang ditentukan).

Dalam perintah di bawah ini, ganti:

  • operation-name dengan nama lengkap operasi Anda. Nama lengkap memiliki format projects/{project-id}/locations/us-central1/operations/{operation-id}.

  • timeout dengan jumlah waktu tunggu maksimum yang Anda inginkan, dalam (pecahan) detik, diakhiri dengan "s". Misalnya, "4,5 detik" menyebabkan perintah tunggu muncul dalam empat setengah detik jika operasi masih berjalan.

curl -X POST \
  -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \
  -H "Content-Type: application/json" \
   -d '{"timeout":"timeout"}' \
  https://automl.googleapis.com/v1/operation-name:wait

Membatalkan Operasi

Anda dapat membatalkan tugas impor atau pelatihan menggunakan ID operasi. Pembatalan tidak dijamin akan berhasil. Menghapus operasi tidak didukung.

Pada perintah di bawah, ganti operation-name dengan nama lengkap operasi Anda. Nama lengkap memiliki format projects/{project-id}/locations/us-central1/operations/{operation-id}.

curl -X POST \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \
  https://automl.googleapis.com/v1/operation-name:cancel