Kōkua

LANI

espace de tests

Bienvenue dans le module de test pour l'Assistance à l'Expertise CSE

Ce module se fixe comme objectif de faciliter la transformation des entretiens et des documents en analyses structurées et transcriptions précises. Consultez le bilan pour comprendre les possibilités, les limites et les contraintes de cet outil.

Bienvenue sur l’espace de présentation de l’outil Kōkua/CSE. Pour découvrir toutes les caractéristiques et fonctionnalités de cette application, cliquez sur les différents onglets disponibles

L’application côté utilisateur est conçue pour interagir de manière fluide avec le serveur, offrant une interface utilisateur intuitive et riche en fonctionnalités. Voici un aperçu des principales fonctionnalités :

  • Affichage dynamique et gestion de l’état de l’application :

    • Statut de l’application : Indique si l’application est active ou non. Si l’application est éteinte (statut rouge), l’utilisateur est invité à contacter l’administrateur pour réactiver le service.

 

  • Formulaire d’Interaction Utilisateur

    • Sélection de configuration : Options pour choisir le type d’interaction (entretien salarié, entretien direction, analyse documentaire, discussion).
    • Gestion des fichiers : Possibilité de télécharger divers types de fichiers pour analyse (DOC, DOCX, PDF, PPT, PPTX, TXT).
    • Saisie de questions : Les utilisateurs peuvent poser des questions directement via un champ de texte ou par reconnaissance vocale.

 

  • Traitement des Demandes

    • Envoi des fichiers et questions : Les fichiers et les questions sont envoyés au serveur pour traitement.
    • Estimation de la qualité : Avant l’envoi, une estimation de la qualité du traitement du fichier est affichée.
    • Traitement synchrone et asynchrone : Les requêtes peuvent être traitées immédiatement ou mises en file d’attente pour un traitement en arrière-plan.

 

  • Réponse et Historique

    • Affichage des réponses : Les réponses du serveur sont affichées de manière claire et formatée.
    • Gestion de l’historique : L’historique des interactions est conservé et peut être affiché ou caché selon les préférences de l’utilisateur.
    • Actions sur les réponses : Possibilité de copier ou sauvegarder l’historique des interactions.

 

  • Reconnaissance et Synthèse Vocale

    • Reconnaissance vocale : Les utilisateurs peuvent poser des questions en utilisant la reconnaissance vocale.
    • Synthèse vocale : Les réponses peuvent être lues à haute voix pour une accessibilité améliorée.

 

  • Réinitialisation de Session

    • Réinitialisation facile : Bouton pour réinitialiser la session utilisateur, ce qui permet de commencer une nouvelle interaction proprement.
    • Gestion des sessions : La réinitialisation de la session est synchronisée avec le serveur pour maintenir la continuité.

 

  • Interactivité et Feedback

    • Boutons interactifs : Les boutons sont activés ou désactivés en fonction du contexte (fichier sélectionné, reconnaissance vocale active, etc.).
    • Feedback en temps réel : Les utilisateurs reçoivent des messages en temps réel sur l’état de leurs requêtes (traitement en cours, erreurs, etc.).

