

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

# Menerapkan observabilitas inferensi pada cluster HyperPod
<a name="sagemaker-hyperpod-model-deployment-observability"></a>

Amazon SageMaker HyperPod menyediakan kemampuan observabilitas inferensi komprehensif yang memungkinkan ilmuwan data dan insinyur pembelajaran mesin untuk memantau dan mengoptimalkan model yang diterapkan. [https://prometheus.io/](https://prometheus.io/)

Dengan metrik yang diaktifkan secara default, platform menangkap data kinerja model penting termasuk latensi pemanggilan, permintaan bersamaan, tingkat kesalahan, dan metrik tingkat token, sambil menyediakan titik akhir Prometheus standar untuk pelanggan yang lebih suka menerapkan solusi observabilitas khusus.

**catatan**  
Topik ini berisi penyelaman mendalam tentang penerapan observabilitas inferensi pada HyperPod cluster. Untuk referensi yang lebih umum, lihat[Observabilitas cluster dan tugas](sagemaker-hyperpod-eks-cluster-observability-cluster.md).

Panduan ini memberikan step-by-step instruksi untuk menerapkan dan menggunakan observabilitas inferensi pada cluster Anda HyperPod . Anda akan mempelajari cara mengonfigurasi metrik dalam file YAMAL penerapan, mengakses dasbor pemantauan berdasarkan peran Anda (administrator, ilmuwan data, atau insinyur pembelajaran mesin), mengintegrasikan dengan solusi observabilitas khusus menggunakan titik akhir Prometheus, dan memecahkan masalah pemantauan umum.

## Metrik inferensi yang didukung
<a name="sagemaker-hyperpod-model-deployment-observability-metrics"></a>

**Metrik pemanggilan**

Metrik ini menangkap data permintaan inferensi dan respons model, memberikan visibilitas universal terlepas dari jenis model atau kerangka kerja penyajian Anda. Saat metrik inferensi diaktifkan, metrik ini dihitung pada waktu pemanggilan dan diekspor ke infrastruktur pemantauan Anda.
+ `model_invocations_total`- Jumlah total permintaan pemanggilan ke model 
+ `model_errors_total`- Jumlah total kesalahan selama pemanggilan model
+ `model_concurrent_requests`- Permintaan model bersamaan aktif
+ `model_latency_milliseconds`- Latensi pemanggilan model dalam milidetik
+ `model_ttfb_milliseconds`- Model waktu untuk latensi byte pertama dalam milidetik

**Metrik wadah model**

Metrik ini memberikan wawasan tentang operasi internal container model Anda, termasuk pemrosesan token, manajemen antrian, dan indikator kinerja khusus kerangka kerja. Metrik yang tersedia bergantung pada kerangka kerja penyajian model Anda:
+ [Metrik kontainer TGI](https://huggingface.co/docs/text-generation-inference/en/reference/metrics) 
+ [Metrik kontainer LMI](https://github.com/deepjavalibrary/djl-serving/blob/master/prometheus/README.md) 

**Dimensi metrik**

Semua metrik inferensi menyertakan label komprehensif yang memungkinkan pemfilteran dan analisis terperinci di seluruh penerapan Anda:
+ **Identitas Cluster:**
  + `cluster_id`- ID unik HyperPod cluster
  + `cluster_name`- Nama HyperPod cluster
+ **Identitas Sumber Daya:**
  + `resource_name`- Nama Deployment (Misalnya, "jumpstart-model-deployment“)
  + `resource_type`- Jenis penyebaran (jumpstart, inference-endpoint)
  + `namespace`- Namespace Kubernetes untuk multi-tenancy
+ **Karakteristik Model:**
  + `model_name`- Pengidentifikasi model khusus (Misalnya, “llama-2-7b-chat”)
  + `model_version`- Versi model untuk A/B pengujian dan rollback
  + `model_container_type`- Kerangka kerja penyajian (TGI, LMI, -)
+ **Konteks Infrastruktur:**
  + `pod_name`- Pengenal pod individual untuk debugging
  + `node_name`- Node Kubernetes untuk korelasi sumber daya
  + `instance_type`- Jenis instans EC2 untuk analisis biaya
+ **Konteks Operasional:**
  + `metric_source`- Titik pengumpulan (reverse-proxy, model-container)
  + `task_type`- Klasifikasi beban kerja (inferensi)

## Konfigurasikan metrik dalam penerapan YAMM
<a name="sagemaker-hyperpod-model-deployment-observability-yaml"></a>

Amazon SageMaker HyperPod mengaktifkan metrik inferensi secara default untuk semua penerapan model, memberikan pengamatan langsung tanpa konfigurasi tambahan. Anda dapat menyesuaikan perilaku metrik dengan memodifikasi konfigurasi YAMM penerapan untuk mengaktifkan atau menonaktifkan pengumpulan metrik berdasarkan persyaratan spesifik Anda.

**Menyebarkan model dari JumpStart**

Gunakan konfigurasi YAMM berikut untuk menerapkan JuJumpStartmpStart model dengan metrik yang diaktifkan:

```
apiVersion: inference.sagemaker.aws.amazon.com/v1
kind: JumpStartModel
metadata:
  name:mistral-model
  namespace: ns-team-a
spec:
  model:
    modelId: "huggingface-llm-mistral-7b-instruct"
    modelVersion: "3.19.0"
  metrics:
    enabled:true # Default: true (can be set to false to disable)
  replicas: 2
  sageMakerEndpoint:
    name: "mistral-model-sm-endpoint"
  server:
    instanceType: "ml.g5.12xlarge"
    executionRole: "arn:aws:iam::123456789:role/SagemakerRole"
  tlsConfig:
    tlsCertificateOutputS3Uri: s3://hyperpod/mistral-model/certs/
```

**Terapkan model kustom dan fine-tuned dari Amazon S3 atau Amazon FSx**

Konfigurasikan titik akhir inferensi kustom dengan setelan metrik terperinci menggunakan YAMM berikut:

```
apiVersion: inference.sagemaker.aws.amazon.com/v1
kind: JumpStartModel
metadata:
  name:mistral-model
  namespace: ns-team-a
spec:
  model:
    modelId: "huggingface-llm-mistral-7b-instruct"
    modelVersion: "3.19.0"
  metrics:
    enabled:true # Default: true (can be set to false to disable)
  replicas: 2
  sageMakerEndpoint:
    name: "mistral-model-sm-endpoint"
  server:
    instanceType: "ml.g5.12xlarge"
    executionRole: "arn:aws:iam::123456789:role/SagemakerRole"
  tlsConfig:
    tlsCertificateOutputS3Uri: s3://hyperpod/mistral-model/certs/

Deploy a custom inference endpoint

Configure custom inference endpoints with detailed metrics settings using the following YAML:

apiVersion: inference.sagemaker.aws.amazon.com/v1
kind: InferenceEndpointConfig
metadata:
  name: inferenceendpoint-deepseeks
  namespace: ns-team-a
spec:
  modelName: deepseeks
  modelVersion: 1.0.1
  metrics:
    enabled: true # Default: true (can be set to false to disable)
    metricsScrapeIntervalSeconds: 30 # Optional: if overriding the default 15s
    modelMetricsConfig:
        port: 8000 # Optional: if overriding, it defaults to the WorkerConfig.ModelInvocationPort.ContainerPort within the InferenceEndpointConfig spec 8080
        path: "/custom-metrics" # Optional: if overriding the default "/metrics"
  endpointName: deepseek-sm-endpoint
  instanceType: ml.g5.12xlarge
  modelSourceConfig:
    modelSourceType: s3
    s3Storage:
      bucketName: model-weights
      region: us-west-2
    modelLocation: deepseek
    prefetchEnabled: true
  invocationEndpoint: invocations
  worker:
    resources:
      limits:
        nvidia.com/gpu: 1
      requests:
        nvidia.com/gpu: 1
        cpu: 25600m
        memory: 102Gi
    image: 763104351884.dkr.ecr.us-west-2.amazonaws.com/djl-inference:0.32.0-lmi14.0.0-cu124
    modelInvocationPort:
      containerPort: 8080
      name: http
    modelVolumeMount:
      name: model-weights
      mountPath: /opt/ml/model
    environmentVariables: ...
  tlsConfig:
    tlsCertificateOutputS3Uri: s3://hyperpod/inferenceendpoint-deepseeks4/certs/
```

**catatan**  
Untuk menonaktifkan metrik untuk penerapan tertentu, setel `metrics.enabled: false` dalam konfigurasi YAMM Anda.

## Memantau dan memecahkan masalah beban kerja inferensi berdasarkan peran
<a name="sagemaker-hyperpod-model-deployment-observability-role"></a>

Amazon SageMaker HyperPod menyediakan kemampuan observabilitas komprehensif yang mendukung alur kerja pengguna yang berbeda, mulai dari penyiapan klaster awal hingga pemecahan masalah kinerja lanjutan. Gunakan panduan berikut berdasarkan peran dan persyaratan pemantauan Anda.

**HyperPod admin**

**Tanggung jawab Anda:** Aktifkan infrastruktur observabilitas dan pastikan kesehatan sistem di seluruh cluster.

**Apa yang perlu Anda ketahui:**
+ Observabilitas di seluruh cluster menyediakan metrik infrastruktur untuk semua beban kerja
+ Pengaturan satu klik menyebarkan tumpukan pemantauan dengan dasbor yang telah dikonfigurasi sebelumnya
+ Metrik infrastruktur terpisah dari metrik inferensi khusus model

**Apa yang perlu Anda lakukan:**

1. Arahkan ke HyperPod konsol.

1. Pilih klaster Anda.

1. Buka halaman detail HyperPod cluster yang baru saja Anda buat. Anda akan melihat opsi baru untuk menginstal add-on HyperPod observabilitas.

1. Klik pada opsi **Instal cepat**. Setelah 1-2 menit semua langkah akan selesai dan Anda akan melihat dasbor Grafana dan detail ruang kerja Prometheus.

Tindakan tunggal ini secara otomatis menerapkan Eks Add-on, mengonfigurasi operator observabilitas, dan menyediakan dasbor pra-bangun di Grafana.

**Ilmuwan data**

**Tanggung jawab Anda:** Terapkan model secara efisien dan pantau kinerja dasarnya.

**Apa yang perlu Anda ketahui:**
+ Metrik diaktifkan secara otomatis saat Anda menerapkan model
+ Dasbor Grafana memberikan visibilitas langsung ke kinerja model
+ Anda dapat memfilter dasbor untuk fokus pada penerapan spesifik Anda

**Apa yang perlu Anda lakukan:**

1. Terapkan model Anda menggunakan metode pilihan Anda:

   1. Amazon SageMaker Studio UI

   1. HyperPod Perintah CLI

   1. Python SDK di notebook

   1. kubectl dengan konfigurasi YAMM

1. Akses metrik model Anda:

   1. Buka Amazon SageMaker Studio

   1. Arahkan ke HyperPod Cluster dan buka Dasbor Grafana

   1. Pilih Dasbor Inferensi

   1. Terapkan filter untuk melihat penerapan model spesifik Anda

1. Pantau indikator kinerja utama:

   1. Lacak latensi dan throughput model

   1. Pantau tingkat kesalahan dan ketersediaan

   1. Tinjau tren pemanfaatan sumber daya

Setelah ini selesai, Anda akan memiliki visibilitas langsung ke kinerja model Anda tanpa konfigurasi tambahan, memungkinkan identifikasi cepat masalah penerapan atau perubahan kinerja.

**Insinyur pembelajaran mesin (MLE)**

**Tanggung jawab Anda:** Pertahankan kinerja model produksi dan selesaikan masalah kinerja yang kompleks.

**Apa yang perlu Anda ketahui:**
+ Metrik lanjutan mencakup detail wadah model seperti kedalaman antrian dan metrik token
+ Analisis korelasi di beberapa jenis metrik mengungkapkan akar penyebab
+ Konfigurasi penskalaan otomatis berdampak langsung pada kinerja selama lonjakan lalu lintas

**Skenario hipotetis:** Model obrolan pelanggan mengalami respons lambat yang terputus-putus. Pengguna mengeluh tentang penundaan 5-10 detik. MLE dapat memanfaatkan observabilitas inferensi untuk penyelidikan kinerja sistematis.

**Apa yang perlu Anda lakukan:**

1. Periksa dasbor Grafana untuk memahami ruang lingkup dan tingkat keparahan masalah kinerja:

   1. Peringatan latensi tinggi aktif sejak 09:30

   1. Latensi P99:8.2s (normal: 2.1s)

   1. Jendela waktu yang terpengaruh: 09:30-10:15 (45 menit)

1. Korelasikan beberapa metrik untuk memahami perilaku sistem selama insiden:

   1. Permintaan bersamaan: Berduri ke 45 (normal: 15-20)

   1. Penskalaan pod: KEDA menskalakan 2→5 pod selama insiden

   1. Pemanfaatan GPU: Tetap normal (85-90%)

   1. Penggunaan memori: Normal (24GB/32GB)

1. Periksa perilaku sistem terdistribusi karena metrik infrastruktur tampak normal:

   1. Tampilan tingkat simpul: Semua pod terkonsentrasi pada node yang sama (distribusi buruk)

   1. Metrik wadah model: Kedalaman antrian TGI menunjukkan 127 permintaan (normal: 5-10)

   ```
   Available in Grafana dashboard under "Model Container Metrics" panel
           Metric: tgi_queue_size{resource_name="customer-chat-llama"}
           Current value: 127 requests queued (indicates backlog)
   ```

1. Identifikasi masalah konfigurasi yang saling berhubungan:

   1. Kebijakan penskalaan KEDA: Terlalu lambat (interval polling 30-an)

   1. Garis waktu penskalaan: Respons penskalaan tertinggal dari lonjakan lalu lintas sebesar 45\+ detik

1. Menerapkan perbaikan yang ditargetkan berdasarkan analisis:

   1. Interval polling KEDA yang diperbarui: 30-an → 15s

   1. Peningkatan MaxReplicas dalam konfigurasi penskalaan

   1. Ambang batas penskalaan yang disesuaikan untuk skala sebelumnya (15 vs 20 permintaan bersamaan)

Anda dapat mendiagnosis masalah kinerja yang kompleks secara sistematis menggunakan metrik komprehensif, menerapkan perbaikan yang ditargetkan, dan menetapkan tindakan pencegahan untuk mempertahankan kinerja model produksi yang konsisten.

## Terapkan integrasi observabilitas Anda sendiri
<a name="sagemaker-hyperpod-model-deployment-observability-diy"></a>

Amazon SageMaker HyperPod mengekspos metrik inferensi melalui titik akhir Prometheus standar industri, memungkinkan integrasi dengan infrastruktur observabilitas yang ada. Gunakan pendekatan ini saat Anda lebih suka menerapkan solusi pemantauan khusus atau berintegrasi dengan platform observabilitas pihak ketiga daripada menggunakan tumpukan Grafana dan Prometheus bawaan.

**Akses titik akhir metrik inferensi**

**Apa yang perlu Anda ketahui:**
+ Metrik inferensi secara otomatis diekspos pada titik akhir Prometheus standar
+ Metrik tersedia terlepas dari jenis model atau kerangka kerja penyajian Anda
+ Praktik pengikisan Prometheus standar berlaku untuk pengumpulan data

**Konfigurasi titik akhir metrik inferensi:**
+ **Pelabuhan:** 9113
+ **Jalur: /metrik**
+ **Titik akhir penuh: http://pod-ip:9113/metrics**

**Metrik inferensi yang tersedia:**
+ `model_invocations_total`- Jumlah total permintaan pemanggilan ke model
+ `model_errors_total`- Jumlah total kesalahan selama pemanggilan model
+ `model_concurrent_requests`- Permintaan bersamaan aktif per model
+ `model_latency_milliseconds`- Latensi pemanggilan model dalam milidetik
+ `model_ttfb_milliseconds`- Model waktu untuk latensi byte pertama dalam milidetik

**Akses metrik wadah model**

**Apa yang perlu Anda ketahui:**
+ Wadah model mengekspos metrik tambahan khusus untuk kerangka penyajiannya
+ Metrik ini memberikan wawasan kontainer internal seperti pemrosesan token dan kedalaman antrian
+ Konfigurasi titik akhir bervariasi menurut jenis wadah model

**Untuk penerapan JumpStart model menggunakan wadah Text Generation Inference (TGI):**
+ **Pelabuhan:** 8080 (model port kontainer)
+ **Jalur: /metrik**
+ **Dokumentasi:** [https://huggingface. co/docs/text-generation-inference/en/reference/metrics](https://huggingface.co/docs/text-generation-inference/en/reference/metrics)

**Untuk penerapan JumpStart model menggunakan kontainer Large Model Inference (LMI):**
+ **Pelabuhan:** 8080 (model port kontainer)
+ **Jalur: /server/metrik**
+ **Dokumentasi: https://github.com/deepjavalibrary/** [djl- serving/blob/master/prometheus/README](https://github.com/deepjavalibrary/djl-serving/blob/master/prometheus/README.md) .md

**Untuk titik akhir inferensi kustom (BYOD):**
+ **Port:** Dikonfigurasi pelanggan (default 8080 Default ke file. WorkerConfig ModelInvocationPort. ContainerPort dalam InferenceEndpointConfig spesifikasi.)
+ **Jalur:** Dikonfigurasi pelanggan (default/metrik)

**Menerapkan integrasi observabilitas khusus**

Dengan integrasi observabilitas khusus, Anda bertanggung jawab untuk:

1. **Metrics Scraping:** Terapkan pengikisan yang kompatibel dengan Prometheus dari titik akhir di atas

1. **Ekspor Data:** Konfigurasikan ekspor ke platform observabilitas pilihan Anda

1. **Peringatan:** Siapkan aturan peringatan berdasarkan persyaratan operasional Anda

1. **Dasbor:** Buat dasbor visualisasi untuk kebutuhan pemantauan Anda

## Memecahkan masalah observabilitas inferensi
<a name="sagemaker-hyperpod-model-deployment-observability-troubleshoot"></a>

**Dasbor tidak menunjukkan data**

Jika dasbor Grafana kosong dan semua panel menampilkan “Tidak ada data,” lakukan langkah-langkah berikut untuk menyelidiki:

1. Verifikasi Administrator telah menginstal observabilitas inferensi:

   1. Arahkan ke HyperPod Konsol> Pilih klaster > Periksa apakah status “Observabilitas” menunjukkan “Diaktifkan”

   1. Verifikasi tautan ruang kerja Grafana dapat diakses dari ikhtisar klaster

   1. Konfirmasikan bahwa ruang kerja Prometheus yang Dikelola Amazon dikonfigurasi dan menerima data

1. Verifikasi HyperPod Observabilty diaktifkan:

   ```
   hyp observability view      
   ```

1. Verifikasi metrik model diaktifkan:

   ```
   kubectl get jumpstartmodel -n <namespace> customer-chat-llama -o jsonpath='{.status.metricsStatus}' # Expected: enabled: true, state:Enabled       
   ```

   ```
   kubectl get jumpstartmodel -n <namespace> customer-chat-llama -o jsonpath='{.status.metricsStatus}' # Expected: enabled: true, state:Enabled        
   ```

1. Periksa titik akhir metrik:

   ```
   kubectl port-forward pod/customer-chat-llama-xxx 9113:9113
   curl localhost:9113/metrics | grep model_invocations_total# Expected: model_invocations_total{...} metrics
   ```

1. Periksa log:

   ```
   # Model Container
   kubectl logs customer-chat-llama-xxx -c customer-chat-llama# Look for: OOM errors, CUDA errors, model loading failures
   
   # Proxy/SideCar
   kubectl logs customer-chat-llama-xxx -c sidecar-reverse-proxy# Look for: DNS resolution issues, upstream connection failures
   
   # Metrics Exporter Sidecar
   kubectl logs customer-chat-llama-xxx -c otel-collector# Look for: Metrics collection issues, export failures
   ```

**Masalah umum lainnya**


| Isu | Solusi | Tindakan | 
| --- | --- | --- | 
| Observabilitas inferensi tidak diinstal | Instal observabilitas inferensi melalui konsol | “Aktifkan Observabilitas” di konsol HyperPod  | 
| Metrik dinonaktifkan dalam model | Perbarui konfigurasi model | Tambahkan `metrics: {enabled: true}` ke spesifikasi model | 
| Ruang kerja AMP tidak dikonfigurasi | Perbaiki koneksi sumber data | Verifikasi ID ruang kerja AMP di sumber data Grafana | 
| Konektivitas jaringan | Periksa grup keamanan/ NACLs | Pastikan pod dapat mencapai titik akhir AMP | 