Przejdź do treści

Wprowadzenie do naszego silnika horoskopowego

Nasz silnik horoskopowy to deterministyczny system astrologiczny przeznaczony dla rzeczywistych produktów, a nie generowania tekstów w celach rozrywkowych. Łączy on obliczenia oparte na Swiss Ephemeris, rygorystyczne aktywowanie czynników oraz renderowanie redakcyjne, dzięki czemu Twoja aplikacja otrzymuje stabilny, zrozumiały i wysokiej jakości raport.

Rdzeń silnika Determinizm Tryby działania Język

Na czym pracujecie

Podczas działania, silnik oblicza rzeczywiste stan nieba i tworzy znaczenie na podstawie aktywowanych czynników astrologicznych. Dla identycznych danych wejściowych, wyniki pozostają stabilne bit po bicie. Gdy podawane są dane personalizacyjne, aktywują się wektory na poziomie domu i kontekstu urodzenia, co pozwala na uzyskanie różnic specyficznych dla użytkownika.

To daje Twojemu zespołowi:- Przewidywalne wyniki dla testowania, kontroli jakości i buforowania – identyczne zapytania zawsze zwracają ten sam JSON. - Wyjaśniona składnia raportów dzięki śladom factor_details w każdej sekcji. - Czysta ścieżka od prostych raportów do spersonalizowanych, premium raportów. - Zorientowana na okres głębokość – dziennie (5-6 czynników), tygodniowo (10), miesięcznie (11) i rocznie (13) zestawy czynników z wyraźnymi wagami.

Architektura w Skrócie

Pełna architektura silnika

Pełna architektura silnika horoskopu

Architektura żądanie-odpowiedź

Architektura żądania-odpowiedzi horoskopu

Deterministyczna Pipeline1. Brama weryfikuje uwierzytelnianie, limity i politykę żądania.

  1. Walidacja kontraktu żądania wymusza zaakceptowany schemat i opcje.
  2. Silnik określa źródło sygnału, okno czasu oraz konfigurację ephemeris.
  3. Swiss Ephemeris oblicza pozycje, aspekty i domy (w miarę możliwości).
  4. Warstwa agregacji pobiera dane z okresu, wyodrębnia zdarzenia (aspekty, wejścia, stacje, lunacje, zaćmienia) oraz klasyfikuje je.
  5. Silnik interpretacyjny mapuje specyfikację czynników na treść redakcyjną, wykorzystując ustaloną kolejność, wyraźne wagi i stabilny wybór wariantu haszowania.
  6. Silnik redakcyjny generuje narracje sekcji z pakietów treści V2, uwzględniając specyficzne dla okresu kompozycje (otwarcie → przesunięcie → rezultat).
  7. Brama zwraca payload silnika oraz opakowania firmowe (_enterprise, _api_metadata_) do metadanych integracji.

Gwarancje determinizmu

Determinizm nie jest przypadkiem – jest on wymuszany na każdym poziomie:| Gwarancja | Mechanizm egzekwowania | |---|---| | Ten sam payload → te same czynniki | Wyraźne ustalanie kolejności czynników w okresie + stałe wagi | | Te same czynniki → te same warianty treści | Selekcja stabilnego indeksu hasha SHA-256 | | Te same warianty → ta sama fraza | Deterministyczne cyklowanie fraz z pakietów V2 | | Ta sama fraza → identyczny JSON | Spójność edytorskie rewizje + deduplikacja linii oddzielających sekcje |

Oznacza to, że można hasować dwie niezależne żądania z tym samym ciałem i uzyskać tę samą odpowiedź, co umożliwia niezawodne buforowanie, testy regresji QA oraz powtarzalną debugowanie.

Raporty publiczne vs. spersonalizowane

Oba tryby są poprawne w środowisku produkcyjnym. Różnica nie dotyczy jakości; dotyczy głębi aktywacji.

Tryb publiczny (oparty na znaku zodiaku)

Podaj tylko znak zodiaku i datę. Silnik generuje stabilną, współdzieloną interpretację dla wszystkich użytkowników z tym samym znakiem w danym okresie.

  • Świetne rozwiązanie do szerokiego kanału odbiorców oraz efektywnego buforowania (12 znaków × 4 okresy × 365 dni = ~17 520 unikalnych dziennych buforów)
  • Brak obliczeń domów — przypisanie rising_sign, house_cusps i ciała house odbywa się za pomocą null
  • Doskonale sprawdza się w szybkim wdrażaniu, horoskopach w stylu magazynu oraz w wersjach freemium.### Tryb Personalizowany (Uwzględniający Datę Urodzenia)