L’application côté serveur offre diverses fonctionnalités destinées à gérer les interactions des utilisateurs avec les modèles GPT de manière efficace et sécurisée. Voici un aperçu des principales fonctionnalités :

  • Gestion des Sessions et des Conversations

    • Création et gestion de sessions utilisateur : Chaque utilisateur obtient une session unique pour maintenir la continuité des interactions.
    • Historique des conversations : Les messages sont sauvegardés pour permettre aux utilisateurs de maintenir le contexte de leurs échanges au sein d’une même session.
    • Nettoyage des conversations inactives : Les conversations inactives depuis plus de 30 jours sont automatiquement supprimées pour garder la base de données propre.

 

  • Traitement des Fichiers et Contenu

    • Support de divers types de fichiers : PDF, DOCX, TXT, XLSX, PPTX.
    • Conversion du contenu : Extraction du texte des fichiers pour une analyse et une utilisation dans les interactions avec les modèles GPT.

 

  • Configuration et Utilisation des Modèles GPT

    • Sélection et configuration des modèles : Utilisation de modèles GPT configurés selon les besoins spécifiques des utilisateurs (via un fichier JSON de configuration).
    • Gestion des paramètres : Optimisation des réponses en ajustant des paramètres tels que la température, le nombre de tokens, etc.

 

  • Analyse et Traitement des Questions

    • Traitement synchrone et asynchrone : Les requêtes peuvent être traitées en temps réel ou mises en file d’attente pour un traitement en arrière-plan.
    • Envoi des requêtes : Les questions des utilisateurs sont envoyées au modèle GPT et les réponses sont formatées pour un affichage clair et structuré.

 

  • Calcul de la Qualité des Réponses

    • Évaluation de la qualité : Calcul de la qualité des réponses basées sur le nombre de tokens utilisés et la complexité des questions.
    • Indice de qualité : Aide les utilisateurs à comprendre l’efficacité des réponses générées.

 

  • File d’Attente pour le Traitement des Tâches

    • Gestion des demandes en arrière-plan : Utilisation d’une file d’attente (RQ – Redis Queue) pour assurer une réponse efficace et rapide.
    • Récupération des résultats : Les résultats des tâches en attente peuvent être récupérés de manière asynchrone.

Côté Serveur

Technologies Utilisées

  • Flask : Framework web pour Python
  • Redis : Gestion des sessions et des tâches en file d’attente
  • SQLAlchemy : ORM pour interagir avec la base de données
  • PostgreSQL : Base de données
  • APScheduler : Planification des tâches périodiques
  • RQ (Redis Queue) : Gestion des tâches asynchrones
  • Markdown2 : Conversion de texte en Markdown
  • PyMuPDF (Fitz) : Traitement des fichiers PDF
  • Openpyxl : Traitement des fichiers Excel
  • Python-docx : Traitement des fichiers Word
  • python-pptx : Traitement des fichiers PowerPoint
  • Tiktoken : Calcul du nombre de tokens pour les modèles GPT
  • Logging : Suivi des activités de l’application

 

Fonctionnalités

  • Gestion des sessions utilisateur
  • Traitement de divers types de fichiers (DOC, DOCX, PDF, PPT, PPTX, TXT)
  • Configuration et utilisation des modèles GPT
  • Traitement synchrone et asynchrone des requêtes
  • Calcul de la qualité des réponses
  • File d’attente pour le traitement des tâches
  • Sécurité et gestion des sessions via Redis
  • Logging et surveillance

 


Côté Client

Technologies Utilisées

  • WordPress : Système de gestion de contenu
  • PHP : Langage de programmation pour le plugin WordPress
  • JavaScript : Interactions dynamiques côté client
  • jQuery : Manipulations DOM et requêtes AJAX
  • HTML/CSS : Structure et style du formulaire et des éléments d’interface
  • pdf.js, jspdf, html2canvas : Bibliothèques pour le traitement des fichiers PDF

 

Fonctionnalités

  • Widget personnalisé pour intégrer l’application Flask
  • Chargement conditionnel des styles et scripts
  • Formulaire d’interaction utilisateur pour poser des questions et télécharger des fichiers
  • Traitement des demandes (synchrone et asynchrone)
  • Affichage des réponses et gestion de l’historique
  • Reconnaissance et synthèse vocale
  • Réinitialisation de session utilisateur
  • Interactivité et feedback en temps réel

Analyse des Limites Techniques et Pratiques

Gestion du Contexte et de l’Historique

  • Problème : Les API GPT d’OpenAI ne conservent pas l’historique des interactions entre les requêtes. Chaque nouvelle requête est traitée indépendamment, sans connaissance des échanges précédents.
  • Solution Mise en Place : Pour contourner cette limitation, un système de stockage d’historique via Redis a été intégré. Redis est une base de données en mémoire rapide, permettant de sauvegarder l’historique des interactions pour garantir la continuité des échanges avec l’utilisateur.

 

