AI Engine
Pesona NTT
Platform ini mengintegrasikan 5 fitur kecerdasan buatan yang saling terhubung untuk memberikan pengalaman wisata yang personal dan cerdas.
Model Info
Ara — Travel Planning AI
Chatbot pemandu wisata personal
Ara adalah asisten AI yang memandu user merencanakan perjalanan ke NTT melalui tanya jawab percakapan. Menggunakan multi-turn conversation dengan riwayat pesan penuh yang dikirimkan ke Claude di setiap request.
Multi-turn Chat
Ingat konteks percakapan
Itinerary Generator
Buat rencana perjalanan
Trigger Detection
Tag [RECOMMENDATION_READY]
Session Persisted
Disimpan di database
// System Prompt dikirim di setiap request ke Claude Kamu adalah Ara, pemandu wisata NTT yang ramah dan antusias. Tugasmu membantu merencanakan perjalanan ke hidden gems NTT dengan tanya jawab santai — SATU pertanyaan per pesan. FASE 1 — Tanya satu per satu: 1. Wilayah NTT yang ingin dikunjungi (Flores, Sumba, Timor, Labuan Bajo, Rote, Alor)? 2. Total budget perjalanan? 3. Berapa orang dan berapa hari? 4. Jenis pengalaman (alam, budaya, petualangan, relaksasi)? 5. Preferensi akomodasi? FASE 2 — Setelah info cukup: - Destinasi hidden gem + alasan uniknya - Itinerary per hari (ringkas) - 2 pilihan akomodasi + estimasi harga - Rekomendasi kuliner lokal - Estimasi budget total - Tips praktis // Aturan: - Satu pertanyaan per pesan - Jawab sesuai bahasa user - Respons ringkas dan padat PENTING: Saat itinerary selesai, akhiri dengan tag: [RECOMMENDATION_READY]
Smart Search
Natural language → structured filters
User mengetik pencarian bebas dalam Bahasa Indonesia. AI mengekstrak filter terstruktur
(category, max_price, min_rating, location, keywords)
yang langsung dipakai sebagai parameter query database.
// Hasil ekstraksi Claude →
// Input: query string bebas dari user // Output: JSON structured filters Kamu adalah AI parser. Ekstrak informasi dari query pencarian wisata berikut ke format JSON. Query: "{$query}" Kembalikan HANYA JSON valid (tanpa penjelasan, tanpa markdown) dengan struktur: { "category": "Beach|Mountain|Culture |Nature|null", "max_price": number_or_null, "min_rating": number_or_null, "keywords": "string_or_null", "location": "string_or_null" } // Contoh: Query: "pantai murah di flores rating bagus" → {"category":"Beach","max_price":null, "min_rating":4,"keywords":"murah", "location":"flores"} // Config: // max_tokens: 256 // Cache: tidak (real-time query) // Pembersihan: regex strip ```json```
Review Analyzer
Ringkasan ulasan dengan AI + caching
Mengambil hingga 30 ulasan terbaru dari destinasi atau hotel, mengirimkannya ke Claude, dan menghasilkan ringkasan 3-4 kalimat yang objektif. Hasilnya di-cache 24 jam per item untuk efisiensi.
Cache 24 Jam
Hemat API calls
Max 30 Reviews
Input teratas terbaru
Dual Target
Destination + Hotel
512 Token Output
Ringkas & cepat
Digunakan di:
- Halaman detail destinasi (tab Reviews)
- Halaman detail hotel (bagian Ulasan)
// Cache key: ai.review_summary.{type}.{id} // TTL: 86400 detik (24 jam) // Hanya hits API jika cache miss Kamu adalah AI asisten wisata. Berikut adalah kumpulan ulasan pengunjung tentang sebuah {$type} wisata: - [5/5] Pemandangan luar biasa, air... - [4/5] Akses jalan agak sulit tapi... - [3/5] Fasilitas perlu ditingkatkan... ... (hingga 30 ulasan) Buatkan ringkasan singkat (3-4 kalimat) dalam Bahasa Indonesia: 1. Poin-poin positif yang sering disebut 2. Kekurangan yang perlu diperhatikan 3. Kesimpulan: direkomendasikan? Tulis langsung ringkasannya tanpa intro seperti "Berikut ringkasannya:" // Config: // max_tokens: 512 // type: destination | hotel // Input: rating + body per review
Best Time to Visit AI
Saran waktu terbaik berbasis konteks lokasi
Mengirimkan nama destinasi, lokasi, dan kategori ke Claude untuk mendapatkan saran waktu terbaik berkunjung dalam 2-3 kalimat. Di-cache 7 hari menggunakan MD5 dari nama destinasi sebagai key.
Cache Strategy
ai.best_time.{md5(name)}
Contoh output:
"Waktu terbaik mengunjungi Pantai Pink Komodo adalah bulan April hingga Oktober, saat musim kering dengan kondisi laut yang tenang dan visibilitas snorkeling yang optimal. Hindari Desember–Februari karena gelombang tinggi dan curah hujan intens di wilayah Flores."
// Cache::remember 7 hari per destinasi Kamu adalah pakar wisata NTT (Nusa Tenggara Timur), Indonesia. Berikan rekomendasi waktu terbaik untuk mengunjungi: - Nama: {$destinationName} - Lokasi: {$location} - Kategori: {$category} Jawab dalam 2-3 kalimat Bahasa Indonesia yang informatif dan praktis. Sebutkan: ✓ Bulan terbaik ✓ Alasan (cuaca, musim, kondisi alam) Jangan gunakan intro seperti "Tentu saja" atau "Berikut adalah". // Config: // max_tokens: 256 // Cache: md5(name) → 604800s
Personal Recommendations
AI belajar dari riwayat user → saran destinasi
Menganalisis riwayat booking hotel & wishlist user, lalu merekomendasikan 3 destinasi yang paling relevan dari database. Claude mengembalikan JSON array berisi ID + alasan singkat.
Kumpulkan riwayat
Hotel bookings + Wishlist user (max 10)
Format sebagai teks
- NamaItem (Type, kategori: X)
Kirim ke Claude
Riwayat + daftar 30 destinasi aktif
Parse JSON response
[{id, reason}, ...] → query DB
Kamu adalah AI rekomendasi wisata NTT. Berdasarkan riwayat perjalanan user: - Komodo Resort (Hotel, Akomodasi) - Pantai Pink (Destination, Beach) - Kelimutu (Destination, Mountain) ... (dari DB: hotel_bookings + wishlists) Dari daftar destinasi yang tersedia: - ID:12 | Pantai Nihiwatu | Beach | Sumba - ID:7 | Bukit Wairinding | Mountain | Sumba - ID:23 | Desa Ratenggaro | Culture | Sumba ... (30 destinasi aktif, sort by rating) Rekomendasikan 3 destinasi yang paling cocok untuk user ini. Format jawaban (HANYA JSON array, tanpa penjelasan lain): [ {"id": 12, "reason": "Cocok karena suka pantai"}, {"id": 7, "reason": "Suka alam & trekking"}, {"id": 23, "reason": "Pernah ke area Sumba"} ] // Config: // max_tokens: 512 // No cache (personalized per user) // Requires auth middleware
Arsitektur Teknologi
Claude AI
Anthropic
Laravel 11
PHP Framework
Livewire 3
Reactive UI
Tailwind CSS
Styling
Alpine.js
Interactivity
MySQL
Database