title: Introducing Our Horoscope Engine | Deterministic Swiss Ephemeris Reports description: Temui mesin horoskop NumerologyAPI: astrologi Swiss Ephemeris yang deterministik, mode laporan publik dan pribadi, keluarga endpoint berbasis periode, arsitektur, dan panduan integrasi produksi.
Memperkenalkan Mesin Horoskop Kami¶
Mesin horoskop kami adalah runtime astrologi deterministik yang dirancang untuk produk produksi nyata, bukan pembuatan teks hiburan. Ini menggabungkan perhitungan Swiss Ephemeris, aktivasi faktor yang ketat, dan rendering editorial sehingga aplikasi Anda menerima output laporan yang stabil, dapat dijelaskan, dan berkualitas tinggi.
Apa yang Anda Bangun¶
Pada saat runtime, mesin menghitung kondisi langit yang sebenarnya dan menyusun makna dari faktor astrologi yang diaktifkan. Untuk payload yang identik, output tetap stabil byte demi byte. Ketika input personalisasi diberikan, vektor tingkat rumah dan konteks kelahiran diaktifkan untuk menghasilkan perbedaan khusus pengguna.
Ini memberi tim Anda:
- Hasil yang dapat diprediksi untuk pengujian, QA, dan caching — permintaan yang sama selalu menghasilkan JSON yang identik.
- Komposisi laporan yang mudah dijelaskan melalui jejak
factor_detailsdi setiap bagian. - Jalur yang bersih dari laporan tanda tangan ringan hingga laporan personalisasi premium.
- Kedalaman yang sadar akan periode — tumpukan faktor harian (5-6 faktor), mingguan (10), bulanan (11), dan tahunan (13) dengan bobot eksplisit.
Gambaran Umum Arsitektur¶
Arsitektur Mesin Lengkap¶

Arsitektur Permintaan-ke-Respons¶

