← Semua pembelajaran / AWS untuk AI Engineer
Fase 3 · Bedrock Dasar

Amazon Bedrock — pengantar

Bedrock adalah layanan terkelola untuk memakai foundation model lewat API, tanpa mengurus infrastruktur. Ia juga rumah bagi hampir seluruh materi sertifikasi AIP-C01.

Intisari

  • Bedrock tidak melatih model untukmu — ia menyediakan model milik banyak penyedia lewat satu API.
  • Dua bidang terpisah: bedrock (kelola) dan bedrock-runtime (panggil model).
  • Model harus diaktifkan aksesnya per region sebelum bisa dipanggil.
  • Fitur di atasnya: Knowledge Bases (RAG), Agents, Guardrails, Prompt Management, Evaluations.
  • Bayar per token untuk on-demand; ada juga batch (lebih murah) dan provisioned throughput (kapasitas tetap).

Posisi Bedrock di antara layanan AI AWS

LayananUntukKamu mengurus
BedrockMemakai foundation model lewat APIPrompt dan aplikasi
SageMaker AIMelatih, menyetel, dan meng-host model sendiriModel, endpoint, dan skala
Amazon QAsisten siap pakai (bisnis dan developer)Nyaris tidak ada
Comprehend, Textract, TranscribeTugas spesifik: entitas, OCR, transkripsiPanggilan API saja

Ujian AIP-C01 berpusat di baris pertama, dengan SageMaker muncul untuk kasus model kustom, dan layanan baris terakhir muncul sebagai komponen pipeline — Comprehend untuk deteksi PII, Textract untuk membaca dokumen.

Yang ada di dalam Bedrock

FiturMenjawabFase
Model inference (Converse)Bagaimana memanggil model?3
Knowledge BasesBagaimana menjawab berdasarkan dokumenku?4
Agents & AgentCoreBagaimana model memakai tool dan mengambil langkah?5
GuardrailsBagaimana menyaring input dan output?6
Prompt Management & FlowsBagaimana mengelola prompt sebagai artefak?5–6
Model EvaluationBagaimana tahu jawabannya membaik atau memburuk?7
Batch inferenceBagaimana memproses jutaan prompt dengan murah?7

Dua bidang, dua client

import boto3

kelola  = boto3.client("bedrock",         region_name="us-east-1")  # control plane
runtime = boto3.client("bedrock-runtime", region_name="us-east-1")  # data plane

# Bidang kelola: melihat apa yang tersedia
for m in kelola.list_foundation_models()["modelSummaries"][:5]:
    print(m["modelId"], "|", m["providerName"])

# Bidang runtime: benar-benar memanggil model
resp = runtime.converse(
    modelId="anthropic.claude-3-5-haiku-20241022-v1:0",
    messages=[{"role": "user", "content": [{"text": "Jelaskan RAG dalam dua kalimat."}]}],
)
print(resp["output"]["message"]["content"][0]["text"])

Pemisahan ini juga berlaku untuk izin. Aplikasi produksimu hampir selalu cukup punya izin runtime (bedrock:InvokeModel). Izin kelola (bedrock:CreateGuardrail, bedrock:DeleteKnowledgeBase) adalah milik pipeline IaC, bukan milik aplikasi.

Model ID dan versi

anthropic.claude-3-5-haiku-20241022-v1:0
└─ penyedia  └─ keluarga     └─ tanggal   └─ versi

Model ID bersifat spesifik — versi berbeda adalah model berbeda, dengan perilaku dan harga berbeda. Jangan menaruhnya sebagai literal yang tersebar di kode. Satu variabel environment, satu tempat, sehingga mengganti model tidak berarti menyisir seluruh repositori. Ini juga yang dimaksud exam guide dengan "dynamic model selection without code modification".

Cara ditagih

ModeBayarCocok untuk
On-demandPer token masuk dan keluarHampir semua aplikasi interaktif
BatchPer token, tarif lebih murahPekerjaan besar yang tidak buru-buru
Provisioned ThroughputPer jam per model unitBeban stabil tinggi, atau model kustom

Token keluaran umumnya jauh lebih mahal daripada token masukan. Karena itu maxTokens bukan sekadar pembatas teknis — ia pengendali biaya langsung.

Latihan: cetak daftar seluruh model yang tersedia di us-east-1 beserta penyedianya, lalu saring hanya yang mendukung TEXT pada outputModalities. Simpan model ID yang akan kamu pakai sepanjang roadmap ini ke variabel environment MODEL_ID.

Rangkuman ini sengaja dipangkas ke bagian yang dipakai di roadmap. Buka sumber aslinya saat kamu butuh detail lengkap atau referensi parameter.