Langsung ke konten utama
← Kembali ke Insight
ARTIFICIAL INTELLIGENCE18 Mei 2026
Read in English→

Mengapa LLM Publik Melanggar UU PDP: Membangun Sandbox VPC Privat dengan Gemma

Mengirimkan data pelanggan korporat yang sensitif ke instance cloud publik menghadapkan perusahaan pada risiko hukum serius di bawah Undang-Undang Pelindungan Data Pribadi (UU No. 27/2022). Pelajari cara membangun sandbox LLM privat secara aman.

Mengapa LLM Publik Melanggar UU PDP: Membangun Sandbox VPC Privat dengan Gemma

Setiap kali aplikasi backend mengirimkan permintaan API ke model Large Language Model (LLM) publik—baik OpenAI di region us-east-1 maupun Anthropic pada klaster multi-tenant di Amerika Utara—sistem membuka pipa egress data tanpa pengawasan. Ketika microservice internal meneruskan payload JSON berisi Nomor Induk Kependudukan (NIK), nomor rekening bank, atau catatan neraca keuangan perusahaan ke endpoint pihak ketiga, perusahaan langsung melanggar batas statuter Undang-Undang Pelindungan Data Pribadi (UU No. 27/2022 atau UU PDP).

Pasal 56 UU PDP secara eksplisit mengatur bahwa pengiriman data pribadi ke luar yurisdiksi Republik Indonesia merupakan transfer data lintas batas yang memerlukan kesetaraan standar pelindungan data atau perjanjian bilateral yang berkekuatan hukum. Syarat dan ketentuan sepihak (clickwrap terms of service) dari penyedia SaaS luar negeri tidak diakui sebagai dasar pembenaran hukum oleh regulator Indonesia. Lebih dari itu, pencatatan telemetri, logging multi-tenant, dan cache memori eksternal menciptakan celah kebocoran data yang dapat berujung pada sanksi denda administratif hingga 2% dari total pendapatan tahunan (Pasal 57) serta ancaman pidana kurungan (Pasal 65–67).

Solusi rekayasa untuk mengatasi kebuntuan regulasi ini adalah menerjemahkan pasal hukum menjadi spesifikasi teknis arsitektur sistem. Dengan menempatkan model open-weights berkinerja tinggi seperti Google Gemma 2 di dalam enklave Virtual Private Cloud (VPC) yang terisolasi di region AWS Jakarta (ap-southeast-3), organisasi mempertahankan kedaulatan komputasi penuh, memangkas latensi jaringan ke orde sub-milidetik, dan memastikan retensi data berada 100% di bawah kendali internal.

