Memecahkan masalah saat men-deploy aplikasi

Dokumen ini menunjukkan cara mengatasi {i>error<i} yang mungkin Anda alami saat men-deploy aplikasi.

Error Template Bawaan

Jika Anda mengalami masalah dengan template LangchainAgent selama deployment, mungkin itu karena salah satu masalah di bagian ini.

Error Model Builder atau Runnable Builder

Masalah:

Anda menerima pesan error yang mirip dengan yang berikut ini:

AttributeError: 'LangchainAgent' object has no attribute '_model_builder'

atau

AttributeError: 'LangchainAgent' object has no attribute '_runnable_builder'

Kemungkinan penyebab:

Hal ini mungkin terjadi jika Anda menggunakan versi google-cloud-aiplatform yang lebih dari 1.50.0 untuk menentukan LangchainAgent dalam pengembangan Anda tetapi men-deploy-nya dengan versi yang lebih lama dari 1.51.0 di requirements=. Untuk memeriksa versi yang Anda gunakan dalam pengembangan jalankan perintah berikut ini di terminal Anda:

pip show google-cloud-aiplatform

Solusi yang direkomendasikan:

Jika Anda menggunakan versi google-cloud-aiplatform sebelum versi 1.51.0, menentukan versi google-cloud-aiplatform sebelum versi 1.51.0 dalam requirements= saat men-deploy alasannya Google Cloud Platform.

Jika Anda menggunakan versi google-cloud-aiplatform setelah versi 1.50.0, tentukan versi google-cloud-aiplatform setelah versi 1.50.0 dalam requirements= saat men-deploy alasannya Google Cloud Platform.

Kesalahan server internal

Masalah:

Anda menerima pesan error yang mirip dengan yang berikut ini:

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

Sayangnya, ini adalah error umum untuk masalah apa pun pada container di runtime, dan kemungkinan penyebabnya adalah salah satu dari banyak error yang mungkin terjadi.

Kemungkinan penyebab:

  • Keadaan kotor pada LangchainAgent. Hal ini dapat terjadi jika .set_up() dipanggil di LangchainAgent sebelum men-deploy ke mesin penalaran.
  • Versi paket tidak konsisten. Ini mungkin terjadi jika paket yang diinstal di lingkungan pengembangan berbeda dari paket yang diinstal di lingkungan jarak jauh dalam mesin penalaran.

Solusi yang direkomendasikan:

  • Keadaan kotor pada LangchainAgent. Buat instance baru dari LangchainAgent atau hapus agent.set_up() dari kode sebelum men-deploy ke mesin penalaran.
  • Spesifikasi paket tidak konsisten. Lihat bagian tentang pemecahan masalah error serialisasi.

Error serialisasi

Secara umum, penting untuk memastikan bahwa dan "jarak jauh" lingkungan tersinkronisasi saat men-deploy ke mesin penalaran. Anda dapat memastikannya dengan menentukan requirements= saat men-deploy ke mesin penalaran.

Jika Anda mengalami masalah dengan serialisasi (kesalahan terkait "acar" atau "pengasapan" identik dengan "serialisasi" kesalahan), itu mungkin disebabkan oleh satu masalah yang akan dijelaskan di bagian ini.

Versi Pydantic

Masalah:

Anda menerima pesan error yang mirip dengan yang 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 mungkin terjadi jika paket pydantic Anda lebih lama dari versi 2.6.4. Kepada periksa versi yang Anda gunakan, jalankan perintah berikut di terminal Anda:

pip show pydantic

Solusi yang direkomendasikan:

Update paket Anda dengan menjalankan perintah berikut di terminal:

pip install pydantic --upgrade

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

pip show pydantic

Jika Anda berada dalam instance notebook (misalnya, Jupyter atau Colab atau Workbench), Anda mungkin perlu memulai ulang {i>runtime<i} Anda untuk menggunakan paket yang diperbarui.

Versi Cloud Pickle

Masalah:

Anda menerima pesan error yang mirip dengan yang 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:

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

pip show cloudpickle

Solusi yang direkomendasikan:

Deploy versi cloud Pickle yang sama di kedua lingkungan (misalnya lingkungan pengembangan dan lingkungan reasoning Engine yang di-deploy dari jarak jauh) dengan menentukan requirements= saat men-deploy mesin penalaran.

Kesalahan server internal

Masalah:

Anda menerima pesan error yang mirip dengan yang 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 ketika men-deploy ke mesin penalaran.

Solusi yang direkomendasikan:

Pertimbangkan untuk menghapus sys_version= dari argumen input saat men-deploy ke mesin penalaran. Jika Anda masih menjalankan jika ada masalah, kirimkan laporan bug.

Error bucket Cloud Storage

Jika Anda mengalami masalah dengan bucket staging Cloud Storage yang digunakan pada waktu penerapan untuk mengumpulkan dan mengupload agen, mungkin karena terhadap salah satu masalah berikut:

Error izin

Solusi yang direkomendasikan:

Jika ingin menggunakan bucket yang sudah ada: pastikan akun utama yang diautentikasi untuk menggunakan Vertex AI (baik Anda sendiri maupun akun layanan) memiliki akses Storage Admin ke bucket, dan memberikan izin ke Akun layanan reasoning engine yang dikelola Google.

Atau, Anda dapat menentukan bucket baru saat men-deploy ke penalaran mesin dan SDK klien mesin penalaran akan membuat bucket dengan izin akses.

Jika Anda masih mengalami masalah, ajukan laporan bug.

Subdirektori bucket Cloud Storage tidak dibuat

Masalah:

Anda menerima pesan error yang mirip dengan yang berikut ini:

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

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

Kemungkinan penyebab:

Hal ini mungkin disebabkan oleh masalah dengan interpolasi {i>string<i} dalam versi google-cloud-aiplatform lebih lama dari versi 1.49.0. Hal ini sudah diperbaiki) di versi yang lebih baru. Untuk memeriksa versi google-cloud-aiplatform yang Anda gunakan gunakan, jalankan perintah berikut di terminal Anda:

pip show google-cloud-aiplatform

Solusi yang direkomendasikan:

Update 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 Anda:

pip show google-cloud-aiplatform

Jika Anda menggunakan instance notebook (misalnya, Jupyter atau Colab atau Workbench), Anda mungkin perlu memulai ulang {i>runtime<i} sebelum Anda dapat menggunakan paket yang diperbarui.