Untuk men-deploy agen di Agent Engine:
- (Opsional) Menentukan persyaratan paket
- (Opsional) Tentukan file sumber
- (Opsional) Mengatur direktori Cloud Storage
- (Opsional) Menentukan metadata resource
- Membuat instance
AgentEngine
Sebelum memulai
Sebelum men-deploy agen, pastikan Anda telah menyelesaikan tugas berikut:
Langkah 1: Tentukan persyaratan paket
Berikan kumpulan paket yang diperlukan oleh agen agar dapat di-deploy. File ini dapat berupa daftar item yang akan diinstal oleh pip, atau jalur ke file yang mengikuti Format File Persyaratan.
Jika agen tidak memiliki dependensi, Anda dapat menyetelnya ke Tidak ada:
requirements = None
Jika agen menggunakan template khusus framework, Anda harus menentukan versi SDK
yang diimpor (misalnya, 1.77.0
) saat mengembangkan agen.
LangChain
requirements = [
"google-cloud-aiplatform[agent_engines,langchain]",
# any other dependencies
]
LangGraph
requirements = [
"google-cloud-aiplatform[agent_engines,langgraph]",
# any other dependencies
]
[Opsional] Batasan versi
Jika Anda ingin atau perlu menetapkan batas atas atau menyematkan versi paket tertentu
(misalnya google-cloud-aiplatform
):
requirements = [
# See https://pypi.org/project/google-cloud-aiplatform for the latest version.
"google-cloud-aiplatform[agent_engines,langgraph]==1.77.0",
]
Anda dapat menambahkan paket dan batasan tambahan ke daftar:
requirements = [
"google-cloud-aiplatform[agent,langgraph]==1.75.0",
"cloudpickle==3.0", # new
]
[Opsional] Cabang Pengembangan
Anda dapat mengarahkan ke versi paket yang ada di cabang GitHub atau permintaan pull, misalnya:
requirements = [
"google-cloud-aiplatform[agent_engines,langchain] @ git+https://github.com/googleapis/python-aiplatform.git@BRANCH_NAME", # new
"cloudpickle==3.0",
]
[Opsional] Format File Persyaratan
Anda dapat mempertahankan daftar persyaratan dalam file (misalnya, path/to/requirements.txt
):
requirements = "path/to/requirements.txt"
dengan path/to/requirements.txt
adalah file teks yang mengikuti Format File Persyaratan, misalnya:
google-cloud-aiplatform[agent_engines,langchain]
cloudpickle==3.0
Langkah 2: Paket tambahan
Anda dapat menyertakan file atau direktori lokal yang berisi file sumber Python lokal yang diperlukan. Dibandingkan dengan persyaratan paket, hal ini akan memungkinkan Anda menggunakan utilitas pribadi yang telah Anda kembangkan yang tidak tersedia di PyPI atau GitHub.
Jika agen tidak memerlukan paket tambahan, Anda dapat menetapkannya ke None
:
extra_packages = None
[Opsional] File dan direktori
Untuk menyertakan satu file (misalnya, agents/agent.py
), Anda dapat menambahkannya ke daftar:
extra_packages = ["agents/agent.py"]
Untuk menyertakan kumpulan file di seluruh direktori (misalnya agents/
), Anda dapat menentukan direktori:
extra_packages = ["agents"] # directory that includes agents/agent.py
[Opsional] Biner roda
Anda dapat menyertakan biner roda Python
(misalnya, path/to/python_package.whl
) dan menentukannya dalam
persyaratan paket:
requirements = [
"google-cloud-aiplatform[agent,langgraph]",
"cloudpickle==3.0",
"python_package.whl", # install from the whl file that was uploaded
]
extra_packages = ["path/to/python_package.whl"] # bundle the whl file for uploading
Langkah 3: Direktori Cloud Storage
Artefak staging akan ditimpa jika sesuai dengan sub-bucket yang ada (folder di bucket Cloud Storage). Jika perlu, Anda dapat menentukan subbucket untuk artefak staging. Langkah ini bersifat opsional, dan Anda
dapat menetapkannya ke None
jika tidak keberatan untuk menimpa file di
sub-bucket default:
gcs_dir_name = None
Untuk menghindari file ditimpa (misalnya, untuk lingkungan yang berbeda seperti dev, staging, prod), Anda dapat menyiapkan sub-bucket yang sesuai, dan menentukan sub-bucket untuk melakukan staging artefak, seperti:
gcs_dir_name = "dev" # or "staging" or "prod"
Jika ingin atau perlu menghindari konflik, Anda dapat membuat UUID acak, misalnya:
import uuid
gcs_dir_name = str(uuid.uuid4())
Langkah 4: Metadata resource
Anda dapat menetapkan metadata pada resource ReasoningEngine
yang dibuat di Vertex AI, misalnya:
display_name = "Currency Exchange Rate Agent (Staging)"
description = """
An agent that has access to tools for looking up the exchange rate.
If you run into any issues, please contact the dev team.
"""
Untuk mengetahui kumpulan parameter lengkap, buka referensi API.
Langkah 5: Buat instance AgentEngine
Untuk men-deploy aplikasi di Vertex AI, gunakan agent_engines.create
dan teruskan objek sebagai parameter:
remote_agent = agent_engines.create(
local_agent, # Required.
requirements=requirements, # Optional.
extra_packages=extra_packages, # Optional.
gcs_dir_name=gcs_dir_name, # Optional.
display_name=display_name, # Optional.
description=description, # Optional.
)
Deployment memerlukan waktu beberapa menit untuk dijalankan. Saat men-deploy agen,
- Paket artefak dibuat secara lokal, yang terdiri dari:
*.pkl
file pickle yang sesuai dengan local_agent.requirements.txt
file teks yang berisi persyaratan paket.dependencies.tar.gz
file tar yang berisi paket tambahan.
- Paket diupload ke Cloud Storage (di bagian sub-bucket yang sesuai) untuk melakukan staging artefak.
- URI Cloud Storage untuk masing-masing artefak ditentukan dalam PackageSpec.
- Layanan Agent Engine menerima permintaan, mem-build penampung, dan mengaktifkan server HTTP di backend.
Latensi deployment bergantung pada total waktu yang diperlukan untuk menginstal
paket yang diperlukan. Setelah di-deploy, remote_agent
sesuai dengan instance
local_agent
yang berjalan di Vertex AI dan dapat dikueri atau
dihapus. Instance ini terpisah dari instance lokal agen.
Setiap agen yang di-deploy memiliki ID unik. Anda dapat menjalankan perintah berikut
untuk mendapatkan ID resource_name
untuk agen yang di-deploy:
remote_agent.resource_name
Praktik Terbaik
- Sematkan versi paket Anda (untuk build yang dapat direproduksi). Paket umum yang perlu
dilacak mencakup:
google-cloud-aiplatform
,cloudpickle
,langchain
,langchain-core
,langchain-google-vertexai
, danpydantic
. - Minimalkan jumlah dependensi dalam aplikasi Anda. Hal ini mengurangi jumlah perubahan yang menyebabkan error saat mengupdate dependensi dan mempermudah update aplikasi dari waktu ke waktu untuk fitur yang lebih baru.
Men-deploy dalam Produksi dengan Paket Awal Agen
Paket Awal Agen adalah kumpulan template agen AI generatif siap produksi yang dibuat untuk Vertex AI Agent Engine. Alat ini mempercepat deployment dengan menyediakan:
- Template Agen Siap Pakai: ReAct, RAG, multi-agen, dan lainnya.
- Interactive Playground: Menguji dan berinteraksi dengan agen Anda.
- Infrastruktur Otomatis: Menggunakan Terraform untuk pengelolaan resource yang disederhanakan.
- Pipeline CI/CD: Alur kerja deployment otomatis yang memanfaatkan Cloud Build.
- Kemampuan observasi: Mencakup dukungan bawaan untuk Cloud Trace dan Cloud Logging.
Mulai: Panduan memulai