Podaj kontekst urodzinowy (birth_time, współrzędne, strefa czasowa), aby aktywować bardziej szczegółowe wektory. Dwóch użytkowników z tym samym znakiem astrologicznym może otrzymywać różne artykuły, ponieważ położenie domu i znak ascendantu wpływają na ocenę czynników.

  • Wymagane pola: birth_time (HH:MM) + birth_latitude + birth_longitude
  • Umożliwia: znak ascendanta, 12 punktów domowych, przypisanie planet do domów oraz czynniki skupiające się na domach (daily_house_focus, weekly_house_focus, monthly_house_focus, yearly_house_focus)
  • Najlepsze dla subskrypcji premium i wysokiej retencji użytkowników
  • Obsługuje bogatsze moduły aplikacji i kanały personalizacji

Model Artykułów Oparty na Czynnikach

Silnik działa w oparciu o zestawy czynników – deterministyczne interpretacyjne mechanizmy obliczane z danych astronomicznych i agregacji okresów. Każdy okres ma zdefiniowaną kolejność czynników oraz określone wagi.

Zestawy Czynników dla Okresu| Okres | Liczba Czynników | Kluczowe Czynniki |

|---|---|---| | Dzienny | 5-6 | sun_in_sign, moon_in_sign, transits_archetypes, aspects, daily_house_focus | | Tygodniowy | 10 | weekly_moon_phase, planetary_focus, retrograde_archetypes, weekly_theme_archetypes, weekly_house_focus | | Miesięczny | 11 | monthly_lunation_archetypes, eclipse_archetypes, outer_planet_focus, monthly_theme_archetypes, monthly_house_focus | | Roczny | 13 | jupiter_in_sign, saturn_in_sign, nodal_axis, yearly_house_focus, yearly_theme_archetypes |

Dodatkowe rodziny raportów: - Planeta: planet_core_archetypes, planet_condition_archetypes, planet_house_focus, planet_sign_archetypes - Data urodzenia: solar_return_tone, birthday_year_reset, natal_sun_house_year_theme - Aspekt: Stacks oparte na aspekcie z obliczanymi lub nadpisywanymi dominującymi aspektami - Transit: Stacks oparte na transitach z obliczonymi lub nadpisywanymi dominującymi archetypami transitów

Każdy czynnik posiada przypisaną wagę (np. moon_in_sign: 1.15 (dziennie), yearly_theme_archetypes: 1.30 (rocznie)), która wpływa na ocenę sekcji i wyznaczanie intensywności.

Ten model zapobiega przypadkowym zmianom w tekście i utrzymuje ton redakcyjny związany z obliczanymi czynnikami, przy pełnej śledzalności w factor_details.

Codzienne statystyki aplikacji (Główny horoskop)

Dla trybu codziennych statystyk, silnik zwraca bogate bloki statystyczne gotowe do użycia w aplikacji w punkcie data.daily_personalized_stats. Są one idealne dla kart i widgetów podsumowujących.Daily Stats Activation

Aktywacja: period=daily oraz spersonalizowany żądanie urodzeniowe obejmuje zarówno birth_time, jak i coordinates.

Kluczowe bloki:

  • overall_pulse — skomponowana dzienna ocena energii
  • archetype_scores — osiemwymiarowa analiza (wisdom, creativity, confidence, intuition, allure, romance, career, emotions)
  • harmony_discord — cztery najbardziej harmonijne i cztery najbardziej dysharmonijne znaki
  • elemental_balance — podział na elementy: ogień, ziemia, powietrze, woda
  • momentum_channels — sygnały związane z ruchem planet

Kontrola gęstości danych:

  • daily_stats_detail: "full" dla pełnych danych wykresu z poziomami pewności dla każdego bloku
  • daily_stats_detail: "compact" dla lżejszych payloadów klienta (idealne dla widgetów mobilnych)

Kluczowe aspekty projektu żądania