Gestion des Tokens

  • Explication des Tokens : Un “token” est une unité de texte utilisée par le modèle GPT-4 pour traiter le langage. Les tokens peuvent être des mots entiers ou des fragments de mots. Par exemple, “chatbot” pourrait être un seul token ou plusieurs, selon son traitement.
  • Problème : Les modèles GPT ont une capacité maximale de traitement de 128 000 tokens, avec une limite spécifique de 4 096 tokens pour les sorties générées. Cette limitation peut poser problème lorsque le nombre de tokens d’entrée est élevé, réduisant ainsi les tokens disponibles pour la réponse.
  • Solution Mise en Place : Un calcul automatique du nombre de tokens à l’entrée a été développé, informant l’utilisateur du nombre de tokens restants pour la sortie et fournissant un indice de qualité du traitement. Cet indice évalue la proportion de tokens utilisés par rapport aux tokens disponibles pour la sortie, classant la qualité en quatre catégories : Élevée, Moyenne, Faible, et Très Faible.

 

Hébergement et Temps de Réponse

  • Problème : Heroku (hébergement de l’application Flask côté serveur) impose un timeout de 30 secondes pour les requêtes, ce qui peut être problématique pour le traitement de documents volumineux ou de tâches complexes.
  • Solution Mise en Place : Pour répondre à cette contrainte, un système de calcul du poids de l’entrée utilisateur a été mis en place. Si le traitement risque de dépasser le timeout, la tâche est basculée vers un traitement asynchrone, permettant de gérer des tâches plus longues sans interruption.

 

Conclusion

L’utilisation des API GPT pour des applications avancées nécessite des solutions techniques complexes, une gestion précise des ressources et une maintenabilité accrue. En comparaison avec un compte GPT commercial payant, voici quelques points clés :

  • Complexité des Tests et de la Maintenabilité : La mise en œuvre nécessite des tests rigoureux et une maintenabilité constante. La gestion des tokens, la conservation du contexte et le traitement asynchrone augmentent la complexité du développement et de l’exploitation.

  • Temps de Réponse : Le temps de réponse de l’application lorsqu’il y a un appel GPT semble plus important, et le passage au traitement asynchrone pour les documents importants renforce cette situation. Cela peut entraîner des délais supplémentaires par rapport à un modèle MyGPT commercial.

  • Personnalisation et Paramètres du Modèle : Les comptes GPT payants offrent une personnalisation limitée (par exemple, les prompts) sans exiger de gestion interne des tokens et de l’historique. Cependant, l’utilisation des API permet un contrôle plus fin sur des paramètres comme la température, le top_p et le max tokens, essentiels pour ajuster les réponses du modèle.

  • Séquençage et Traitements Internes : Il est possible d’imbriquer différents appels à GPT pour séquencer et découper les traitements. GPT peut être utilisé à l’intérieur du code pour des traitements internes sans afficher directement les réponses à l’utilisateur, permettant une utilisation plus flexible et modulaire.

Tester l'application

Status de l'application

L’accès à l’application peut nécessiter une demande auprès de l’administrateur (WhatsApp, formulaire de contact, email), car les serveurs sont facturés à l’heure. Cette mesure est en place pour éviter des frais superflus et respecter la philosophie des tests de faisabilité.

Si le statut est rouge (app éteinte), veuillez contacter l'administrateur pour réactiver le service.

Statut :
Usages




Gestion du fichier
Session utilisateur
(En cas de problème lors du traitement, un message sera affiché ici.)

Cher utilisateur,

Veuillez noter que l’application présentée sur cette page est un prototype expérimental conçu pour évaluer diverses fonctionnalités des API de ChatGPT.

Il est important de souligner que cette application n’est pas optimisée pour les appareils mobiles et ne fonctionnera pas correctement sur les petits écrans. Le développement responsive n’a pas été une priorité étant donné l’objectif principal de test technique et fonctionnel.

Nous vous recommandons d’utiliser un ordinateur de bureau ou une tablette pour une meilleure expérience utilisateur.

Par ailleurs, veuillez garder à l’esprit que les applications de ce site sont temporaires et que les fonctionnalités peuvent être modifiées ou retirées à tout moment.

Nous vous remercions de votre compréhension et de votre patience pendant cette phase de développement. Pour toute question ou commentaire, n’hésitez pas à nous contacter via les canaux disponibles sur le site.

© 2024 Kokua.fr. Tous droits réservés.