Triển khai Model Garden trên một điểm cuối PSC

1. Giới thiệu

Tận dụng Private Service Connect để thiết lập quyền truy cập riêng tư và an toàn cho các mô hình được triển khai từ Vertex AI Model Garden. Thay vì hiển thị một điểm cuối công khai, phương thức này cho phép bạn triển khai mô hình của mình đến một điểm cuối Vertex AI riêng tư chỉ có thể truy cập được trong Đám mây riêng ảo (VPC) của bạn.

Private Service Connect tạo một điểm cuối có địa chỉ IP nội bộ bên trong VPC của bạn, kết nối trực tiếp với dịch vụ Vertex AI do Google quản lý, lưu trữ mô hình của bạn. Điều này cho phép các ứng dụng trong VPC và môi trường tại chỗ (thông qua Cloud VPN hoặc Interconnect) gửi yêu cầu suy luận bằng IP riêng tư. Tất cả lưu lượng truy cập mạng đều nằm trên mạng của Google, giúp tăng cường tính bảo mật, giảm độ trễ và hoàn toàn cô lập điểm cuối phân phát mô hình của bạn khỏi Internet công cộng.

4a78228d4197997c.png

Sản phẩm bạn sẽ tạo ra

Trong hướng dẫn này, bạn sẽ tải Gemma 3 xuống từ Model Garden, được lưu trữ trong Vertex AI Online Inference dưới dạng một điểm cuối riêng tư có thể truy cập thông qua Private Service Connect. Quy trình thiết lập toàn diện sẽ bao gồm:

  1. Mô hình Model Garden: Bạn sẽ chọn Gemma 3 từ Vertex AI Model Garden và triển khai mô hình đó đến một điểm cuối Private Service Connect.
  2. Private Service Connect: Bạn sẽ định cấu hình một điểm cuối của người tiêu dùng trong Đám mây riêng ảo (VPC) bao gồm một địa chỉ IP nội bộ trong mạng của riêng bạn.
  3. Kết nối an toàn với Vertex AI: Điểm cuối PSC sẽ nhắm đến Tệp đính kèm dịch vụ do Vertex AI tự động tạo cho hoạt động triển khai mô hình riêng tư của bạn. Điều này thiết lập một kết nối riêng tư, đảm bảo rằng lưu lượng truy cập giữa VPC và điểm cuối phân phát mô hình không đi qua Internet công cộng.
  4. Cấu hình ứng dụng trong VPC: Bạn sẽ thiết lập một ứng dụng (ví dụ: VM Compute Engine) trong VPC để gửi yêu cầu suy luận đến mô hình đã triển khai bằng địa chỉ IP nội bộ của điểm cuối PSC.

Khi kết thúc, bạn sẽ có một ví dụ hoạt động về mô hình Model Garden được phân phát riêng tư, chỉ có thể truy cập được từ bên trong mạng VPC được chỉ định.

Kiến thức bạn sẽ học được

Trong hướng dẫn này, bạn sẽ tìm hiểu cách triển khai một mô hình từ Vertex AI Model Garden và giúp mô hình đó có thể truy cập một cách an toàn từ Đám mây riêng ảo (VPC) bằng Private Service Connect (PSC). Phương thức này cho phép các ứng dụng trong VPC (người tiêu dùng) kết nối riêng tư với điểm cuối mô hình Vertex AI (dịch vụ của nhà cung cấp) mà không cần đi qua Internet công cộng.

Cụ thể, bạn sẽ tìm hiểu:

  1. Tìm hiểu về PSC cho Vertex AI: Cách PSC cho phép kết nối riêng tư và an toàn từ người tiêu dùng đến nhà cung cấp. VPC của bạn có thể truy cập vào mô hình Model Garden đã triển khai bằng địa chỉ IP nội bộ.
  2. Triển khai mô hình có quyền truy cập riêng tư: Cách định cấu hình một điểm cuối Vertex AI cho mô hình Model Garden để sử dụng PSC, biến mô hình đó thành một điểm cuối riêng tư.
  3. Vai trò của Tệp đính kèm dịch vụ: Khi bạn triển khai một mô hình đến một điểm cuối Vertex AI riêng tư, Google Cloud sẽ tự động tạo một Tệp đính kèm dịch vụ trong một dự án đối tượng thuê do Google quản lý. Tệp đính kèm dịch vụ này hiển thị dịch vụ phân phát mô hình cho các mạng của người tiêu dùng.
  4. Tạo điểm cuối PSC trong VPC:
  • Cách lấy URI Tệp đính kèm dịch vụ duy nhất từ thông tin chi tiết về điểm cuối Vertex AI đã triển khai.
  • Cách đặt trước một địa chỉ IP nội bộ trong mạng con bạn chọn trong VPC.
  • Cách tạo một Quy tắc chuyển tiếp trong VPC đóng vai trò là Điểm cuối PSC, nhắm đến Tệp đính kèm dịch vụ Vertex AI. Điểm cuối này giúp mô hình có thể truy cập thông qua IP nội bộ đã đặt trước.
  1. Thiết lập kết nối riêng tư: Cách Điểm cuối PSC trong VPC của bạn kết nối với Tệp đính kèm dịch vụ, kết nối mạng của bạn với dịch vụ Vertex AI một cách an toàn.
  2. Gửi yêu cầu suy luận riêng tư: Cách gửi yêu cầu dự đoán từ các tài nguyên (như VM Compute Engine) trong VPC đến địa chỉ IP nội bộ của Điểm cuối PSC.
  3. Xác thực: Các bước kiểm thử và xác nhận rằng bạn có thể gửi yêu cầu suy luận thành công từ VPC đến mô hình Model Garden đã triển khai thông qua kết nối riêng tư.

