PBOT

PBOT — Fiches techniques

Documentation produit et architecture
Interface web · Chat LLM

PBOT GPT

Application web conversationnelle construite comme interface utilisateur principale de l’écosystème. Elle combine une UX moderne, un historique persistant, un affichage enrichi des sources et une intégration complète avec l’API Centrale pour bénéficier du routage intelligent et du mode web automatique.

Positionnement

PBOT GPT joue le rôle de vitrine fonctionnelle et de client de référence. L’application démontre la capacité du socle technique à produire une expérience de chat propre, persistante et traçable.

Points forts

  • Historique multi-conversations
  • Sources stockées et réaffichées
  • Mode utilisé visible (web / GPU / CPU)
  • Interface dark cohérente et factorisée

Vision produit

PBOT GPT est une interface de chat conçue pour être à la fois agréable à utiliser, techniquement démonstrative et facile à connecter à de futurs cas d’usage métier.

Type
Chat UI
Persistance
PostgreSQL
Mode
Async
Intégration
API Centrale

Cas d’usage

  • Assistant IA personnel ou interne.
  • Frontend de démonstration pour architecture LLM hybride.
  • Base de travail pour un futur produit SaaS conversationnel.
  • Client de test pour valider le comportement GPU / CPU / Web de l’API Centrale.

Fonctionnalités principales

Conversation et mémoire

  • Création, suppression et historique de conversations.
  • Messages persistés en base avec rôle, contenu, modèle et métadonnées.
  • Reconstruction du contexte conversationnel pour les nouveaux prompts.

Réponses enrichies

  • Affichage du contenu markdown.
  • Sources web affichées sous la réponse.
  • Sources persistées et réaffichées après rechargement.
  • Stockage du mode web et du backend utilisé pour restitution fidèle de l’historique.

Exécution intelligente

  • Transmission du mode web par défaut en auto.
  • Fallback transparent vers le CPU si besoin, orchestré par l’API Centrale.
  • Gestion des erreurs d’exécution avec retour UX lisible.

Expérience utilisateur

  • Thème sombre cohérent type glassmorphism.
  • Scroll indépendant du bloc de chat.
  • Envoi asynchrone pour fluidité perçue.
  • Animation de frappe pendant génération.
  • Auto-scroll intelligent pour éviter les sauts quand l’utilisateur lit l’historique.
  • Affichage discret du mode utilisé : web enrichi, local GPU ou local CPU.

Architecture

Navigateur ↓ Frontend HTML / CSS / JS ↓ Flask (PBOT GPT) ↓ PostgreSQL + API Centrale ↓ GPU / CPU / Web RAG
Pattern Application web Flask avec frontend server-rendered + AJAX pour le chat
Front Templates HTML, CSS factorisé, JavaScript vanilla, rendu markdown
Back Flask, psycopg2, requests, sessions serveur
Dépendance centrale L’application ne parle pas directement au LLM, mais à l’API Centrale

Modèle de données

Table conversations

  • id
  • user_id
  • title
  • created_at
  • updated_at

Table messages

  • conversation_id
  • role
  • content
  • model_name
  • sources_json
  • web_mode
  • backend_used
  • created_at

Stack technique

Flask PostgreSQL psycopg2 requests HTML / CSS / JS python-dotenv

Choix techniques intéressants

  • CSS factorisé dans un fichier dédié pour faciliter la maintenance et la cohérence visuelle.
  • Rendu markdown côté client pour préserver une expérience riche.
  • Sessions Flask pour authentification simple et efficace.
  • Backend minimaliste mais extensible, idéal pour faire évoluer l’application en produit.

Flux applicatif

  1. Connexion utilisateur.
  2. Ouverture ou création d’une conversation.
  3. Construction du prompt avec historique récent.
  4. Appel à l’API Centrale avec le modèle choisi et le mode web par défaut.
  5. Réception de la réponse enrichie et persistence des métadonnées associées.
  6. Affichage immédiat puis restitution durable dans l’historique.

Sécurité et gouvernance

  • Authentification utilisateur avec mot de passe hashé en base.
  • Sessions sécurisées via secret key et paramètres cookie.
  • Clé d’API côté serveur pour communiquer avec l’API Centrale.
  • Pas d’exposition directe des moteurs LLM au navigateur.

Évolutions possibles

  • Recherche plein texte dans l’historique des conversations.
  • Streaming token par token pour une expérience encore plus proche des interfaces premium.
  • Favoris, tags et export de conversations.
  • Mode multi-projets ou multi-contextes.
  • Connexion à d’autres outils métier : datasets, dashboards, matching CV/offres, etc.