Trois éléments clés
intégrés dans
mon site

☁ Score météo · 🌌 Estimateur OVATION · 🔭 LLM + RAG
Orbitalis Club Astro 2025

⌨  Navigation : Espace / Flèches / Boutons

Une question, trois réponses

01

Score météo

Le ciel est-il bon pour observer ce soir ? Un indice 0–100 calculé à partir des données météo.

Durée : ~ 4 min
02
🌌

Estimateur OVATION

Les aurores boréales seront-elles visibles ? Une probabilité contextuelle 0–100 %.

Durée : ~ 4 min
03
🔭

LLM + RAG

Comment décrire automatiquement 13 000 objets du ciel ? Une pipeline IA ancrée dans les données.

Durée : ~ 6 min
01 — Score Météo

La question de base

« Il y a 40 % de nuages sur Météo France…
Je sors avec le télescope ? »

📱

Consultation manuelle

3–5 sources, 20 min, décision incertaine

VS

Score 0–100

Réponse immédiate, calibrée, cohérente

Le score d'observation

75
/ 100
▲ Bon
☁ Nuages
39.6
👁 Visibilité
22.0
💧 Humidité
7.8
🌙 Lune
10.0
0–44 ✕ Mauvais 45–64 ◆ Moyen 65–81 ▲ Bon 82+ ✦ Excellent

Facteur Nuages

55 %

du score total

contribution = (100 − C) × 0.55

C = couverture nuageuse en %. Fournie par l'API météo.
0 = ciel dégagé · 100 = totalement couvert.

⊿  Chaque +1 % de nuages soustrait −0.55 pt au score.

C = 0 % → +55 pts

C = 40 % → +33 pts

C = 100 % → 0 pt

Visibilité · Humidité

22 %

Visibilité

vis_pct = min(5 × V, 100)
contribution = vis_pct × 0.22

V en km. Normalisé à 20 km = 100 %.
Capte turbulence, aérosols, brume.

V = 10 km → vis_pct = 50 % → +11 pts
13 %

Humidité

contribution = (100 − H) × 0.13

H = humidité relative en %. Favorise la rosée sur l'optique et la turbulence atmosphérique.

H = 80 % → +2.6 pts

Facteur Lune

10 %
🌙
contribution = (1 − 0.6 × I) × 10

I = illumination lunaire de 0 (nouvelle lune) à 1 (pleine lune).
α = 0.6 : même la pleine lune s'atténue partiellement.

🌑

I = 0 → +10 pts

🌕

I = 1 → +4 pts

Effet physique : pleine lune ≈ magnitude −12.7 → fond de ciel ≈ +1.5 mag plus lumineux.

La formule additive

S  =  (100 − C) × 0.55  +  min(5V, 100) × 0.22  +  (100 − H) × 0.13  +  (1 − 0.6·I) × 10
Nuages 55 % poids dominant
Visibilité 22 % normalisée 20 km
Humidité 13 % humidité relative
Lune 10 % illumination α=0.6

Appuyez sur Espace pour révéler chaque terme.

Exemple numérique

C = 20 % V = 12 km H = 60 % I = 0 (nouvelle lune)
1 ☁ Nuages (100−20)×0.55 = 80×0.55 = 44.0
2 👁 Visibilité min(5×12,100)×0.22 = 60×0.22 = 13.2
3 💧 Humidité (100−60)×0.13 = 40×0.13 = 5.2
4 🌑 Lune (1−0.6×0)×10 = 1×10 = 10.0
Score total 44.0 + 13.2 + 5.2 + 10.0 =  72.4  ▲ Bon

Calculateur météo

0 %
100 %
0 km
40 km
0 %
100 %
🌑 0
1 🌕
👁
💧
🌙

Calibration des poids

Les poids 55/22/13/10 sont-ils optimaux ?

📊

Données historiques

Soirs d'observation réels + météo associée

⚙️

Régression logistique

y = "ai-je observé ce soir ?"

🔒

Contrainte monotone

Plus de nuages = toujours moins bon

Poids calibrés

Optimaux pour le profil d'usage

Les poids sont appris sur vos soirées passées. La contrainte de monotonicité garantit que le modèle reste physiquement cohérent — plus de nuages ne peut jamais améliorer le score.

📖 Pour aller plus loin — La régression logistique est un cas particulier des méthodes à noyaux (SVM, réseaux de neurones). Avec plus de données, un modèle non-linéaire pourrait capturer des interactions complexes (ex : humidité + vent nocturne → turbulence atmosphérique).