Khi hoàn tất, bạn sẽ có thể lưu trữ các mô hình từ Model Garden chỉ có thể truy cập được từ cơ sở hạ tầng mạng riêng tư của bạn.

Bạn cần có

Dự án trong Google Cloud

Quyền IAM

2. Trước khi bắt đầu

Cập nhật dự án để hỗ trợ hướng dẫn

Hướng dẫn này sử dụng $variables để hỗ trợ việc triển khai cấu hình gcloud trong Cloud Shell.

Trong Cloud Shell, hãy thực hiện như sau:

gcloud config list project
gcloud config set project [YOUR-PROJECT-ID]
projectid=[YOUR-PROJECT-ID]
echo $projectid

Bật API

Trong Cloud Shell, hãy thực hiện như sau:

gcloud services enable "compute.googleapis.com"
gcloud services enable "aiplatform.googleapis.com"
gcloud services enable "serviceusage.googleapis.com"

3. Triển khai mô hình

Làm theo các bước bên dưới để triển khai mô hình từ Model Garden

Trong bảng điều khiển Cloud, hãy chuyển đến Model Garden rồi tìm kiếm và chọn Gemma 3

10c7ce35cfc571dc.png

Nhấp vào Deploy options (Tuỳ chọn triển khai) rồi chọn Vertex AI

ed9280fcc5f4c3fa.png

Trong ngăn Deploy on Vertex AI (Triển khai trên Vertex AI), hãy chọn Advanced (Nâng cao). Khu vực và Thông số kỹ thuật máy được điền sẵn sẽ được chọn dựa trên dung lượng hiện có. Bạn có thể thay đổi các giá trị này, mặc dù lớp học lập trình được điều chỉnh cho us-central1.

3f7e4cefdc06488a.png

Trong ngăn Deploy on Vertex AI (Triển khai trên Vertex AI), hãy đảm bảo Endpoint Access (Quyền truy cập điểm cuối) được định cấu hình là Private Service Connect (Kết nối dịch vụ riêng tư), sau đó chọn Project (Dự án).

d0f0d9bc49205fb3.png

Để nguyên tất cả giá trị mặc định cho các tuỳ chọn khác, sau đó chọn Deploy (Triển khai) ở dưới cùng và Check your notifications for the deployment status (Kiểm tra thông báo để biết trạng thái triển khai).

9bd3b10256b7b2cc.png

Trong Model Garden, hãy chọn khu vực us-central1 cung cấp mô hình và điểm cuối Gemma 3. Việc triển khai mô hình mất khoảng 5 phút.

e998ee6288a8a7a.png

Trong 30 phút, điểm cuối sẽ chuyển sang trạng thái "Active" (Đang hoạt động) sau khi hoàn tất

9dcc7c56dbe0e88a.png

Lấy và ghi lại Mã điểm cuối bằng cách chọn điểm cuối.

6e3e2feef82fadd5.png

Mở Cloud Shell và thực hiện như sau để lấy URI Tệp đính kèm dịch vụ Private Service Connect. Chuỗi URI này được người tiêu dùng sử dụng khi triển khai điểm cuối của người tiêu dùng PSC.

Trong Cloud Shell, hãy cập nhật Mã điểm cuối, sau đó đưa ra lệnh sau.

gcloud ai endpoints describe [Endpoint ID] --region=us-central1  | grep -i serviceAttachment:

Dưới đây là ví dụ:

user@cloudshell:$ gcloud ai endpoints describe 2124795225560842240 --region=us-central1 | grep -i serviceAttachment:

