Dari Penemuan Tren hingga Video Terbit: Di Dalam Mesin Pemasaran AI Kami
Alphazed membangun pipeline pemasaran AI yang sepenuhnya otomatis yang menemukan topik edukasi bahasa Arab yang sedang tren di YouTube, menilai relevansinya, membuat skrip video dalam bahasa Arab, menghasilkan gambar dengan DALL-E, mensintesis suara dengan ElevenLabs, menyusun video dengan FFmpeg, melakukan pemeriksaan kepatuhan keamanan anak, dan menerbitkan ke YouTube — semuanya dengan persetujuan manusia melalui Slack sebelum tayang.
Pipeline 13 Langkah
Langkah 1: Temukan Tren
└─ YouTubeAPI: Ambil video trending di kategori edukasi bahasa Arab
Kata kunci pencarian: "تعليم", "أطفال", "تعلم", "عربي"
Ekstrak: judul, view, kecepatan (view per hari), komentar, keterlibatan subscriber
Langkah 2: Skor Tren
└─ TrendScorer: Rumus berbobot
Skor = (view × 0.35) + (kecepatan × 0.30) + (kesesuaian_tema × 0.20) + (wilayah × 0.10) + (keamanan × 0.05)
Ambang: Hanya tren dengan skor >75 yang lanjut
Langkah 3: Ideasi
└─ ContentIdeator: Buat konsep video
Input: Topik tren (misal "تحفيز الأطفال على تعلم العربية")
Output: Konsep video, target umur, tujuan pembelajaran
Langkah 4: Pembuatan Skrip
└─ GPT-4o: Buat skrip video bahasa Arab
Prompt: "Buat skrip YouTube shorts 2 menit tentang [topik] untuk anak usia [umur] dalam bahasa Arab"
Output: Skrip per adegan dengan narasi
Langkah 5: Variasi Pembuka
└─ HookGenerator: Buat 3 variasi pembuka
Varian 1: Pembuka cerita
Varian 2: Pembuka pertanyaan
Varian 3: Pembuka tantangan
Kemudian A/B test untuk klik tertinggi
Langkah 6: Storyboard
└─ StoryboardGenerator: Buat urutan visual
Input: Skrip
Output: Rincian shot demi shot (20-30 shot untuk video 2 menit)
Langkah 7: Pembuatan Gambar
└─ DALL-E: Buat visual tiap shot
Prompt: "Anak belajar huruf ب di kelas yang penuh warna"
Output: 20-30 gambar, gaya konsisten
Langkah 8: Sintesis Suara
└─ ElevenLabs: Buat narasi bahasa Arab
Suara: Perempuan, ramah anak, jelas artikulasi
Bahasa: Arab (dialek Saudi untuk jangkauan luas)
Output: Audio MP3, tanda bicara untuk sinkron bibir
Langkah 9: Penyusunan Video
└─ FFmpeg: Gabungkan video
Input: Gambar (langkah 7) + audio (langkah 8) + musik latar
Output: Video MP4, 1080p, optimal untuk YouTube Shorts
Langkah 10: Pemeriksaan Kepatuhan
└─ KidsSafetyChecker: Pemindaian LLM untuk konten tidak pantas
Pemeriksaan: Tidak ada kekerasan, bahasa tidak pantas, atau pelanggaran hak cipta
Output: Lulus/Gagal + catatan
Langkah 11: Gerbang Persetujuan Slack
└─ SlackBot: Posting pratinjau video + metadata
Tim cek: thumbnail, judul, deskripsi, transkrip
Pilihan persetujuan: ✓ Terbitkan | 🔄 Revisi | ✗ Tolak
Langkah 12: Terbitkan
└─ YouTubeAPI: Unggah ke kanal Alphazed
Judul, deskripsi, tag, thumbnail
Visibilitas: Publik
Langkah 13: Sinkronisasi Analitik
└─ YouTubeAnalytics: Pantau performa
Metrik: View, CTR, durasi tonton rata-rata, share
Feedback: Gunakan data untuk perbaiki skrip berikutnya
Algoritma Penilaian Tren (Langkah 2)
Rumusnya
def score_trend(trend_data):
# Komponen 1: Popularitas mentah (view)
popularity_score = min(trend_data['views'] / 1_000_000, 1.0) * 100
# Maks 1 juta views = 100 poin
# Komponen 2: Kecepatan (laju pertumbuhan)
velocity = trend_data['views'] / trend_data['days_since_upload']
velocity_score = min(velocity / 100_000, 1.0) * 100
# 100rb views/hari = 100 poin
# Komponen 3: Kesesuaian topik
relevant_keywords = ['عربية', 'قرآن', 'أطفال', 'تعليم', 'لغة']
keyword_matches = sum(1 for kw in relevant_keywords if kw in trend_data['topic'])
topic_fit_score = (keyword_matches / len(relevant_keywords)) * 100
# Komponen 4: Relevansi regional
region_score = get_region_weight(trend_data.get('region', 'unknown')) * 100
# Komponen 5: Keamanan (cek cepat LLM)
safety_score = 100 if is_kid_safe(trend_data['title']) else 0
# Jumlah berbobot
final_score = (
popularity_score * 0.35 +
velocity_score * 0.30 +
topic_fit_score * 0.20 +
region_score * 0.10 +
safety_score * 0.05
)
return {
'overall_score': final_score,
'pass_threshold': final_score >= 75,
'breakdown': {
'popularity': popularity_score,
'velocity': velocity_score,
'topic_fit': topic_fit_score,
'region': region_score,
'safety': safety_score
}
}</code></pre>
Contoh: Penilaian Video Trending
Tren: "Cara mengajar anak huruf Arab di rumah"
Data:
- View: 500.000
- Hari: 7
- Kata kunci: Mengandung "ajarkan", "anak", "Arab"
- Wilayah: AS + Kanada
- Keamanan: Aman
Penilaian:
- Popularitas: 50 (500rb/1jt maksimal)
- Kecepatan: 71 (~71rb/hari)
- Kesesuaian topik: 67 (3 dari 5 kata cocok)
- Wilayah: 60 (diaspora AS)
- Keamanan: 100 (aman)
Total: (50 × 0.35) + (71 × 0.30) + (67 × 0.20) + (60 × 0.10) + (100 × 0.05)
= 63,2 → GAGAL (kurang dari 75)
Contoh Skor Tinggi
Tren: "تعليم القرآن للأطفال - طرق فعالة"
Data:
- View: 2.000.000 (viral)
- Hari: 3 (pertumbuhan cepat)
- Kata kunci: "قرآن", "أطفال", "تعليم" (semua cocok)
- Wilayah: MENA + Asia Selatan
- Keamanan: Aman
Penilaian:
- Popularitas: 100 (maksimum)
- Kecepatan: 100 (666rb/hari, maksimal)
- Kesesuaian topik: 100 (3 dari 3 cocok)
- Wilayah: 90
- Keamanan: 100
Total: 99 → LULUS! (sangat sesuai)
Human-in-the-Loop: Persetujuan Wajib
Sebelum video diterbitkan, dikirimkan ke Slack untuk tinjauan tim:
🎥 [Pipeline] Siap Tinjau: Video #47
Judul: "كيف تعلم ابنك حروف العربية بسهولة"
Skor Topik: 89/100
Perkiraan View (model ML): 85.000-120.000
[Preview Video] [Lihat Transkrip] [Lihat Analisis]
Status Kepatuhan: ✅ Lulus
- Tidak ada kekerasan: ✓
- Sesuai umur: ✓
- Tidak ada pelanggaran IP: ✓
Aksi: ✓ Terbitkan | 🔄 Revisi | ✗ Tolak
Gerbang Khusus:
- Konten Qur'an: Tinjauan ahli ekstra
- Tren baru: Tinjauan manual tambahan
- Tren cepat: Prioritas pipeline lebih cepat
Arsitektur Ports & Adapters
Pipeline didesain agar penyedia layanan bisa diganti tanpa mengubah logika bisnis:
# src/services/content_generation/interfaces.py
class TextGeneratorInterface:
def generate_script(self, topic: str, age_group: str) -> str:
pass
class OpenAIScriptGenerator(TextGeneratorInterface):
def generate_script(self, topic: str, age_group: str) -> str:
# Pakai OpenAI API
pass
class ClaudeScriptGenerator(TextGeneratorInterface):
def generate_script(self, topic: str, age_group: str) -> str:
# Pakai Anthropic API
pass
Saat runtime, pilih provider yang tepat
script_generator = ClaudeScriptGenerator() # Mudah diganti
script = script_generator.generate_script('تعليم العربية', '5-7')
Manfaat: Jika OpenAI mati, tinggal ganti ke Claude cukup ubah konfigurasi.
Hasil
- Volume: 50-100 topik tren per minggu
- Tingkat lulus skor: ~20% (15-20 tren lolos)
- Video terbit: ~3-4 per minggu
- Output tahunan: 150-200 video
- Performa (Data asli):
- Rata-rata view video: 12.000-45.000
- Rata-rata CTR: 8-12% (industri: 2-5%)
- Waktu tonton rata-rata: 65-85% durasi video (industri: 40-50%)
- Konversi (view → instal aplikasi): 3-5% (industri: 0,5-1%)
- Biaya:
- AI per video: $3-5 (GPT, DALL-E, ElevenLabs)
- Review manusia: 15 menit × $25/jam = $6,25
- Hosting YouTube: Gratis
- Total per video: ~$10
- Biaya per instal: ~$2-3 (berdasarkan konversi 3-5%)
FAQ
T: Bagaimana jika skrip AI salah tentang bahasa Arab?
J: Gerbang persetujuan manusia menangkap kesalahan. Jika ada kesalahan tata bahasa atau sensitivitas budaya, reviewer pilih "Revisi" dan beri catatan. Pipeline regenerasi dengan masukan.
T: Apakah ini melanggar kebijakan otomatisasi YouTube?
J: Tidak. Ada tinjauan manusia wajib lewat Slack sebelum terbit. YouTube mengizinkan konten dengan AI asal ada supervisi manusia.
T: Apakah video AI bisa ranking bagus di pencarian?
J: Bisa, jika berkualitas tinggi seperti video kami. Algoritma YouTube menghargai waktu tonton, CTR, dan interaksi. Video kami performanya di atas rata-rata.