02 — Estimateur OVATION

Les aurores boréales

« Un ami publie des photos d'aurores depuis la Finlande…
Pourquoi moi je ne vois rien depuis la France ? »

Deux facteurs clés

  • Activité magnétique solaire → indice Kp
  • Latitude géographique → distance à l'ovale auroral

Deux facteurs observatoires

  • Nuages → transparence du ciel
  • Nuit / Lune → contraste visuel nécessaire

L'indice Kp

Mesure globale de l'activité géomagnétique (0–9). Mis à jour toutes les 3 heures par le NOAA.

0–2
3
4
5
6
7
8
9

Kp 0–2

Calme

Aurores ≥ 65°N (Laponie)

Kp 5–6

Tempête modérée

Aurores ≥ 55°N (Écosse)

Kp 8–9

Tempête forte

Aurores ≥ 45°N (France !)

fKp : la fonction de réponse

0 2 3 5 8 9 0 0.2 0.5 1.0 Indice Kp f_Kp Calme Modéré Tempête
Kp < 3 → f = 0 3 ≤ Kp ≤ 8 → rampe 0.2 → 1.0 Kp ≥ 8 → f = 1.0

fLat : la latitude compte

Latitude Région fLat Visualisation
≥ 65°Laponie, Islande 1.00
≥ 60°Helsinki, Oslo 0.80
≥ 55°Copenhague, Édimbourg 0.60
≥ 50°Londres, Bruxelles 0.40
≥ 45° Paris, Strasbourg ← ici 0.20
< 45°Barcelone, Rome, Nice 0.05

→ À latitude fixe, seul Kp peut compenser. À Paris (45°), il faut Kp ≥ 8 pour espérer quelque chose.

Nuages · Nuit · Lune

☁ fNuages

f = 1 − cloud / 100

Linéaire. 0 % nuages → f=1, 100 % → f=0.
Même principe que le score météo.

🌃 fNuit

Soleil < −12° → 1.0
−12° à −6° → 0.5
Soleil visible → 0.0

Nuit astronomique requise pour voir les aurores faibles.

🌙 fLune

Nouvelle lune → 1.0
Pleine lune → 0.35
Croissant → ~0.70

La pleine lune masque les aurores faibles par diffusion lumineuse.

Les 5 facteurs sont multiplicatifs : si un facteur = 0, la probabilité finale = 0 quel que soit Kp.

La formule multiplicative

P = fKp × fLat × fNuages × fNuit × fLune

Kp=5, Paris (48°), ciel clair, nuit, nouvelle lune

0.60 × 0.20 × 1.0 × 1.0 × 1.0 = 12 %

Kp=5, Laponie (68°), ciel clair, nuit, nouvelle lune

0.60 × 1.00 × 1.0 × 1.0 × 1.0 = 60 %

Pourquoi un produit et non une somme ?
Chaque facteur est une condition nécessaire. Si vous êtes de jour (fNuit = 0), aucun Kp si élevé soit-il ne sauvera le résultat. Le produit modélise naturellement la logique ET : un seul facteur nul annule tout.

Finlande 🇫🇮  vs  France 🇫🇷

🇫🇮

Finlande

Lat 65° · Kp 7 · Ciel dégagé · Nuit

0 %
f_Kp = 0.84 · f_Lat = 1.00
Probabilité : élevée
vs
🇫🇷

France

Lat 48° · Kp 7 · Conditions typiques

0 %
f_Kp = 0.84 · f_Lat = 0.20
Probabilité : très faible

Même Kp, mêmes conditions météo : le facteur latitude multiplie par ×5 l'écart entre Finlande et France.

Calculateur OVATION

0
9
35°
75°
0 %
100 %
Jour
Nuit
🌑
🌕
%
fKp fLat fCloud fNight fMoon
03 — Description automatique

13 000 objets du ciel

13 000

objets NGC / IC dans la base Orbitalis

« Décrire chaque objet à la main : 100+ heures.
Laisser l'IA inventer : risque de hallucination. »

Solution : LLM + RAG — le modèle ne parlera que de ce qu'il peut vérifier.

Trois approches

Approche Avantages Inconvénients Échelle
✏ Manuel Précis, vérifié ~100 h de rédaction ✕ Impossible
🤖 LLM seul Rapide, 13 000 objets Hallucinations (distances, noms) ⚠ Risqué
✦ LLM + RAG Rapide et ancré Pipeline plus complexe ✓ Optimal