Using endpoint [https://us-central1-aiplatform.googleapis.com/]
    serviceAttachment: projects/o9457b320a852208e-tp/regions/us-central1/serviceAttachments/gkedpm-52065579567eaf39bfe24f25f7981d

Sao chép nội dung sau serviceAttachment vào một biến có tên là "Service_attachment". Bạn sẽ cần biến này sau khi tạo kết nối PSC.

user@cloudshell:$ Service_attachment=projects/o9457b320a852208e-tp/regions/us-central1/serviceAttachments/gkedpm-52065579567eaf39bfe24f25f7981d

4. Thiết lập người tiêu dùng

Tạo VPC của người tiêu dùng

Trong Cloud Shell, hãy thực hiện như sau:

gcloud compute networks create consumer-vpc --project=$projectid --subnet-mode=custom

Tạo mạng con VM của người tiêu dùng

Trong Cloud Shell, hãy thực hiện như sau:

gcloud compute networks subnets create consumer-vm-subnet --project=$projectid --range=192.168.1.0/24 --network=consumer-vpc --region=us-central1 --enable-private-ip-google-access

Tạo mạng con điểm cuối PSC

gcloud compute networks subnets create pscendpoint-subnet --project=$projectid --range=10.10.10.0/28 --network=consumer-vpc --region=us-central1

5. Bật IAP

Để cho phép IAP kết nối với các phiên bản VM, hãy tạo một quy tắc tường lửa:

  • Áp dụng cho tất cả các phiên bản VM mà bạn muốn có thể truy cập bằng IAP.
  • Cho phép lưu lượng truy cập vào từ dải IP 35.235.240.0/20. Dải này chứa tất cả các địa chỉ IP mà IAP sử dụng để chuyển tiếp TCP.

Trong Cloud Shell, hãy tạo quy tắc tường lửa IAP.

gcloud compute firewall-rules create ssh-iap-consumer \
    --network consumer-vpc \
    --allow tcp:22 \
    --source-ranges=35.235.240.0/20

6. Tạo phiên bản VM của người tiêu dùng

Trong Cloud Shell, hãy tạo thực thể VM của người tiêu dùng, consumer-vm.

gcloud compute instances create consumer-vm \
    --project=$projectid \
    --machine-type=e2-micro \
    --image-family debian-11 \
    --no-address \
    --shielded-secure-boot \
    --image-project debian-cloud \
    --zone us-central1-a \
    --subnet=consumer-vm-subnet 

7. Điểm cuối Private Service Connect

Người tiêu dùng tạo một điểm cuối của người tiêu dùng (quy tắc chuyển tiếp) có địa chỉ IP nội bộ trong VPC của họ. Điểm cuối PSC này nhắm đến tệp đính kèm dịch vụ của nhà cung cấp. Các ứng dụng trong VPC của người tiêu dùng hoặc mạng kết hợp có thể gửi lưu lượng truy cập đến địa chỉ IP nội bộ này để tiếp cận dịch vụ của nhà cung cấp.

Đặt trước một địa chỉ IP cho điểm cuối của người tiêu dùng.

Trong Cloud Shell, hãy tạo quy tắc chuyển tiếp.

gcloud compute addresses create psc-address \
    --project=$projectid \
    --region=us-central1 \
    --subnet=pscendpoint-subnet \
    --addresses=10.10.10.6

Xác minh rằng địa chỉ IP đã được đặt trước

Trong Cloud Shell, hãy liệt kê Địa chỉ IP đã đặt trước.

gcloud compute addresses list 

Bạn sẽ thấy địa chỉ IP 10.10.10.6 đã được đặt trước.

edb5661bea25cd14.png

Tạo điểm cuối của người tiêu dùng bằng cách chỉ định URI tệp đính kèm dịch vụ, target-service-attachment mà bạn đã thu thập ở bước trước, phần Triển khai mô hình.

Trong Cloud Shell, hãy mô tả tệp đính kèm mạng.

 gcloud compute forwarding-rules create psc-consumer-ep \
    --network=consumer-vpc \
    --address=psc-address \
    --region=us-central1 \
    --target-service-attachment=$Service_attachment \
    --project=$projectid

Xác minh rằng tệp đính kèm dịch vụ chấp nhận điểm cuối

gcloud compute forwarding-rules describe psc-consumer-ep \
    --project=$projectid \
    --region=us-central1 \

Trong phản hồi, hãy xác minh rằng trạng thái "ACCEPTED" (ĐÃ CHẤP NHẬN) xuất hiện trong trường pscConnectionStatus

6c66347ede9d4c7d.png

8. Kiểm thử từ VM của người tiêu dùng

Trong Cloud Shell, hãy thực hiện các bước sau để cấp quyền truy cập vào VM của người tiêu dùng nhằm truy cập vào Vertex Model Garden API

SSH vào VM của người tiêu dùng

f0984d9e60530cb2.png

Xác thực lại bằng Thông tin xác thực mặc định của ứng dụng và chỉ định phạm vi Vertex AI.

gcloud auth application-default login
--scopes=https://www.googleapis.com/auth/cloud-platform 

Sử dụng bảng này để tạo lệnh CURLl, điều chỉnh dựa trên môi trường của bạn

Thuộc tính

Giá trị

Giao thức

HTTP

Thông tin vị trí

us-central1

Điểm cuối dự đoán trực tuyến

2133539641536544768

Mã dự án

test4-473419

Mô hình

gemma-3-12b-it

IP điểm cuối Private Service Connect

10.10.10.6

Tin nhắn

[{"role": "user","content": "What weighs more 1 pound of feathers or rocks?"}]

Cập nhật và thực thi lệnh curl dựa trên thông tin chi tiết về môi trường của bạn:

curl -k -v -X POST   -H "Authorization: Bearer $(gcloud auth application-default print-access-token)"   -H "Content-Type: application/json"   http://[PSC-IP]/v1/projects/[Project-ID]/locations/us-central1/endpoints/[Predictions Endpoint]/chat/completions   -d '{"model": "google/gemma-3-12b-it", "messages": [{"role": "user","content": "What weighs more 1 pound of feathers or rocks?"}] }'

Ví dụ:

curl -k -v -X POST   -H "Authorization: Bearer $(gcloud auth application-default print-access-token)"   -H "Content-Type: application/json"   http://10.10.10.6/v1/projects/test4-473419/locations/us-central1/endpoints/2133539641536544768/chat/completions   -d '{"model": "google/gemma-3-12b-it", "messages": [{"role": "user","content": "What weighs more 1 pound of feathers or rocks?"}] }'

KẾT QUẢ CUỐI CÙNG – THÀNH CÔNG!!!

Kết quả bạn sẽ thấy là dự đoán từ Gemma 3 ở cuối đầu ra. Điều này cho thấy bạn có thể truy cập riêng tư vào điểm cuối API thông qua điểm cuối PSC

 Connection #0 to host 10.10.10.6 left intact
{"id":"chatcmpl-9e941821-65b3-44e4-876c-37d81baf62e0","object":"chat.completion","created":1759009221,"model":"google/gemma-3-12b-it","choices":[{"index":0,"message":{"role":"assistant","reasoning_content":null,"content":"This is a classic trick question! They weigh the same. One pound is one pound, regardless of the material. 😊\n\n\n\n","tool_calls":[]},"logprobs":null,"finish_reason":"stop","stop_reason":106}],"usage":{"prompt_tokens":20,"total_tokens":46,"completion_tokens":26,"prompt_tokens_details":null},"prompt_logprobs":null

9. Dọn dẹp

Trong Cloud Shell, hãy xoá các thành phần hướng dẫn.

gcloud ai endpoints undeploy-model ENDPOINT_ID --deployed-model-id=DEPLOYED_MODEL_ID --region=us-central1 --quiet

gcloud ai endpoints delete $ENDPOINT_ID --project=$projectid --region=us-central1 --quiet

gcloud ai models delete $MODEL_ID --project=$projectid --region=us-central1 --quiet

gcloud compute instances delete consumer-vm --zone=us-central1-a --quiet

gcloud compute forwarding-rules delete psc-consumer-ep --region=us-central1 --project=$projectid --quiet

gcloud compute addresses delete psc-address --region=us-central1 --project=$projectid --quiet

gcloud compute networks subnets delete pscendpoint-subnet consumer-vm-subnet --region=us-central1 --quiet

gcloud compute firewall-rules delete ssh-iap-consumer --project=$projectid

gcloud compute networks delete consumer-vpc --project=$projectid --quiet

gcloud projects delete $projectid --quiet

10. Xin chúc mừng

Xin chúc mừng! Bạn đã định cấu hình và xác thực thành công quyền truy cập riêng tư vào Gemma 3 API được lưu trữ trên Vertex AI Prediction bằng Điểm cuối Private Service Connect.

Bạn đã tạo cơ sở hạ tầng của người tiêu dùng, bao gồm cả việc đặt trước một địa chỉ IP nội bộ và định cấu hình một Điểm cuối Private Service Connect (quy tắc chuyển tiếp) trong VPC. Điểm cuối này kết nối an toàn với dịch vụ Vertex AI bằng cách nhắm đến tệp đính kèm dịch vụ được liên kết với mô hình Gemma 3 đã triển khai. Quy trình thiết lập này cho phép các ứng dụng trong VPC hoặc mạng được kết nối tương tác với Gemma 3 API một cách riêng tư và an toàn, sử dụng địa chỉ IP nội bộ mà không yêu cầu lưu lượng truy cập đi qua Internet công cộng.

Tài liệu đọc thêm và video

Tài liệu tham khảo