Silnik obsługuje jasne, typowane kontrolki do konfiguracji i zachowania astrologicznego. Typowe opcje obejmują:``markdown | Pole | Typ | Cel | |---|---|---| |period| string |daily,weekly,monthly,yearly| |sections| array | Obszary życia do uwzględnienia (np.general,career,love_singles) | |sign/birth| string / obiekt | Źródło znaku (publiczne vs. spersonalizowane) | |target_date| string | Wyraźny znacznik daty (YYYY-MM-DD) dla zapewnienia powtarzalności | |zodiac_system| string |tropicallubsidereal| |ayanamsa| string | System przesunięcia sidereal (lahiri,fagan_bradleyitd.) | |house_system| string |placidus,whole_sign,equal,koch| |node_type| string | (rzeczywisty) węzeł księżycatruelub średni węzeł księżycamean| |tenant_id` | string | Izolacja przestrzeni nazw pamięci podręcznej dla scenariuszy wieloosobowych lub A/B |

Gwarancje kształtu odpowiedzi w bramie (Gateway)

Odpowiedzi raportowe z bramy przechodzą przez dane silnika i dodają obwolutry:

  • _enterprise — informacje o planie, limitach i ograniczeniach
  • _api_metadata_ — informacje o endpointach, obsługiwanych językach i kontekście żądania

Dla endpointów raportowych zasilanych przez silnik, _api_metadata_.supported_languages jest tylko w języku angielskim:

{
  "_api_metadata_": {
    "supported_languages": ["en"]
  }
}

Polityka językowa i tłumaczeniowa

``Aktualne punkty końcowe raportów oparte na silniku obsługują tylkolang=en. Jest to celowe działanie, mające na celu zachowanie deterministycznych niuansów redakcyjnych w środowisku produkcyjnym, podczas gdy niezawodność tłumaczeń jest zarządzana oddzielnie. Warstwa pomocnicza tłumaczenia bramy (lang=en|es|de|fr|pt`) dostarcza przetłumaczone wyniki na granicy API dla wszystkich punktów końcowych raportów, które nie dotyczą horoskopu.

Potok treści: V2 zestawy treści

Treść redakcyjna pochodzi ze strukturalnych zestawów treści V2 w repozytorium treści silnika.

Podczas działania, repozytorium treści deterministycznie wybiera warianty za pomocą stabilnego wyboru hash'a z łańcuchem awaryjnym czterostopniowym:

  1. Dokładne dopasowanie (typ_czynnika + wartość_czynnika + intensywność)
  2. Wartość dla typu_czynnika (typ_czynnika + intensywność)
  3. Wartość dowolnego czynnika w sekcji (sekcja + intensywność)
  4. Szablon awaryjny dla sekcji

Ta struktura zapewnia różnorodność redakcyjną w zależności od intensywności, przy jednoczesnym zachowaniu możliwości reprodukcji dla tej samej wartości początkowej.

Model zaufania: Zamknięty rdzeń + Lekki Open Source

Naszy główny silnik produkcyjny jest oprogramowaniem zamkniętym i zoptymalizowany pod kątem niezawodności, głębokości i zarządzanych operacji dla przedsiębiorstw. Zawiera:- Pełne raporty uwzględniające wszystkie aspekty (wszystkie okresy) - Raporty cyklu urodzinowego z uwzględnieniem czynników solar return - Komplety raportów: planeta, aspekt, przejście, dom i relacja planety z domem - Narodowy wykres urodzeniowy z konfigurowalnym renderowaniem koła SVG - Cache Redis, metryki, sprawdzanie stanu oraz skalowanie poziome

Aby wesprzeć niezależnych astrologów i przeprowadzić ocenę, oferujemy również lekki silnik open-source:

Użyj OpAstro, aby ocenić jakość silnika, zbadać logikę obliczania czynników i zweryfikować integrację z Swiss Ephemeris. Skaluj do tras przedsiębiorstwa NumerologyAPI, aby uzyskać bogatsze warstwy raportów, szerszy zakres endpointów oraz zarządzane operacje produkcyjne.

Ścieżka Integracji1. Zacznij od raportów na poziomie publicznym – codzienne/tygodniowe/miesięczne/roczne, używając tylko sign. Dane urodzinowe nie są wymagane. Efektywne buforowanie.

  1. Dodaj spersonalizowane pola urodzeniowe – podaj birth_time + współrzędne, aby uzyskać zindywidualizowane artykuły uwzględniające aspekty domowe.
  2. Dodaj rodziny raportów o specjalnym przeznaczeniu – planetarne, aspekty, przejścia i punkty domu dla głębszych możliwości produktu.
  3. Dodaj punkty domu – pełny JSON wykresu urodzeniowego + koło SVG do wizualizacji i zaawansowanych przepływów pracy astrologicznych.
  4. Optymalizuj z wykorzystaniem sekcji – żądaj tylko sections, której potrzebuje Twój interfejs użytkownika (np. ["general", "career"]), aby zmniejszyć rozmiar przesyłanych danych.
  5. Użyj tenant_id do izolacji buforowania – oddzielone poziomy darmowe/premium lub warianty A/B testów bez zanieczyszczenia bufora.

Strategia Buforowania

Tryb Efektywność buforowania Strategia
Publiczny (tylko znaki) Wysoka – ~17 520 unikalnych buforów dziennie Rozgrzej następny dzień; TTL 1-4 godziny
Spersonalizowany (uwzględniający urodziny) Niższa – dla każdego użytkownika Klucze bufora dla każdego użytkownika; TTL 24 godziny; zalecany Redis

Kolejne czytanie- Przegląd API Raportów Horoskopowych