Le problème des hallucinations

SANS RAG

M42, la nébuleuse d'Orion, est située à environ 1 500 années-lumière de la Terre.

⚠  Valeur inventée par le modèle — non tracée. La vraie distance est 1 344 al.

AVEC RAG

M42, la nébuleuse d'Orion, est située à 1 344 années-lumière de la Terre, d'après le catalogue SIMBAD.

✓  Valeur extraite de SIMBAD — traçable jusqu'à sa source.

Les LLM "complètent" le texte de manière plausible. Sans ancrage dans des données fiables, ils inventent des faits vraisemblables.

RAG — Retrieval Augmented Generation

R
🔍
Retrieval

Recherche de faits vérifiés dans des sources fiables

A
📎
Augmented

Les faits sont injectés dans le prompt du LLM

G
Generation

Le LLM rédige une description
basée uniquement sur ces faits

Le LLM n'invente plus des faits : il les reformule depuis des données vérifiées.

La pipeline technique

🖥
Frontend Vue.js
Utilisateur demande la description de M42
Backend FastAPI
Reçoit la requête · appelle gallery_groq_service
📚
Cascade de Retrieval
Catalogue local → Alias → SIMBAD → Wikipedia
🤖
Groq LLM (mixtral-8x7b)
Prompt construit avec les faits injectés
💾
Base de données SQLite
Description stockée pour les accès futurs
Réponse utilisateur
Description affichée dans Orbitalis

La cascade de retrieval

1
Catalogue local
Données NGC/IC pré-chargées en base SQLite
→ Hit si objet connu
2
Dictionnaire d'alias
M42 → NGC 1976 · M31 → NGC 224, etc.
→ Résolution du nom
3
SIMBAD TAP API
Base astronomique CDS Strasbourg
→ Distance, type, coordonnées
4
Wikipedia API
Extrait des 2 premiers paragraphes de l'article
→ Description textuelle
5
Fallback générique
Pour les objets sans données connues
→ Description minimale

Chaque niveau est tenté dans l'ordre. On s'arrête dès qu'on a assez de données pour alimenter le LLM.

Construction du prompt

🔒 Rôle de l'IA — fixe, écrit une fois
Tu es un expert en astronomie. Génère des descriptions scientifiques en français, 4-5 phrases, claires pour des amateurs.
N'invente aucune donnée. Utilise uniquement ce qui est fourni.
📎 Contexte injecté par le RAG — dynamique, récupéré automatiquement
• Catalogue : M42 / NGC 1976, nébuleuse HII, Orion, mag 4.0, 1 344 al, 65×60′
• SIMBAD : distance 412 pc, vitesse radiale +27 km/s
• Wikipedia : “Le Trapèze (θ¹ Ori C) ionise le gaz par rayonnement UV…
👤 Requête utilisateur — dynamique
Génère une description pour M42 — Nébuleuse d'Orion.
🔒 Rôle fixe 📎 Contexte RAG 👤 Requête

Démonstration en direct

Catalogue
Alias
SIMBAD
Wikipedia
LLM
Stockage

Sortie annotée

La nébuleuse d'Orion (M42, NGC 1976) est une région de formation d'étoiles située à environ 1 344 années-lumière dans la constellation d'Orion.
D'un diamètre apparent de 65 × 60 minutes d'arc, elle est l'une des nébuleuses en émission les plus brillantes du ciel nocturne, avec une magnitude de 4.0.
Elle abrite le Trapèze (θ¹ Ori C), dont le rayonnement UV ionise le gaz ; la distance précise de 412 pc a été mesurée par parallaxe.
Catalogue local SIMBAD TAP Wikipedia → survoler pour voir la source

Les fonctions cachées du site…

Score météo

Formule additive sur 4 facteurs. Poids calibrés par régression logistique avec contrainte de monotonicité.

0 – 100
🌌

Estimateur OVATION

Formule × Kp × Lat × Nuages × Nuit × Lune. La latitude est le facteur limitant en France.

Probabilité %
🔭

LLM + RAG

Cascade Catalogue→SIMBAD→Wikipedia + LLM ancré. Descriptions vérifiées pour 13 000 objets.

Sans hallucination

Tout est accessible sur orbitalis.fr — ouvert, documenté, en production.

En production

🌐 En ligne

orbitalis.fr

🤝 Open source

Code documenté, contributions bienvenues

Questions ?

← Utilisez les flèches pour revoir une section