52 lines
2.0 KiB
Python
52 lines
2.0 KiB
Python
#!/usr/bin/env python3
|
|
"""
|
|
deploy_agent.py — Deploy ADK agent til Vertex AI Agent Engine
|
|
Usage: python3 deploy_agent.py [--project PROJECT_ID] [--region REGION] \
|
|
[--display-name DISPLAY_NAME] [--staging-bucket GS_URI]
|
|
|
|
Krever: google-cloud-aiplatform>=1.157.0, google-adk>=2.0.0
|
|
"""
|
|
|
|
import argparse
|
|
import sys
|
|
import vertexai
|
|
from vertexai import agent_engines # riktig import for SDK >= 1.157.0
|
|
|
|
|
|
def deploy(project: str, region: str, display_name: str, staging_bucket: str):
|
|
print(f"Initialiserer Vertex AI: project={project}, region={region}")
|
|
vertexai.init(project=project, location=region, staging_bucket=staging_bucket)
|
|
|
|
# Importer Jason ADK agent
|
|
sys.path.insert(0, ".")
|
|
import agent as my_agent
|
|
|
|
print(f"Deployer agent '{display_name}' til Vertex AI Agent Engine i {region}...")
|
|
remote_agent = agent_engines.create(
|
|
my_agent.root_agent,
|
|
requirements=[
|
|
"google-cloud-aiplatform[adk,agent_engines]>=1.157.0",
|
|
"google-adk>=2.2.0",
|
|
"httpx>=0.27.0",
|
|
"google-auth>=2.29.0",
|
|
],
|
|
extra_packages=["./opax_mcp_client"],
|
|
display_name=display_name,
|
|
)
|
|
print(f"\n✅ Agent deployet!")
|
|
print(f" Resource name : {remote_agent.resource_name}")
|
|
print(f" Console : https://console.cloud.google.com/ai/agents?project={project}")
|
|
print(f" Region : {region}")
|
|
print("\n⚠️ Husk: kjør teardown når du er ferdig for å unngå unnødige kostnader.")
|
|
return remote_agent
|
|
|
|
|
|
if __name__ == "__main__":
|
|
parser = argparse.ArgumentParser(description="Deploy Jason ADK agent til Vertex AI")
|
|
parser.add_argument("--project", default="propane-will-491900-m5")
|
|
parser.add_argument("--region", default="us-central1")
|
|
parser.add_argument("--display-name", default="jason-vauger-v1")
|
|
parser.add_argument("--staging-bucket", default="gs://propane-will-491900-m5-agent-staging")
|
|
args = parser.parse_args()
|
|
deploy(args.project, args.region, args.display_name, args.staging_bucket)
|