AGENTIKA
  • Blog
  • Learn
  • FAQ
Menu
Blog→Learn→FAQ→
AGENTIKA

Platform AI untuk UMKM Indonesia. Tools AI, tutorial otomatisasi, dan strategi side hustle.

Platform

  • Blog
  • Learn
  • FAQ

Community

  • Twitter / X
  • GitHub

© 2026 AGENTIKA. All rights reserved.

HomeBlogLearnFAQ

Ai Basics

  • Pengantar AI Modern
  • Prompt Engineering Fundamentals
  • LLM API Primer
  • Machine Learning Overview
  • AI Tools untuk Produktivitas
  • AI Agents dan Autonomous Systems
  • Data & Pipeline ML
  • RAG & Vector Search
  • Evaluasi Model AI
  • Etika & Responsible AI
  • Dasar API LLM: Menghubungkan Aplikasi dengan AI
  • Prompt Design Patterns untuk Aplikasi
  • Streaming Response dari LLM
  • Error Handling untuk LLM Applications
  • Optimasi Biaya LLM API
  • Multi-Provider LLM Architecture
  • Kapan Harus Fine-tuning Model AI?
  • Menyiapkan Dataset untuk Fine-tuning
  • Proses Training Fine-tuning LLM
  • Evaluasi Model Fine-tuned
  • Deploy Model Fine-tuned ke Produksi
  • Arsitektur RAG: Retrieval-Augmented Generation
  • Embeddings untuk RAG
  • Vector Database untuk RAG
  • Retrieval Strategies untuk RAG
  • RAG di Produksi: Monitoring dan Optimasi
  • Arsitektur AI Agent
  • Tool Use untuk AI Agent
  • Memory Systems untuk AI Agent
  • Multi-Agent Systems
  • Evaluasi AI Agent
  • Safety untuk AI Agent
Learn / Ai Basics / Lessons / Optimasi Biaya LLM API

Optimasi Biaya LLM API

Biaya LLM API bisa signifikan dalam produksi. GPT-4o: $2.50/1M input tokens, $10/1M output tokens. Tanpa optimasi, sebuah chatbot bisa menghabiskan $100+/hari.

Strategi 1: Model Selection Tepat

Tidak semua tugas butuh model mahal:

function selectModel(task: string): string {
  const modelMap: Record<string, string> = {
    classify: "gpt-4o-mini",     // $0.15/1M
    summarize: "gpt-4o-mini",
    translate: "gpt-4o-mini",
    analyze: "gpt-4o",           // $2.50/1M
    code: "gpt-4o",
    reason: "o3",                // Complex reasoning
  };
  return modelMap[task] ?? "gpt-4o-mini";
}

Strategi 2: Response Caching

Cache response untuk query yang identik:

import { createHash } from "crypto";

function getCacheKey(messages: Message[], model: string): string {
  const content = JSON.stringify({ messages, model });
  return createHash("sha256").update(content).digest("hex");
}

async function cachedLLMCall(messages: Message[], model: string) {
  const cacheKey = getCacheKey(messages, model);

  const cached = await redis.get(cacheKey);
  if (cached) return JSON.parse(cached);

  const result = await llm.call(messages, model);
  await redis.setex(cacheKey, 3600, JSON.stringify(result));
  return result;
}

Savings: 30-60% untuk aplikasi dengan query berulang.

Strategi 3: Token Optimization

function optimizeContext(messages: Message[]): Message[] {
  const oldMessages = messages.slice(0, -5);
  const recentMessages = messages.slice(-5);

  if (oldMessages.length > 0) {
    const summary = summarizeConversation(oldMessages);
    return [
      { role: "system", content: "Conversation summary: " + summary },
      ...recentMessages,
    ];
  }
  return recentMessages;
}

function cleanInput(text: string): string {
  return text.replace(/\s+/g, " ").trim();
}

Strategi 4: Batching

Kumpulkan beberapa request dan proses sekaligus:

async function batchClassify(texts: string[]): Promise<string[]> {
  const batchPrompt = texts
    .map((text, i) => "[" + i + "] " + text)
    .join("\n");

  const response = await llm.call([{
    role: "user",
    content: "Klasifikasikan setiap teks berikut (web3/ai/airdrop):\n" + batchPrompt,
  }]);

  return parseBatchResponse(response);
}
// 10 request menjadi 1 API call = 90% cost saving

Strategi 5: Max Tokens yang Realistis

const completion = await openai.chat.completions.create({
  model: "gpt-4o-mini",
  messages,
  max_tokens: 500, // Jangan biarkan AI menulis 4000 token
  stream: true,
});

Monitoring Biaya

async function trackCost(model: string, inputTokens: number, outputTokens: number) {
  const pricing: Record<string, { input: number; output: number }> = {
    "gpt-4o": { input: 2.5, output: 10 },
    "gpt-4o-mini": { input: 0.15, output: 0.6 },
  };

  const rate = pricing[model];
  if (!rate) return;

  const cost = (inputTokens * rate.input + outputTokens * rate.output) / 1_000_000;

  await db.usage.create({
    data: { model, inputTokens, outputTokens, cost, timestamp: new Date() },
  });
}

Checklist Optimasi

  • Gunakan model termurah yang memadai untuk tugas
  • Cache response untuk query berulang
  • Optimalkan conversation context (ringkas, potong)
  • Set max_tokens yang realistis
  • Batch request kapan memungkinkan
  • Monitor cost per user/feature
  • Set billing alerts di provider dashboard

Latihan

Hitung estimasi biaya bulanan untuk chatbot yang melayani 100 user/hari dengan rata-rata 10 pesan per user. Bandingkan cost antara GPT-4o dan GPT-4o-mini.

← Previous Lesson

Error Handling untuk LLM Applications

Next Lesson →

Multi-Provider LLM Architecture

Eksplorasi Modul Lain

Belajar Terstruktur

Ikuti kurikulum AI step-by-step di modul Learn.

AI Tools Directory

Bandingkan tools AI untuk kebutuhan konten dan produktivitas.