Latensi dan Biaya per Langkah
Ukur penggunaan token dan waktu nyata per simpul agar Anda dapat menemukan langkah yang lambat dan mahal.
Latensi dan Biaya per Langkah adalah pelajaran AI Agents gratis di CoddyKit. Ini adalah pelajaran 3 dari 4. Kamu bisa membaca pelajaran lengkapnya di bawah secara gratis — lalu praktikkan langsung di browser dengan editor kode bawaan dan tutor AI 24/7. Ini adalah bagian dari jalur belajar AI Agents, dan progresmu tersinkronisasi di web dan aplikasi CoddyKit. Kursus AI Agents mencakup 4 pelajaran total.
Mengapa Metrik per Langkah?
Total latensi dan biaya memberi tahu Anda bahwa sistem lambat atau mahal — tetapi tidak memberi tahu langkah MANA yang lambat atau mahal. Pengukuran per langkah diperlukan untuk memperbaikinya.
Mencatat Latensi
Tambahkan ke setiap span:
start = time.time()
# ... do work ...
span.duration_ms = (time.time() - start) * 1000Kategori Latensi
Langkah yang umum menjadi lambat pada agen:
- Panggilan LLM — 500 md hingga 10 dtk
- Pencarian web — 200 md hingga 2 dtk
- Pembuatan embedding — 50 md hingga 200 md
- Kueri basis data — 5 md hingga 500 md
Mencatat Biaya
Untuk langkah LLM, kalikan jumlah token dengan harga:
PRICES = {
'gpt-4o-mini': {'in': 0.150 / 1e6, 'out': 0.600 / 1e6},
'gpt-4o': {'in': 2.50 / 1e6, 'out': 10.00 / 1e6},
'claude-sonnet-4-5': {'in': 3.00 / 1e6, 'out': 15.00 / 1e6}
}
def compute_cost(model, tokens_in, tokens_out):
p = PRICES[model]
return tokens_in * p['in'] + tokens_out * p['out']
cost = compute_cost('gpt-4o-mini', 1000, 500)
print(f"Cost for 1000 in / 500 out tokens on gpt-4o-mini: ${cost:.6f}")
Rekap per Trace
Jumlahkan span hingga tingkat trace:
def trace_metrics(spans):
return {
'duration_ms': sum(s.duration_ms for s in spans),
'cost_usd': sum(s.cost_usd or 0 for s in spans),
'tokens': sum((s.tokens_in or 0) + (s.tokens_out or 0) for s in spans),
'step_count': len(spans)
}
from types import SimpleNamespace
spans = [
SimpleNamespace(duration_ms=120, cost_usd=0.002, tokens_in=100, tokens_out=50),
SimpleNamespace(duration_ms=340, cost_usd=0.005, tokens_in=200, tokens_out=80),
]
print(trace_metrics(spans))
p50 / p95 / p99
Jangan melihat rata-rata — latensi agen memiliki ekor distribusi yang panjang. Laporkan persentil:
import numpy as np
durations = [t.duration_ms for t in last_1000_traces]
print('p50:', np.percentile(durations, 50))
print('p95:', np.percentile(durations, 95))
print('p99:', np.percentile(durations, 99))Biaya per Pengguna
Jumlahkan biaya berdasarkan user_id setiap hari:
SELECT user_id, SUM(cost_usd) AS daily_cost
FROM traces
WHERE created_at::date = current_date
GROUP BY user_id
ORDER BY daily_cost DESC
LIMIT 100Biaya per Nama Langkah
Langkah mana yang paling banyak menyumbang biaya? Kelompokkan berdasarkan nama:
SELECT name, SUM(cost_usd) AS total
FROM spans
WHERE trace_id IN (SELECT id FROM traces WHERE created_at::date = current_date)
GROUP BY name
ORDER BY total DESCDiagram Air Terjun Latensi
Untuk satu trace, buat diagram air terjun bergaya Gantt dari berbagai span. Batang terpanjang = hambatan Anda.
Sebagian besar antarmuka pengguna pelacakan merendernya secara otomatis.
Beri Peringatan untuk Pencilan
- Beri peringatan jika latensi p95 meningkat dua kali lipat dibandingkan minggu sebelumnya
- Beri peringatan jika biaya harian melonjak hingga lebih dari dua kali lipat normal
- Beri peringatan jika biaya satu pengguna melebihi $X per hari
Bandingkan Dua Model
Metrik per langkah memungkinkan Anda membandingkan model dengan A/B:
# Run 100 traces with gpt-4o-mini and 100 with haiku
# Compare p95 latency and average cost
# Pick the winner for the use case
print("Run 100 traces with gpt-4o-mini and 100 with haiku")
print("Compare p95 latency and average cost")
print("Pick the winner for the use case")
Lacak Distribusi Token
Histogram token input dan output mengungkapkan masalah: misalnya, terus-menerus mencapai max_tokens = output terpotong = bug.
Mengapa Persentil?
Mengapa melaporkan latensi p95, bukan rata-rata?
Ringkasan
Latensi dan biaya per langkah, direkap per trace dan per pengguna, menggunakan persentil bukan rata-rata, serta peringatan untuk pencilan. Inilah dasbor Anda.
Belajar AI Agents dengan tutor AI — gratis
Tulis dan jalankan kode asli di browser kamu, dapatkan bantuan instan dari tutor AI 24/7, dan lanjutkan di mana kamu tinggalkan di web atau aplikasi.
- Kursus
- 60
- Pelajaran
- 239
Pertanyaan yang Sering Diajukan
Apakah pelajaran “Latensi dan Biaya per Langkah” gratis?
Ya — teks lengkap “Latensi dan Biaya per Langkah” gratis dibaca di sini di web. Untuk praktiknya secara interaktif (editor kode bawaan dan tutor AI 24/7) dan buka sisa kursus AI Agents, upgrade ke CoddyKit PRO. Kursus AI Agents mencakup 4 pelajaran total.
Apa yang akan aku pelajari di “Latensi dan Biaya per Langkah”?
Ukur penggunaan token dan waktu nyata per simpul agar Anda dapat menemukan langkah yang lambat dan mahal. Kamu berlatih AI Agents dengan kode praktik yang langsung kamu jalankan di browser, dan tutor AI 24/7 menjawab pertanyaanmu saat kamu mengerjakan pelajaran ini.
Apakah aku perlu pengalaman untuk memulai AI Agents?
Tidak diperlukan pengalaman sebelumnya. AI Agents di CoddyKit dirancang untuk pemula hingga pelajar tingkat lanjut, jadi kamu bisa memulai di sini atau dari awal dan belajar sesuai kecepatan kamu sendiri. Ini adalah pelajaran 3 dari 4.
Berapa lama pelajaran “Latensi dan Biaya per Langkah” memakan waktu?
Sebagian besar pelajaran CoddyKit memakan waktu sekitar 5–10 menit. Setiap pelajaran ringkas dan interaktif, jadi kamu membuat kemajuan stabil dan melanjutkan dari tempat kamu tinggalkan di web dan aplikasi.
Bisakah aku menulis dan menjalankan kode dalam pelajaran AI Agents ini?
Ya. Setiap pelajaran AI Agents menyertakan editor kode bawaan, jadi kamu menulis dan menjalankan kode nyata langsung di browser dan mendapatkan umpan balik AI instan — tidak diperlukan penyiapan lokal.
Semua pelajaran dalam kursus ini
- Mengapa Agen Memerlukan Pelacakan
- Mencatat Panggilan Alat dan Masukan/Keluaran
- Latensi dan Biaya per Langkah
- Memvisualisasikan Eksekusi Agen (Langfuse, LangSmith)