Triển khai Claude trên Google Cloud Vertex AI
Điểm nổi bật
Nhấn để đến mục tương ứng
- 1 GCP cung cap giam gia len den 30-50% cho cac cam ket 1-3 nam Su dung BigQuery de phan tich chi phi su dung va tim co hoi toi uu.
- 2 Toi uu chi phi tren Vertex AI Chi phi su dung Claude tren Vertex AI gom 2 phan: phi su dung model (tinh theo token) va phi ha tang GCP (compute, networking).
- 3 Buoc tiep theo Ban da nam duoc cach trien khai Claude tren Google Cloud Vertex AI.
- 4 Tuy theo nhu cau, ban co the tich hop them voi BigQuery de phan tich du lieu quy mo lon, hoac thiet lap CI/CD pipeline voi Cloud Build.
- 5 Google Cloud Vertex AI la mot trong hai nen tang cloud chinh thuc cung cap Claude (ben canh AWS Bedrock).
Google Cloud Vertex AI là một trong hai nền tảng cloud chính thức cung cấp Claude (bên cạnh AWS Bedrock). Với các doanh nghiệp đã đầu tư vào hệ sinh thái Google Cloud, việc sử dụng Claude thông qua Vertex AI mang lại nhiều lợi thế về tích hợp, bảo mật và quản lý chi phí. Bài viết này hướng dẫn bạn triển khai Claude trên Vertex AI từ đầu đến cuối, bao gồm cả so sánh với AWS Bedrock để giúp bạn lựa chọn phù hợp.
Tại sao chọn Vertex AI cho Claude?
Trước khi đi vào chi tiết kỹ thuật, hãy hiểu khi nào Vertex AI là lựa chọn tốt hơn so với sử dụng Claude API trực tiếp hoặc AWS Bedrock.
Khi nào nên chọn Vertex AI
- Đã có hạ tầng GCP: Công ty bạn đã dùng Google Cloud cho các dịch vụ khác (Compute Engine, Cloud Run, GKE). Triển khai Claude trên Vertex AI giúp giảm độ phức tạp trong quản lý hạ tầng
- Cần tích hợp BigQuery: Nếu dữ liệu phân tích nằm trong BigQuery, Vertex AI cho phép kết nối trực tiếp mà không cần chuyển dữ liệu ra ngoài GCP
- Yêu cầu data residency: Vertex AI hỗ trợ nhiều region, bao gồm các region gần Việt Nam (asia-southeast1 tại Singapore) giúp giảm độ trễ và đáp ứng yêu cầu lưu trữ dữ liệu trong khu vực
- Quản lý tập trung: Tất cả chi phí AI nằm trong một hóa đơn GCP duy nhất, dễ dàng kiểm soát và phân bổ chi phí theo dự án hoặc phòng ban
- IAM sẵn có: Tận dụng hệ thống IAM của GCP để phân quyền truy cập Claude theo vai trò và dự án
Khi nào không nên chọn Vertex AI
- Công ty chưa có hạ tầng GCP và không có kế hoạch chuyển đổi
- Chỉ cần sử dụng Claude đơn giản, không cần tích hợp với các dịch vụ cloud khác
- Ngân sách hạn chế và không muốn trả thêm phí hạ tầng GCP
Thiết lập ban đầu trên GCP
Quy trình thiết lập gồm 4 bước chính: tạo project, bật API, cấu hình IAM và cài đặt SDK.
Bước 1: Tạo GCP Project
Nếu chưa có project, tạo project mới dành riêng cho các dịch vụ AI. Việc tách riêng project giúp kiểm soát chi phí và phân quyền tốt hơn.
# Tao project moi
gcloud projects create my-claude-project --name="Claude AI Production"
# Dat project mac dinh
gcloud config set project my-claude-project
# Bat billing cho project
gcloud billing projects link my-claude-project --billing-account=BILLING_ACCOUNT_ID
Bước 2: Bật Vertex AI API
Bật các API cần thiết cho Vertex AI và các dịch vụ liên quan:
# Bat Vertex AI API
gcloud services enable aiplatform.googleapis.com
# Bat cac API ho tro
gcloud services enable compute.googleapis.com
gcloud services enable iam.googleapis.com
gcloud services enable logging.googleapis.com
gcloud services enable monitoring.googleapis.com
Bước 3: Cấu hình IAM
Thiết lập quyền truy cập theo nguyên tắc least privilege. Tạo service account riêng cho ứng dụng sử dụng Claude:
# Tao service account
gcloud iam service-accounts create claude-app-sa --display-name="Claude Application Service Account"
# Gan role Vertex AI User
gcloud projects add-iam-policy-binding my-claude-project --member="serviceAccount:claude-app-sa@my-claude-project.iam.gserviceaccount.com" --role="roles/aiplatform.user"
# Tao key file (chi dung cho development, production nen dung Workload Identity)
gcloud iam service-accounts keys create key.json --iam-account=claude-app-sa@my-claude-project.iam.gserviceaccount.com
Các role IAM liên quan đến Vertex AI:
- roles/aiplatform.user: Quyền sử dụng mô hình, tạo prediction. Dành cho developer và ứng dụng
- roles/aiplatform.admin: Toàn quyền quản lý Vertex AI. Chỉ dành cho admin
- roles/aiplatform.viewer: Chỉ quyền xem. Dành cho team giám sát
Bước 4: Cài đặt Python SDK
# Cai dat Anthropic SDK voi ho tro Vertex AI
pip install anthropic[vertex]
# Hoac cai dat rieng
pip install anthropic google-auth google-cloud-aiplatform
Sử dụng Claude qua Vertex AI với Python SDK
Anthropic cung cấp SDK chính thức hỗ trợ Vertex AI. Code tương tự như sử dụng Claude API trực tiếp, chỉ khác phần khởi tạo client.
Khởi tạo client và gửi request cơ bản
from anthropic import AnthropicVertex
# Khoi tao client voi Vertex AI
client = AnthropicVertex(
region="us-east5", # Region ho tro Claude
project_id="my-claude-project"
)
# Gui request co ban
message = client.messages.create(
model="claude-sonnet-4@20250514", # Model ID tren Vertex AI
max_tokens=1024,
messages=[
{
"role": "user",
"content": "Giai thich cach Vertex AI hoat dong trong 3 cau."
}
]
)
print(message.content[0].text)
Sử dụng với System Prompt và Streaming
from anthropic import AnthropicVertex
client = AnthropicVertex(
region="us-east5",
project_id="my-claude-project"
)
# Streaming response voi system prompt
with client.messages.stream(
model="claude-sonnet-4@20250514",
max_tokens=2048,
system="Ban la chuyen gia phan tich du lieu. Tra loi bang tieng Viet, "
"su dung so lieu cu the va vi du thuc te tai Viet Nam.",
messages=[
{
"role": "user",
"content": "Phan tich xu huong thuong mai dien tu Viet Nam 2024-2025"
}
]
) as stream:
for text in stream.text_stream:
print(text, end="", flush=True)
Xử lý lỗi và retry
from anthropic import AnthropicVertex, APIError, RateLimitError
import time
client = AnthropicVertex(
region="us-east5",
project_id="my-claude-project"
)
def call_claude_with_retry(prompt, max_retries=3):
"""Goi Claude voi co che retry va xu ly loi"""
for attempt in range(max_retries):
try:
response = client.messages.create(
model="claude-sonnet-4@20250514",
max_tokens=1024,
messages=[{"role": "user", "content": prompt}]
)
return response
except RateLimitError:
wait_time = 2 ** attempt # Exponential backoff
print(f"Rate limit. Cho {wait_time}s roi thu lai...")
time.sleep(wait_time)
except APIError as e:
print(f"Loi API: {e.message}")
if attempt == max_retries - 1:
raise
time.sleep(1)
raise Exception("Da het so lan thu lai")
So sánh Vertex AI và AWS Bedrock
Cả hai nền tảng đều cung cấp Claude, nhưng có nhiều điểm khác biệt quan trọng ảnh hưởng đến quyết định của doanh nghiệp.
Khả dụng model
Cả Vertex AI và Bedrock đều hỗ trợ các model Claude mới nhất (Opus, Sonnet, Haiku). Tuy nhiên, thời điểm ra mắt trên mỗi nền tảng có thể chênh lệch vài ngày đến vài tuần. Bedrock thường có model mới sớm hơn do AWS là đối tác chiến lược đầu tiên của Anthropic.
Region và độ trễ
Đối với doanh nghiệp Việt Nam, độ trễ (latency) là yếu tố quan trọng:
- Vertex AI: Hỗ trợ region asia-southeast1 (Singapore), độ trễ tương đối thấp từ Việt Nam (khoảng 20-50ms network latency)
- Bedrock: Region gần nhất là ap-southeast-1 (Singapore), độ trễ tương đương
Về mặt độ trễ mạng, cả hai nền tảng tương đương khi sử dụng region Singapore.
Tích hợp hệ sinh thái
- Vertex AI: Tích hợp sâu với BigQuery, Cloud Storage, Dataflow, Cloud Functions. Nếu dữ liệu của bạn nằm trên GCP, đây là lựa chọn tự nhiên
- Bedrock: Tích hợp sâu với S3, Lambda, SageMaker, Step Functions. Nếu hạ tầng hiện tại là AWS, Bedrock sẽ dễ triển khai hơn
Giá cả
Giá sử dụng Claude trên cả hai nền tảng tương đương nhau và gần với giá API trực tiếp của Anthropic. Sự khác biệt chính nằm ở chi phí hạ tầng phụ trợ (compute, storage, networking) và các chương trình giảm giá (committed use discounts).
Toi dang can tu van lua chon giua Vertex AI va AWS Bedrock
de trien khai Claude cho cong ty voi cac thong tin sau:
- Ha tang hien tai: Dang dung GCP cho 70% workload, AWS cho 30%
- Du lieu chinh nam tren BigQuery (50TB)
- Team co 5 backend developer, 3 nguoi co kinh nghiem GCP
- Budget cho AI: $5000/thang
- Yeu cau: latency thap, data residency tai Singapore hoac gan hon
- Use case: Customer support chatbot, document analysis, code review
Hay so sanh chi tiet va de xuat lua chon phu hop,
bao gom uoc tinh chi phi hang thang.
Tối ưu chi phí trên Vertex AI
Chi phí sử dụng Claude trên Vertex AI gồm 2 phần: phí sử dụng model (tính theo token) và phí hạ tầng GCP (compute, networking). Dưới đây là các chiến lược tối ưu:
Chọn model phù hợp
Không phải mọi tác vụ đều cần model mạnh nhất. Phân loại tác vụ và chọn model tương ứng:
- Claude Haiku: Phân loại văn bản, trả lời nhanh, trích xuất thông tin đơn giản. Chi phí thấp nhất
- Claude Sonnet: Viết content, phân tích dữ liệu, code review. Cân bằng giữa hiệu năng và chi phí
- Claude Opus: Suy luận phức tạp, phân tích chiến lược, nghiên cứu sâu. Chỉ dùng khi thật sự cần thiết
Tối ưu prompt
Prompt ngắn gọn và rõ ràng giúp giảm số token đầu vào:
- Loại bỏ thông tin thừa trong prompt
- Sử dụng cấu trúc rõ ràng (bullet points thay vì đoạn văn dài)
- Đặt max_tokens phù hợp — không đặt quá cao nếu không cần response dài
Caching và batching
Vertex AI hỗ trợ prompt caching, giúp giảm chi phí khi gửi cùng system prompt nhiều lần:
from anthropic import AnthropicVertex
client = AnthropicVertex(
region="us-east5",
project_id="my-claude-project"
)
# Su dung caching cho system prompt dai
# (Anthropic tu dong cache khi system prompt du lon)
SYSTEM_PROMPT = """Ban la tro ly phan tich du lieu chuyen nghiep.
[Noi dung system prompt dai co the len den hang nghin token
bao gom huong dan chi tiet, vi du, va quy tac xu ly]"""
# Request 1 - system prompt duoc cache
response1 = client.messages.create(
model="claude-sonnet-4@20250514",
max_tokens=1024,
system=SYSTEM_PROMPT,
messages=[{"role": "user", "content": "Phan tich bao cao Q1"}]
)
# Request 2 - su dung lai cache, giam chi phi input tokens
response2 = client.messages.create(
model="claude-sonnet-4@20250514",
max_tokens=1024,
system=SYSTEM_PROMPT,
messages=[{"role": "user", "content": "Phan tich bao cao Q2"}]
)
Thiết lập budget alerts
# Tao budget alert bang gcloud
gcloud billing budgets create --billing-account=BILLING_ACCOUNT_ID --display-name="Claude AI Budget" --budget-amount=5000 --threshold-rule=percent=0.5 --threshold-rule=percent=0.8 --threshold-rule=percent=1.0 --notifications-rule-pubsub-topic=projects/my-claude-project/topics/budget-alerts
Giám sát với Cloud Monitoring
Cloud Monitoring cho phép bạn theo dõi hiệu năng và chi phí sử dụng Claude trên Vertex AI theo thời gian thực.
Thiết lập dashboard giám sát
Tạo dashboard trong Cloud Monitoring để theo dõi các chỉ số quan trọng:
- Request count: Số lượng request theo thời gian, phân theo model
- Latency: Thời gian phản hồi trung bình, p95, p99
- Error rate: Tỷ lệ lỗi, phân loại theo mã lỗi
- Token usage: Số token sử dụng theo ngày/tuần/tháng
Thiết lập alerting
# Tao alert policy khi error rate vuot 5%
gcloud monitoring policies create --display-name="Claude API Error Rate Alert" --condition-display-name="High Error Rate" --condition-filter='resource.type="aiplatform.googleapis.com/Endpoint"
AND metric.type="aiplatform.googleapis.com/prediction/error_count"' --condition-threshold-value=0.05 --condition-threshold-comparison=COMPARISON_GT --notification-channels=CHANNEL_ID
Logging có cấu trúc
Ghi log có cấu trúc để dễ dàng truy vấn và phân tích:
import google.cloud.logging
import json
logging_client = google.cloud.logging.Client()
logger = logging_client.logger("claude-api-usage")
def log_claude_request(model, input_tokens, output_tokens,
latency_ms, status, department):
"""Ghi log su dung Claude co cau truc"""
logger.log_struct({
"model": model,
"input_tokens": input_tokens,
"output_tokens": output_tokens,
"total_tokens": input_tokens + output_tokens,
"latency_ms": latency_ms,
"status": status,
"department": department,
"estimated_cost_usd": calculate_cost(
model, input_tokens, output_tokens
)
})
Tích hợp với BigQuery
Một trong những lợi thế lớn nhất của Vertex AI là khả năng tích hợp trực tiếp với BigQuery. Bạn có thể truy vấn dữ liệu từ BigQuery, gửi cho Claude phân tích, và lưu kết quả trở lại BigQuery — tất cả trong cùng hệ sinh thái GCP.
Quy trình phân tích dữ liệu với BigQuery + Claude
from google.cloud import bigquery
from anthropic import AnthropicVertex
# Khoi tao clients
bq_client = bigquery.Client(project="my-claude-project")
claude_client = AnthropicVertex(
region="us-east5",
project_id="my-claude-project"
)
# Buoc 1: Truy van du lieu tu BigQuery
query = """
SELECT
product_category,
SUM(revenue) as total_revenue,
COUNT(DISTINCT customer_id) as unique_customers,
AVG(order_value) as avg_order_value
FROM `my-claude-project.ecommerce.orders`
WHERE order_date BETWEEN '2025-01-01' AND '2025-03-31'
GROUP BY product_category
ORDER BY total_revenue DESC
LIMIT 20
"""
results = bq_client.query(query).to_dataframe()
data_summary = results.to_string()
# Buoc 2: Gui cho Claude phan tich
response = claude_client.messages.create(
model="claude-sonnet-4@20250514",
max_tokens=2048,
system="Ban la chuyen gia phan tich kinh doanh thuong mai dien tu Viet Nam.",
messages=[{
"role": "user",
"content": f"""Phan tich du lieu doanh thu Q1/2025 sau:
{data_summary}
Hay:
1. Nhan dien xu huong chinh
2. So sanh voi benchmark nganh TMDT Viet Nam
3. De xuat 3 hanh dong cu the de tang doanh thu Q2"""
}]
)
print(response.content[0].text)
Lưu ý khi tích hợp BigQuery: chỉ gửi dữ liệu tổng hợp, đã ẩn danh hóa cho Claude. Không gửi dữ liệu khách hàng thô (raw data) chứa PII trực tiếp vào mô hình.
Tự động hóa báo cáo định kỳ
Kết hợp Cloud Scheduler và Cloud Functions để tự động chạy phân tích hàng tuần:
# Cloud Function xu ly bao cao tu dong
import functions_framework
from google.cloud import bigquery, storage
from anthropic import AnthropicVertex
@functions_framework.http
def weekly_report(request):
"""Cloud Function tao bao cao hang tuan voi Claude"""
bq_client = bigquery.Client()
claude_client = AnthropicVertex(
region="us-east5",
project_id="my-claude-project"
)
# Truy van du lieu tuan truoc
query = """
SELECT * FROM `project.dataset.weekly_metrics`
WHERE week = DATE_TRUNC(CURRENT_DATE(), WEEK) - INTERVAL 1 WEEK
"""
data = bq_client.query(query).to_dataframe().to_string()
# Claude phan tich va tao bao cao
report = claude_client.messages.create(
model="claude-sonnet-4@20250514",
max_tokens=4096,
messages=[{
"role": "user",
"content": f"Tao bao cao tuan tu du lieu:
{data}"
}]
)
# Luu bao cao vao Cloud Storage
storage_client = storage.Client()
bucket = storage_client.bucket("reports-bucket")
blob = bucket.blob(f"weekly-reports/report-{datetime.now().isoformat()}.md")
blob.upload_from_string(report.content[0].text)
return "Bao cao da duoc tao thanh cong"
Best practices cho production
Khi chuyển từ development sang production, cần chú ý các điểm sau:
Bảo mật
- Sử dụng Workload Identity thay vì service account key file. Workload Identity liên kết service account GCP với Kubernetes service account, loại bỏ hoàn toàn việc quản lý key file
- Bật VPC Service Controls để giới hạn truy cập Vertex AI trong VPC. Điều này ngăn chặn việc truy cập Vertex AI từ ngoài mạng nội bộ của bạn
- Sử dụng Customer-Managed Encryption Keys (CMEK) nếu cần kiểm soát khóa mã hóa riêng
- Bật Data Loss Prevention (DLP) API để scan PII trước khi gửi dữ liệu vào Claude
- Thiết lập Organization Policy để giới hạn các region được phép sử dụng Vertex AI
Độ tin cậy
- Triển khai ở nhiều region để đảm bảo khả dụng cao. Nếu region chính gặp sự cố, tự động chuyển sang region dự phòng
- Thiết lập circuit breaker để tránh cascade failure khi Vertex AI bị quá tải
- Có fallback plan khi Vertex AI gặp sự cố (ví dụ: chuyển sang API trực tiếp của Anthropic)
- Thiết lập health check cho ứng dụng sử dụng Vertex AI để phát hiện sự cố sớm
Hiệu năng
- Sử dụng connection pooling cho các ứng dụng có nhiều request đồng thời. HttpClient nên được tái sử dụng thay vì tạo mới cho mỗi request
- Triển khai ứng dụng trong cùng region với Vertex AI endpoint để giảm độ trễ mạng
- Sử dụng batch prediction cho các tác vụ xử lý hàng loạt — gửi nhiều prompt trong một batch thay vì từng cái một
- Áp dụng request queuing để kiểm soát số lượng request đồng thời, tránh vượt rate limit
Quản lý chi phí nâng cao
Ngoài budget alerts cơ bản, cần có chiến lược quản lý chi phí toàn diện:
- Phân bổ chi phí theo dự án và phòng ban sử dụng GCP Labels. Mỗi request đến Vertex AI nên được tag với project và department tương ứng
- Thiết lập committed use discounts (CUD) nếu có thể dự báo được mức sử dụng. GCP cung cấp giảm giá lên đến 30-50% cho các cam kết 1-3 năm
- Sử dụng BigQuery để phân tích chi phí sử dụng và tìm cơ hội tối ưu. Xuất billing data sang BigQuery và tạo dashboard phân tích
- Thiết lập quotas cho từng service account để ngăn chặn việc sử dụng vượt mức cho phép
Toi dang chuan bi trien khai Claude tren Vertex AI
cho production. Hay giup toi tao checklist trien khai
day du bao gom:
1. Bao mat: IAM, VPC, encryption, DLP
2. Monitoring: Dashboard, alerts, logging
3. Chi phi: Budget, quotas, optimization
4. Do tin cay: Multi-region, fallback, health check
5. Hieu nang: Connection pooling, caching, batching
6. Compliance: Data residency, audit trail, PII handling
Moi truong: GCP project da co, team 5 developer,
budget $5000/thang, region Singapore.
Bước tiếp theo
Bạn đã nắm được cách triển khai Claude trên Google Cloud Vertex AI. Tùy theo nhu cầu, bạn có thể tích hợp thêm với BigQuery để phân tích dữ liệu quy mô lớn, hoặc thiết lập CI/CD pipeline với Cloud Build. Khám phá thêm các hướng dẫn triển khai tại Thư viện Ứng dụng Claude.
Bai viet co huu ich khong?
Bản quyền thuộc về tác giả. Vui lòng dẫn nguồn khi chia sẻ.