Pipeline Deterministik¶
- Gerbang memvalidasi autentikasi, batasan penggunaan, dan kebijakan permintaan.
- Validasi kontrak permintaan menegakkan skema dan opsi yang diterima.
- Mesin menyelesaikan sumber tanda, jendela periode, dan konfigurasi ephemeris.
- Swiss Ephemeris menghitung posisi, aspek, dan rumah (ketika memenuhi syarat).
- Lapisan agregasi mengambil sampel periode, mengekstrak peristiwa (aspek, ingress, stasiun, lunasi, gerhana), dan memberi peringkat driver.
- Mesin interpretasi memetakan spesifikasi faktor ke konten editorial menggunakan urutan tetap, bobot eksplisit, dan pemilihan varian hash yang stabil.
- Mesin editorial menghasilkan narasi bagian dari paket konten V2 dengan komposisi arc khusus periode (membuka → pergeseran → hasil).
- Gerbang mengembalikan payload mesin ditambah pembungkus perusahaan (
_enterprise,_api_metadata_) untuk metadata integrasi.
Jaminan Determinisme¶
Determinisme bukanlah kebetulan — ia ditegakkan di setiap lapisan:
| Jaminan | Mekanisme Penegakan |
|---|---|
| Payload yang sama → faktor yang sama | Urutan faktor eksplisit per periode + bobot tetap |
| Faktor yang sama → variasi konten yang sama | Pemilihan indeks hash SHA-256 yang stabil |
| Variasi yang sama → frasa yang sama | Siklus frasa deterministik dari paket konten V2 |
| Frasa yang sama → JSON yang identik | Konsistensi penulisan editorial + deduplikasi baris terpisah |
Ini berarti Anda dapat membuat hash dua permintaan independen dengan badan yang sama dan mendapatkan hasil yang sama, memungkinkan caching yang andal, pengujian regresi QA, dan debugging yang dapat direproduksi.
Laporan Publik vs Personalisasi¶
Kedua mode ini valid untuk produksi. Perbedaannya bukan kualitas; melainkan tingkat aktivasi.
Mode Publik (Berdasarkan Zodiak)¶
Hanya berikan zodiak dan tanggal. Mesin menghasilkan pembacaan yang stabil dan bersama untuk semua pengguna dengan zodiak tersebut pada periode tersebut.
- Sangat baik untuk umpan audiens luas dan caching yang hemat biaya (12 zodiak × 4 periode × 365 hari = ~17.520 cache unik harian)
- Tidak ada perhitungan rumah — penugasan
rising_sign,house_cusps, dan tubuhhouseadalahnull - Cocok untuk peluncuran cepat, horoskop bergaya majalah, dan tingkatan freemium
Mode Personalisasi (Berdasarkan Tanggal Lahir)¶
Berikan konteks kelahiran (birth_time, koordinat, zona waktu) untuk mengaktifkan vektor yang lebih mendalam. Dua pengguna dengan zodi yang sama dapat menerima editorial yang berbeda karena posisi rumah dan tanda zodi mengubah bobot faktor.
- Bidang wajib:
birth_time(HH:MM) +birth_latitude+birth_longitude - Membuka: tanda zodi, titik cusp rumah ke-12, penugasan planet ke rumah, dan faktor fokus rumah (
daily_house_focus,weekly_house_focus,monthly_house_focus,yearly_house_focus) - Terbaik untuk langganan premium dan pengalaman retensi yang tinggi
- Mendukung modul aplikasi yang lebih kaya dan saluran personalisasi
Model Editorial Berbasis Faktor¶
Mesin didorong oleh tumpukan faktor eksplisit — pendorong interpretasi deterministik yang dihitung dari snapshot langit dan agregasi periode. Setiap periode memiliki urutan faktor dan bobot yang ditentukan.
Tumpukan Faktor per Periode¶
| Periode | Jumlah Faktor | Faktor Utama |
|---|---|---|
| Harian | 5-6 | sun_in_sign, moon_in_sign, transits_archetypes, aspects, daily_house_focus |
| Mingguan | 10 | weekly_moon_phase, planetary_focus, retrograde_archetypes, weekly_theme_archetypes, weekly_house_focus |
| Bulanan | 11 | monthly_lunation_archetypes, eclipse_archetypes, outer_planet_focus, monthly_theme_archetypes, monthly_house_focus |
| Tahunan | 13 | jupiter_in_sign, saturn_in_sign, nodal_axis, yearly_house_focus, yearly_theme_archetypes |
Lapisan faktor tambahan: - Planet: planet_core_archetypes, planet_condition_archetypes, planet_house_focus, planet_sign_archetypes - Tanggal Lahir: solar_return_tone, birthday_year_reset, natal_sun_house_year_theme - Aspek: Stack yang dipimpin oleh aspek dengan aspek dominan yang dihitung atau ditimpa - Transit: Stack yang dipimpin oleh transit dengan arketipe transit dominan yang dihitung atau ditimpa
Setiap faktor memiliki bobot eksplisit (misalnya, moon_in_sign: 1.15 harian, yearly_theme_archetypes: 1.30 tahunan) yang memengaruhi penilaian bagian dan derivasi intensitas.
Model ini menghindari pergeseran prosa acak dan menjaga nada editorial terkait dengan faktor-faktor yang dihitung dengan jejak lengkap dalam factor_details.
Statistik Aplikasi Pribadi Harian (Horoskop Utama)¶
Untuk mode pribadi harian, mesin mengembalikan blok statistik aplikasi yang kaya pada data.daily_personalized_stats. Ini ideal untuk kartu dasbor dan widget ringkasan.
Pemicu aktivasi: period=daily dan permintaan kelahiran yang dipersonalisasi mencakup kedua birth_time dan coordinates.
Blok-blok penting:
overall_pulse— skor vitalitas harian gabunganarchetype_scores— analisis delapan dimensi (wisdom,creativity,confidence,intuition,allure,romance,career,emotions)harmony_discord— 4 tanda yang paling harmonis dan 4 tanda yang paling tidak harmonis sebagai penggerak utamaelemental_balance— distribusi api/bumi/udara/airmomentum_channels— sinyal momentum planet
Kontrol kepadatan payload:
daily_stats_detail: "full"untuk data grafik lengkap dengan tingkatan kepercayaan per blokdaily_stats_detail: "compact"untuk payload klien yang lebih ringan (ideal untuk widget seluler)
Sorotan Desain Permintaan¶
The engine supports clear, typed controls for astrological configuration and rendering behavior. Opsi umum meliputi:
| Bidang | Tipe | Tujuan |
|---|---|---|
period | string | daily, weekly, monthly, yearly |
sections | array | Area kehidupan yang akan disertakan (misalnya, general, career, love_singles) |
sign / birth | string / objek | Sumber tanda (publik vs. personalisasi) |
target_date | string | Tautan tanggal eksplisit (YYYY-MM-DD) untuk reproduktibilitas |
zodiac_system | string | tropical atau sidereal |
ayanamsa | string | Sistem offset sideral (lahiri, fagan_bradley, dll.) |
house_system | string | placidus, whole_sign, equal, koch |
node_type | string | Node bulan aktual (true) atau rata-rata (mean) |
tenant_id | string | Isolasi namespace cache untuk skenario multi-tenant atau A/B |
Jaminan Bentuk Respons di Gateway¶
Respons laporan gateway melewati data mesin dan menambahkan wrapper:
_enterprise— metadata tingkat rencana, kuota, dan batas tarif_api_metadata_— informasi endpoint, bahasa yang didukung, dan konteks permintaan
Untuk endpoint laporan berbasis mesin, _api_metadata_.supported_languages hanya dalam Bahasa Inggris:
Kebijakan Bahasa dan Penerjemahan¶
Fitur endpoint laporan yang didukung oleh mesin saat ini hanya mendukung lang=en. This is intentional to preserve deterministic editorial nuance in production while translation reliability is curated separately. The gateway translation helper layer (lang=en|es|de|fr|pt) provides translated output at the API boundary for all non-horoscope report endpoints.
Alur Konten: Paket Konten V2¶
Konten editorial diambil dari paket konten terstruktur V2 di repositori konten mesin. At waktu eksekusi, repositori konten memilih varian secara deterministik melalui pemilihan hash yang stabil dengan rantai fallback empat tingkat:
- Pencocokan persis (tipe faktor + nilai faktor + intensitas)
- Setiap nilai untuk
factor_type(ditambah denganintensity) - Setiap faktor dalam bagian (bagian + intensitas)
- Templat cadangan bagian
This structure ensures editorial variety across intensities while preserving reproducibility for the same seed.
Model Kepercayaan: Inti Tertutup + Sumber Terbuka Ringan¶
Our main production engine is closed-source and optimized for enterprise reliability, depth, and managed operations. It includes:
- Laporan personalisasi lengkap yang mempertimbangkan semua periode
- Laporan siklus kelahiran dengan faktor solar return
- Kumpulan laporan planet, aspek, transit, rumah, dan hubungan planet-rumah
- Bagan kelahiran dengan rendering roda SVG yang dapat dikonfigurasi
- Penyimpanan Redis, metrik, pemeriksaan kesehatan, dan penskalaan horizontal
Untuk mendukung astrolog independen dan evaluasi pengembang, kami juga menyediakan mesin sumber terbuka ringan:
Gunakan OpAstro untuk mengevaluasi kualitas mesin, menjelajahi logika perhitungan faktor, dan memverifikasi integrasi Swiss Ephemeris. Skalakan ke rute NumerologyAPI untuk lapisan laporan yang lebih kaya, cakupan titik akhir yang lebih luas, dan operasi produksi yang dikelola.
Jalur Integrasi¶
- Mulai dengan laporan tingkat publik — harian/mingguan/bulanan/tahunan menggunakan hanya
sign. Data kelahiran tidak diperlukan. Optimalkan cache. - Tambahkan bidang kelahiran yang dipersonalisasi — sediakan
birth_time+ koordinat untuk membuka editorial yang berbeda dengan mempertimbangkan faktor rumah. - Lapisan keluarga laporan khusus — titik akhir planet, aspek, transit, dan rumah untuk permukaan produk yang lebih dalam.
- Tambahkan titik akhir kelahiran — JSON bagan kelahiran lengkap + roda SVG untuk visualisasi dan alur kerja astrologi tingkat lanjut.
- Optimalkan dengan bagian — minta hanya
sectionsyang dibutuhkan UI Anda (misalnya,["general", "career"]) untuk mengurangi ukuran payload. - Gunakan
tenant_iduntuk isolasi cache — pisahkan tingkatan gratis/premium atau varian A/B tanpa polusi cache.
Strategi Penyimpanan Cache¶
| Mode | Efisiensi Penyimpanan Cache | Strategi |
|---|---|---|
| Publik (hanya tanda) | Tinggi — ~17.520 cache unik harian | Panaskan hari berikutnya; TTL 1-4 jam |
| Dipersonalisasi (sadar kelahiran) | Lebih rendah — per pengguna | Kunci cache per pengguna; TTL 24 jam; Redis direkomendasikan |