Arsitektur Batch
Sesi 10.2 · ~5 menit baca
Production Manifest
Batch processing dimulai dari file input terstruktur. Bukan daftar topik di dokumen teks. Bukan folder catatan. Manifest yang bener: CSV atau spreadsheet di mana setiap baris adalah satu konten yang mau diproduksi, dan setiap kolom adalah parameter yang pipeline kamu butuhkan.
Manifest itu production order kamu. Dia mendefinisikan semua yang dibangun, gimana dibangunnya, dan constraint apa yang berlaku. Script pipeline kamu baca baris per baris, jalanin agent chain untuk setiap baris, dan simpan output di folder terstruktur. Keterlibatan manusia turun jadi reviewing output, bukan mengonfigurasi setiap konten.
Struktur Manifest
Kolom di manifest kamu sesuai dengan input yang pipeline kamu butuhkan. Minimal:
| Kolom | Tujuan | Contoh Nilai |
|---|---|---|
| id | Identifier unik untuk tracking | blog-042 |
| topic | Topik atau judul konten | Kenapa remote onboarding gagal |
| audience | Target pembaca | HR director di perusahaan SaaS menengah |
| angle | Tesis atau perspektif spesifik | Masalahnya bukan tool-nya; masalahnya absennya trust-building informal |
| word_count | Target panjang | 1200 |
| voice_variant | Profil voice mana yang dipake | professional |
| research_questions | Pertanyaan dipisah titik koma | Studi apa yang ada soal remote onboarding?; Berapa attrition rate... |
| required_elements | Apa yang harus ada di konten | Minimal 2 data point; satu studi kasus |
| forbidden_elements | Apa yang ga boleh ada di konten | Ga boleh bullet list; ga boleh pertanyaan retoris di heading |
| status | Tracking pipeline | pending / researched / drafted / reviewed / published |
Alur Pemrosesan
dari kolom baris"] C --> D["Jalankan agent chain"] D --> E["Simpan output ke
folder terstruktur"] E --> F["Update kolom status"] F --> G{"Ada baris lagi?"} G -- Ya --> B G -- Tidak --> H["Batch selesai"] style A fill:#222221,stroke:#c8a882,color:#ede9e3 style B fill:#222221,stroke:#6b8f71,color:#ede9e3 style C fill:#222221,stroke:#8a8478,color:#ede9e3 style D fill:#222221,stroke:#c8a882,color:#ede9e3 style E fill:#222221,stroke:#6b8f71,color:#ede9e3 style F fill:#222221,stroke:#8a8478,color:#ede9e3 style G fill:#222221,stroke:#c47a5a,color:#ede9e3 style H fill:#222221,stroke:#c8a882,color:#ede9e3
Script ga memproses baris yang udah punya status selain pending. Kalo kamu stop batch dan restart, dia lanjut dari tempat terakhir. Ini namanya idempotent processing: jalanin script lagi ga akan re-process item yang udah selesai.
Struktur Folder Output
Setiap baris manifest menghasilkan output di berbagai tahap pipeline. Atur secara konsisten:
output/
├── blog-042/
│ ├── research-brief.json
│ ├── outline.md
│ ├── draft-v1.md
│ ├── review.json
│ ├── draft-final.md
│ ├── output.html
│ ├── output.pdf
│ └── metadata.json
├── blog-043/
│ └── ...
└── batch-log.csv
Setiap artifact intermediate disimpan. Kalo output final ada masalah, kamu bisa trace balik ke tahap pipeline spesifik di mana masalahnya bermula. Batch log mencatat timestamp, pemakaian token, biaya, dan jumlah error per item.
Validasi Batch
Sebelum jalanin batch, validasi manifest-nya dulu:
| Pengecekan | Apa yang Ditangkap |
|---|---|
| Ga ada kolom wajib yang kosong | Topik hilang, audience hilang |
| Ga ada ID duplikat | Dua baris yang bakal overwrite output satu sama lain |
| Word count dalam range | Typo (120 bukan 1200) atau target ga realistis |
| Voice variant ada | Referensi ke profil voice yang belum dibuat |
| Research question bisa di-parse | Format list titik koma yang salah |
Jalanin validasi sebelum processing. Error manifest di baris 47 yang crash script setelah baris 1 sampai 46 selesai itu buang-buang waktu processing 46 baris.
Incremental Batching
Kamu ga harus proses seluruh manifest sekaligus. Incremental batching artinya proses 5 sampai 10 baris, review output-nya, adjust prompt atau entry manifest kalo perlu, lalu proses 5 sampai 10 berikutnya. Ini menangkap masalah sistematis lebih awal, bukan baru ketahuan setelah 100 baris kalo voice variant-nya salah.
Manifest adalah single source of truth untuk apa yang pipeline kamu produksi. Kalo ga ada di manifest, ga dibangun. Kalo ada di manifest dengan parameter salah, dibangun salah. Investasikan waktu di manifest sebelum pencet Enter di batch.
Bacaan Lanjutan
- Building an AI Production Pipeline That Scales, Joyspace
- Scalable Content Production Process, Heinz Marketing
- Content Workflow Guide, Planable
Tugas
Buat production manifest untuk batch 10 konten:
- Definisikan kolom untuk setiap parameter yang pipeline kamu butuhkan.
- Isi semua 10 baris dengan spesifikasi konten yang nyata (bukan placeholder).
- Jalanin validasi manifest: cek field kosong, ID duplikat, dan research question yang bisa di-parse.
- Proses 2 baris pertama lewat pipeline kamu. Review output-nya.
Kalo 2 output pertama memenuhi standar kualitas kamu, proses 8 sisanya. Kalo ga, identifikasi masalahnya, perbaiki manifest atau pipeline, dan jalanin ulang 2 pertama sebelum lanjut. Ini batch run pertama kamu yang beneran.