+----------------------------------------------------------------------------------------------------+
| AWS Virtual Private Cloud (10.100.0.0/16) - Region Jakarta (ap-southeast-3)                        |
|                                                                                                    |
|  [ Subnet Publik ] (Penyaringan Egress Ketat)                                                      |
|    +-----------------------------+                                                                 |
|    | NAT Gateway (Tanpa Ingress  | ---> Internet (Allow-List Terbatas: Registry Internal / PyPI)  |
|    | IP Publik, Egress Terfiltrasi|                                                                |
|    +-----------------------------+                                                                 |
|                                                                                                    |
|  [ Subnet Privat 1 (10.100.1.0/24) ]                                                               |
|    +------------------------+        mTLS (x509)        +----------------------------------------+ |
|    | Layanan Aplikasi       | ------------------------> | Gateway API Envoy (Ingress Proxy)      | |
|    | Internal (Core Banking)|                           | - Autentikasi SPIFFE                   | |
|    +------------------------+                           | - Rate Limiting & Otorisasi            | |
|                                                         +----------------------------------------+ |
|                                                                     |                              |
|                                                                     v                              |
|  [ Subnet Privat 2 (10.100.2.0/24) ]                                                               |
|    +----------------------------------+       HTTP Internal         +----------------------------+ |
|    | Worker Ingesti & Penyamaran PII  | --------------------------> | Engine Inferensi vLLM      | |
|    | - Tokenisasi Regex & NER         |                             | - Model: Gemma-2-27b-it    | |
|    | - Pseudonimisasi HMAC            |                             | - Kuantisasi AWQ (int4)    | |
|    +----------------------------------+                             | - Memori GPU Terdedikasi   | |
|                    |                                                +----------------------------+ |
|                    v Pencarian Vektor Lokal (gRPC)                                                 |
|    +----------------------------------+                                                            |
|    | Mesin Vektor Qdrant              |                                                            |
|    | - Embedding BAAI/bge-m3          |                                                            |
|    | - Volume EBS NVMe Terenkripsi    |                                                            |
|    +----------------------------------+                                                            |
+----------------------------------------------------------------------------------------------------+

1. Menerjemahkan Mandat Statuter Menjadi Spesifikasi Arsitektur

Alih-alih memperlakukan UU PDP sebagai diskursus legalitas abstrak, tim rekayasa wajib mendefinisikan batasan kepatuhan ke dalam tiga invarian sistem:

Invarian A: Null-Routing Egress Absolut (Pasal 56)

Seluruh beban komputasi inferensi wajib dieksekusi di atas infrastruktur fisik yang berlokasi di dalam wilayah Republik Indonesia. Pada region AWS Jakarta (ap-southeast-3), subnet komputasi dikonfigurasi tanpa rute default (0.0.0.0/0) ke Internet Gateway. Seluruh paket data dibatasi hanya untuk menjangkau VPC endpoint internal dan repositori privat melalui proxy egress dengan allow-list ketat. Paket prompt tidak pernah menyentuh internet publik.

Invarian B: Zero Persistent Prompt Telemetry (Pasal 46)

Penyedia API LLM publik umumnya merekam isi prompt untuk analitik, pengawasan konten, atau evaluasi model. Berdasarkan Pasal 46 UU PDP, setiap insiden kebocoran data pribadi mewajibkan penyampaian notifikasi tertulis paling lambat 3x24 jam kepada otoritas pengawas dan subjek data. Menjalankan engine inferensi mandiri dengan mematikan log standar stdout menjamin teks prompt hanya berada di dalam memori volatil SRAM GPU selama siklus pembuatan token.

Invarian C: Identitas Kriptografis & Mikro-Segmentasi

Setiap layanan aplikasi internal wajib menyertakan sertifikat x509 yang divalidasi melalui protokol mutual TLS (mTLS) berbasis SPIFFE/SPIRE. Ingress proxy Envoy memverifikasi identitas pemanggil, menegakkan limitasi laju trafik (rate limiting), dan menghapus header transpor sebelum meneruskan muatan ke worker inferensi.

2. Topologi Arsitektur VPC Terisolasi

Arsitektur ini membagi alur komputasi ke dalam empat lapisan pertahanan berlapis:

  1. Batas Ingress & Gateway Envoy: Layanan aplikasi internal berkomunikasi dengan enklave AI melalui gateway Envoy berlatensi rendah. Lalu lintas HTTP tanpa enkripsi ditolak langsung pada aturan security group subnet.
  2. Pipeline Ingesti & Penyamaran PII: Sebelum mencapai mesin pencari vektor atau konteks LLM, data melewati worker pembersih yang menukar identitas kependudukan, nomor pajak, dan rekening bank dengan token pseudo-HMAC.
  3. Pencarian Vektor Lokal: Ekstraksi semantik dokumen dijalankan secara lokal menggunakan model embedding BAAI/bge-m3. Vektor disimpan dalam klaster Qdrant self-hosted pada volume NVMe terenkripsi via AWS KMS dengan Customer Managed Keys (CMK).
  4. Akselerasi Inferensi Terdedikasi: Model Google Gemma 2 27B dieksekusi pada 1 unit GPU NVIDIA A10G 24GB menggunakan kuantisasi tensor 4-bit AWQ.

3. Spesifikasi Deployment Produksi vLLM pada NVIDIA A10G

Menjalankan inferensi model enterprise secara efisien menuntut rasio throughput token per dolar yang maksimal dalam batas memori 1 kartu GPU. Bobot standar FP16 untuk model 27 miliar parameter membutuhkan sekitar 54GB VRAM, yang memaksa penggunaan multi-GPU berbiaya tinggi (seperti 2x A100 atau 4x A10G).

Dengan menerapkan teknik Activation-aware Weight Quantization (AWQ) pada presisi 4-bit, ukuran bobot model dikompresi menjadi sekitar 16GB. Pada instance GPU 24GB NVIDIA A10G (seperti AWS g5.2xlarge), sisa kapasitas 8GB VRAM dialokasikan penuh untuk KV cache. Didukung oleh paging memori vLLM (PagedAttention), konfigurasi ini mampu melayani 64 urutan konkuren secara simultan dengan context window 8.192 token dan time-to-first-token (TTFT) di bawah 120 milidetik.

# docker-compose.vllm.yml
version: "3.8"

services:
  vllm-gemma:
    image: vllm/vllm-openai:v0.6.3
    container_name: gemma-2-27b-terisolasi
    restart: unless-stopped
    runtime: nvidia
    environment:
      - CUDA_VISIBLE_DEVICES=0
      - NCCL_DEBUG=WARN
      - VLLM_LOGGING_LEVEL=WARNING
    ports:
      - "127.0.0.1:8000:8000"
    volumes:
      - /opt/models/gemma-2-27b-it-awq:/models/gemma-2-27b-it-awq:ro
      - /opt/huggingface-cache:/root/.cache/huggingface:ro
    command: >
      vllm serve /models/gemma-2-27b-it-awq
      --host 0.0.0.0
      --port 8000
      --model /models/gemma-2-27b-it-awq
      --quantization awq
      --dtype half
      --gpu-memory-utilization 0.92
      --max-model-len 8192
      --max-num-seqs 64
      --disable-log-requests
      --enforce-eager
    deploy:
      resources:
        reservations:
          devices:
            - driver: nvidia
              count: 1
              capabilities: [gpu]
    healthcheck:
      test: ["CMD", "curl", "-f", "http://localhost:8000/health"]
      interval: 10s
      timeout: 5s
      retries: 3

Parameter Wajib --disable-log-requests: Secara default, container vLLM mencetak teks isi prompt langsung ke stdout. Jika platform Anda menghubungkan stdout ke log collector terpusat (seperti Elasticsearch, CloudWatch, atau Datadog), data sensitif perbankan akan tersimpan dalam bentuk teks biasa. Menambahkan flag --disable-log-requests memastikan data prompt hanya diproses di SRAM GPU dan tidak pernah ditulis ke media disk atau stream log kontainer.

4. Pipeline Redaksi & Penyamaran PII di Memori

Demi memastikan basis data vektor dan log memori tidak pernah menyimpan identitas sensitif, seluruh teks masukan diproses melalui pipeline redaksi deterministik sebelum proses tokenisasi model.

Pipeline ini memetakan format identitas resmi Indonesia—seperti 16 digit Nomor Induk Kependudukan (NIK), Nomor Pokok Wajib Pajak (NPWP), nomor ponsel, dan nomor rekening perbankan—lalu menggantikannya dengan token pseudo-HMAC yang konsisten. Kamus substitusi disimpan secara efemeral di memori aplikasi dan tidak pernah dipersistensikan ke disk.

// pii-sanitizer.ts
import { createHmac } from 'crypto';

interface RedactionResult {
  sanitizedPrompt: string;
  replacementMap: Record<string, string>;
}

export class IndonesianPiiRedactor {
  private readonly secretKey: Buffer;

  // Pola regex sesuai skema identifikasi resmi di Indonesia
  private readonly patterns = {
    // Nomor Induk Kependudukan (NIK): 16 digit berurutan
    nik: /\b([1-9][0-9]{15})\b/g,
    // Nomor Pokok Wajib Pajak (NPWP): format standar atau 15/16 digit numerik
    npwp: /\b(\d{2}\.\d{3}\.\d{3}\.\d{1}-\d{3}\.\d{3}|\d{15,16})\b/g,
    // Format Seluler Indonesia: +62 8XX atau 08XX (10-13 digit)
    phone: /\b(\+62|62|0)(8[1-9][0-9]{7,10})\b/g,
    // Nomor Rekening Bank: 10-16 deret numerik
    bankAccount: /\b([0-9]{10,16})\b/g,
  };

  constructor(secretKey: string) {
    this.secretKey = Buffer.from(secretKey, 'utf-8');
  }

  private generateToken(type: string, rawValue: string): string {
    const hash = createHmac('sha256', this.secretKey)
      .update(rawValue)
      .digest('hex')
      .slice(0, 10);
    return `[${type}_TEREDAKSI_${hash}]`;
  }

  public redact(rawInput: string): RedactionResult {
    let sanitized = rawInput;
    const replacementMap: Record<string, string> = {};

    // 1. Reduksi NIK
    sanitized = sanitized.replace(this.patterns.nik, (match) => {
      const token = this.generateToken('NIK', match);
      replacementMap[token] = match;
      return token;
    });

    // 2. Reduksi NPWP
    sanitized = sanitized.replace(this.patterns.npwp, (match) => {
      const token = this.generateToken('NPWP', match);
      replacementMap[token] = match;
      return token;
    });

    // 3. Reduksi Nomor Ponsel
    sanitized = sanitized.replace(this.patterns.phone, (match) => {
      const token = this.generateToken('PHONE', match);
      replacementMap[token] = match;
      return token;
    });

    return {
      sanitizedPrompt: sanitized,
      replacementMap,
    };
  }

  public restore(inferenceOutput: string, replacementMap: Record<string, string>): string {
    let restored = inferenceOutput;
    for (const [token, originalValue] of Object.entries(replacementMap)) {
      restored = restored.replaceAll(token, originalValue);
    }
    return restored;
  }
}

Model memproses token pengganti (misalnya [NIK_TEREDAKSI_a89fbc01de]) tanpa kehilangan koherensi semantik kalimat. Begitu model menyelesaikan pembuatan token jawaban, worker aplikasi merehidrasi kembali nilai asli dari kamus memori lokal sebelum mengirimkan respons akhir melalui koneksi mTLS ke pengguna terverifikasi.

5. Verifikasi Kepatuhan & Jaminan Arsitektur

Arsitektur ini mengubah kepatuhan regulasi UU PDP dari sekadar asumsi hukum menjadi jaminan teknis yang siap diaudit:

  • Enklave Komputasi Berdaulat: Beban komputasi dan media penyimpanan berada 100% di dalam region AWS Jakarta (ap-southeast-3). Rute jaringan ke server LLM eksternal diputus pada tingkat tabel routing VPC.
  • Nol Pelatihan Model Pihak Ketiga: Menghapus ketergantungan API pihak ketiga menjamin kerahasiaan data korporasi dari proses evaluasi ataupun pelatihan sekunder model publik.
  • Isolasi Hardware Terdedikasi: GPU tunggal terdedikasi meniadakan risiko kebocoran memori multi-tenant dan eksploitasi hypervisor side-channel.
  • Log Audit Siap Forensik: Telemetri sistem merekam identitas pemanggil berbasis kriptografi, stempel waktu, dan metrik latensi tanpa pernah menyimpan teks isi prompt, memenuhi kriteria audit kepatuhan tanpa menciptakan risiko sekunder.

Melalui arsitektur ini, kecerdasan buatan generatif bertransformasi dari liabilitas hukum menjadi aset teknologi strategis berdaulat bagi enterprise.