Memecahkan masalah deployment agen

Dokumen ini menunjukkan cara menyelesaikan error yang mungkin Anda alami saat men-deploy agen.

Error Template Bawaan

Jika Anda mengalami masalah dengan template LangchainAgent selama deployment, hal ini mungkin disebabkan oleh salah satu masalah di bagian ini.

Error server internal

Masalah:

Anda akan menerima pesan error yang mirip dengan berikut ini:

InternalServerError: 500 Revision XXX is not ready and cannot serve traffic.

Sayangnya, ini adalah error umum untuk masalah apa pun dengan penampung saat runtime, dan kemungkinan penyebabnya adalah salah satu dari banyak error yang mungkin terjadi.

Kemungkinan penyebab:

  • Status kotor di LangchainAgent. Hal ini dapat terjadi jika .set_up() dipanggil di LangchainAgent sebelum men-deploy agen.
  • Versi paket yang tidak konsisten. Hal ini dapat terjadi jika paket yang diinstal di lingkungan pengembangan berbeda dengan paket yang diinstal di lingkungan jarak jauh di Vertex AI Agent Engine.

Solusi yang direkomendasikan:

  • Status kotor di LangchainAgent. Buat instance baru dari LangchainAgent atau hapus agent.set_up() dari kode sebelum men-deploy agen.
  • Spesifikasi paket yang tidak konsisten. Lihat bagian tentang pemecahan masalah error serialisasi.

Error serialisasi

Secara umum, penting untuk memastikan bahwa lingkungan "lokal" dan "jarak jauh" disinkronkan saat men-deploy agen. Anda dapat memastikannya dengan menentukan requirements= saat men-deploy agen.

Jika Anda mengalami masalah dengan serialisasi (error terkait "pickle" atau "pickling" sama dengan error "serialisasi"), hal ini mungkin disebabkan oleh salah satu masalah yang dijelaskan di bagian ini.

Versi Pydantic

Masalah:

Anda akan menerima pesan error yang mirip dengan berikut ini:

PicklingError: Can't pickle <cyfunction str_validator at 0x7ca030133d30>: it's
not the same object as pydantic.validators.str_validator

Kemungkinan penyebab:

Hal ini dapat terjadi jika paket pydantic Anda lebih awal dari versi 2.6.4. Untuk memeriksa versi yang Anda gunakan, jalankan perintah berikut di terminal:

pip show pydantic

Solusi yang direkomendasikan:

Perbarui paket Anda dengan menjalankan perintah berikut di terminal:

pip install pydantic --upgrade

Jalankan perintah berikut di terminal untuk memverifikasi bahwa Anda menggunakan versi 2.6.4 atau yang lebih baru:

pip show pydantic

Jika Anda berada di instance notebook (misalnya, Jupyter, Colab, atau Workbench), Anda mungkin perlu memulai ulang runtime untuk menggunakan paket yang diupdate.

Versi Cloudpickle

Masalah:

Anda akan menerima pesan error yang mirip dengan berikut ini:

AttributeError: Can't get attribute '_class_setstate' on <module 'cloudpickle.cloudpickle'
from '/usr/local/lib/python3.10/site-packages/cloudpickle/cloudpickle.py'>

Kemungkinan penyebab:

Hal ini dapat terjadi jika versi paket cloudpickle Anda berbeda di lingkungan pengembangan dan lingkungan deployment. Untuk memeriksa versi yang Anda gunakan dalam pengembangan, jalankan perintah berikut di terminal:

pip show cloudpickle

Solusi yang direkomendasikan:

Deploy versi cloudpickle yang sama di kedua lingkungan, seperti lingkungan pengembangan lokal dan agen yang di-deploy dari jarak jauh dengan menentukan requirements= saat men-deploy agen.

Error server internal

Masalah:

Anda akan menerima pesan error yang mirip dengan berikut ini:

InternalServerError: 500 Revision XXX is not ready and cannot serve traffic.

Kemungkinan penyebab:

Hal ini dapat terjadi jika sys_version= berbeda dari lingkungan pengembangan saat men-deploy agen.

Solusi yang direkomendasikan:

Setelah men-deploy agen, pertimbangkan untuk menghapus sys_version= dari argumen input. Jika Anda masih mengalami masalah, kirimkan laporan bug.

Error bucket Cloud Storage

Jika Anda mengalami masalah dengan bucket penyiapan Cloud Storage yang digunakan pada waktu deployment untuk mengumpulkan dan mengupload agen, hal ini mungkin disebabkan oleh salah satu masalah berikut:

Error izin

Solusi yang direkomendasikan:

Jika Anda ingin menggunakan bucket yang sudah ada: pastikan akun utama yang diautentikasi untuk menggunakan Vertex AI (diri Anda atau akun layanan) memiliki akses Storage Admin ke bucket, dan berikan izin ke akun layanan.

Atau, Anda dapat menentukan bucket baru saat men-deploy agen dan SDK akan membuat bucket dengan izin yang diperlukan.

Jika Anda masih mengalami masalah, kirimkan laporan bug.

Subdirektori bucket Cloud Storage tidak dibuat

Masalah:

Anda akan menerima pesan error yang mirip dengan berikut ini:

NotFound: 404 Can not copy from \"gs://[LOCATION]-*/agent_engine/agent_engine.pkl\" to \"gs://*/code.pkl\", check if the source object and target bucket exist.

(Error 404 terjadi saat sistem mencoba menyalin ke folder yang tidak ada.)

Kemungkinan penyebab:

Hal ini kemungkinan disebabkan oleh masalah interpolasi string di versi google-cloud-aiplatform yang lebih lama dari versi 1.49.0. Masalah ini diperbaiki dalam versi yang lebih baru. Untuk memeriksa versi google-cloud-aiplatform yang Anda gunakan, jalankan perintah berikut di terminal:

pip show google-cloud-aiplatform

Solusi yang direkomendasikan:

Perbarui paket Anda dengan menjalankan perintah berikut di terminal:

pip install google-cloud-aiplatform --upgrade

Pastikan Anda menggunakan google-cloud-aiplatform versi 1.49.0 atau yang lebih baru dengan menjalankan perintah berikut di terminal:

pip show google-cloud-aiplatform

Jika Anda menggunakan instance notebook (misalnya, Jupyter, Colab, atau Workbench), Anda mungkin perlu memulai ulang runtime sebelum dapat menggunakan paket yang diupdate.

Error pelanggaran VPC-SC

Jika Anda mengalami masalah dengan VPC-SC, salah satu masalah berikut mungkin menjadi penyebabnya:

Error izin

Masalah:

Anda akan menerima pesan error yang mirip dengan berikut ini:

Reasoning Engine instance REASONING_ENGINE_ID failed to start and cannot serve traffic.

atau:

Request is prohibited by organization's policy.

Kemungkinan penyebab:

Hal ini kemungkinan disebabkan oleh tidak adanya aturan traffic masuk yang diperlukan di perimeter VPC-SC.

Solusi yang direkomendasikan:

Jika Anda menggunakan Vertex AI Agent Engine di lingkungan VPC-SC, Anda harus membuat aturan masuk di perimeter untuk mengizinkan masuk dari Agen Layanan Mesin Inferensi (service-PROJECT_NUMBER@gcp-sa-aiplatform-re.iam.gserviceaccount.com) ke layanan storage.googleapis.com dan layanan artifactregistry.googleapis.com.

Referensi dukungan

Jika masalah Anda masih belum terselesaikan, lihat panduan dukungan kami untuk mendapatkan bantuan.