DocsPipelineVue d'ensemble

Vue d'ensemble de la Pipeline

Découvrez comment les différents modules de THOR s'enchaînent pour transformer une requête vocale en itinéraire optimisé.

Flux de données

1. Entrée Audio

L'utilisateur enregistre sa demande via le microphone. L'audio est capturé en format WAV pour une compatibilité optimale.

2. Speech-to-Text (Whisper)

Le modèle Whisper d'OpenAI transcrit l'audio en texte avec une précision remarquable pour le français.

3. Texte transcrit

La transcription brute est transmise au module NLP pour analyse sémantique.

4. Natural Language Processing (spaCy)

spaCy analyse le texte pour identifier et extraire l'origine et la destination du voyage.

5. Pathfinding (Dijkstra)

L'algorithme de Dijkstra calcule l'itinéraire optimal en utilisant les temps de trajet réels et en privilégiant les TGV.

6. Résultat

L'itinéraire complet est retourné avec les détails de chaque segment, les temps, distances et géométries des voies.

Les modules

STT - Speech-to-Text

Convertit l'audio en texte en utilisant le modèle Whisper d'OpenAI. Supporte plusieurs tailles de modèle (tiny, base, small, medium, large) pour équilibrer précision et performance.

WhisperVosk (alternatif)

NLP - Natural Language Processing

Analyse le texte transcrit pour en extraire les informations pertinentes : ville de départ, ville d'arrivée. Utilise la reconnaissance d'entités nommées et des patterns regex avancés.

spaCyTransformers (finetuné)Regex avancé

Pathfinding

Trouve l'itinéraire optimal entre deux gares en utilisant l'algorithme de Dijkstra. Les poids sont basés sur les temps de trajet réels, avec une priorisation des TGV et l'exclusion automatique des gares d'aéroport.

DijkstraMulti-sourceTGV prioritaire

Sources de données

Gares SNCFdataset_gares.json
Liaisons avec temps réelsdataset_liaisons_enhanced.json
Géométries des voiesdataset_liaisons_with_shapes.json
Données GTFS SNCFstop_times.txt, trips.txt, etc.