Methodology
How AstroPal works
AstroPal does two things differently from every other Vedic-astrology app on the market. First, the chart computation is validated against Goravani Jyotish Studio — the professional reference software trusted by Vedic astrologers for thirty years. Second, every interpretive sentence the AI gives you is either a computed engine fact or a retrieved citation from a classical text — never an invented prediction.
The honesty principle
Most astrology apps wrap a large-language-model behind a friendly UI and let it generate "predictions" out of thin air. The model has no idea what your chart actually says. It is statistically autocompleting astrology-flavoured text it has read on the internet.
AstroPal works in the opposite direction. Two sources of truth feed every answer:
- Engine-computed facts — your Shadbala values, planetary positions, current Vimshottari dasha period, Ashtakavarga points, varga placements. These are mathematical, derivable from your birth data, and never debated.
- Classical-text citations — short retrieved excerpts from sixteen indexed Jyotish texts (BPHS, Saravali, Phala Dipika, Jataka Parijata, and others). When you ask a question, the system searches roughly 35,000 indexed passages and pulls the ones that apply to your computed configuration.
When neither source produces a confident answer, the response says so plainly — “No direct classical citation retrieved for this point.” No invented quotes. No fabricated remedies. No vague filler.
The chart-computation stack
AstroPal’s engine produces what professional Jyotishis call a full computational chart — not a simplified consumer chart. Every output below is computed live from your exact birth time, date, and place, using the Swiss Ephemeris (the same astronomical library used by Goravani Jyotish Studio and most professional Vedic software):
- Planetary positions — the nine Vedic grahas (Sun through Ketu) in sidereal longitude. Default ayanamsa: Lahiri. Alternative ayanamsas selectable: Raman, Krishnamurti, Yukteshwar, Fagan-Bradley.
- Houses (bhavas) — Whole-Sign houses (Parashari), the system used in the foundational Vedic texts.
- Divisional charts (vargas) — fourteen divisions computed: D1 (Rashi), D2 (Hora), D3 (Drekkana), D4 (Chaturthamsha), D7 (Saptamamsha), D9 (Navamsha), D10 (Dashamsha), D12 (Dwadashamsha), D16 (Shodashamsha), D20 (Vimshamsha), D24 (Chaturvimshamsha), D27 (Bhamsha), D30 (Trimshamsha), D60 (Shastiamsha).
- Shadbala — the six-fold strength of each planet (Sthana, Dig, Kala, Chesta, Naisargika, Drik), in rupas.
- Bhavabala — the strength of each of the twelve houses.
- Ashtakavarga — Sarvashtakavarga grid plus individual planetary Bhinnashtakavarga.
- Vimshottari dasha — the full 120-year period sequence: Mahadasha, Antardasha, and Pratyantardasha levels.
- Transits (Gochara) — real-time planetary positions overlaid on your natal chart, including Sade Sati flagging.
- Yogas — auto-detection of seventeen classical yogas (Gajakesari, Raja, Dhana, Mahapurusha varieties, Vipareeta Raja, Neechabhanga, Kala Sarpa, and others). Each detected yoga is paired with its classical-text citation, not a generic description.
- Avastas, Karakas, Upagrahas, Arudha Padas — secondary points computed for advanced analysis.
Goravani-grade validation
Goravani Jyotish Studio, written by Das Goravani over the last thirty years, is the de-facto reference for professional Vedic chart computation. AstroPal’s engine is regression-tested against Goravani output for every release. The validation harness lives at y_validation.py in the repo, and runs sixty-seven distinct field-by-field checks against a canonical reference chart (New Delhi birth, Lahiri ayanamsa).
- Planetary positions — match Goravani to within 0–1 arc-minute across all nine planets and the Ascendant.
- All fourteen vargas — 100% match across multiple reference charts.
- Vimshottari dasha — 100% match where reference data is available.
- Ashtakavarga prastar tables — 95.8% match (276 of 288 cells), with the remaining twelve traced to known Goravani-side calculation quirks documented in our deviation log.
- Y-validation suite — 67 of 67 chart-section checks pass against the R. Sivadas reference chart for the current production engine.
Where Goravani and AstroPal diverge on a specific value, we publish the classical reference we followed and the reasoning — never silently override.
The classical-text RAG layer
Sixteen classical Jyotish texts — see the full list at /sources — are OCR-processed, cleaned, chunked, and indexed into roughly thirty-five thousand searchable passages. Each passage carries: a human-readable citation (e.g. "Saravali 38:14"), a stable document identifier, the page number from the source edition, and an OCR-confidence score.
When you ask a question, the system does the following in parallel:
- Hybrid retrieval — semantic search (FAISS) plus full-text search (SQLite FTS5) over all 35,000 passages, scored by a cross-encoder reranker.
- Mnemonic Graph routing — your computed chart facts (current dasha, strongest planets, key yogas, relevant houses) are matched to passage candidates so the retrieval is grounded in your chart, not a generic question.
- Compression + grounding — top passages are summarised by a fast LLM, preserving citations, then handed to the answer model along with your chart payload.
- Citation render — every Smart Response Card you see lists the texts that backed it. Click into a citation and you see the actual retrieved excerpt and its source.
What we deliberately do not do
- No invented predictions. If the texts and your chart configuration don’t support a definitive answer, the response says so.
- No fabricated remedies. Remedies (mantras, gemstones, charity, fasting) are sourced from classical texts when present, and clearly labelled as classical practice rather than guaranteed outcomes.
- No Western-astrology mixing. AstroPal is strictly sidereal Vedic Jyotish. We do not blend tropical Western astrology techniques into Vedic readings.
- No “lucky colour” filler. Generic horoscope content gets in the way of real interpretation; we keep it out.
- No silent fallbacks to generic LLM output. The grounding guardrails reject answers that aren’t backed by either an engine fact or a retrieved citation.
Learn more
The full list of indexed classical texts (with authors and editions) is at /sources. For background on the project, see /about. For common questions about how interpretations work, see /faq.
Last updated: 27 May 2026