Maison >Périphériques technologiques >IA >Comment créer des interfaces utilisateur pour les applications AI à l'aide de rationalisation et de Langchain

Comment créer des interfaces utilisateur pour les applications AI à l'aide de rationalisation et de Langchain

Lisa Kudrow
Lisa Kudroworiginal
2025-03-03 10:15:13505parcourir

Ce didacticiel démontre la construction d'une interface utilisateur rationalisée pour une application Langchain interagissant avec une base de données de graphiques NEO4J. Cela crée un chatbot répondant aux questions sur l'histoire du football international en utilisant la génération augmentée de récupération (RAG). Explorons les étapes et les concepts clés.

Le tutoriel exploite plusieurs technologies:

  • rationalisation: un framework Python pour créer rapidement des applications Web conviviales. Il fournit des composants pour afficher les messages de chat et accepter la contribution des utilisateurs, créant une interface de type chatppt.
  • Langchain: Un cadre unifiant divers LLM, simplifiant l'intégration de LLM avec d'autres outils. Ici, il connecte les modèles GPT d'Openai à la base de données.
  • NEO4J (avec Auradb): Une base de données de graphiques idéale pour stocker des données interconnectées comme les joueurs de football, les équipes, les matchs et les tournois. Le tutoriel utilise une instance Auradb basée sur le cloud.
  • Génération augmentée augmentée (RAG): Une technique améliorant les LLM avec des informations extraites d'une base de données. Le chatbot utilise un chiffon pour répondre à des questions spécifiques sur l'histoire du football.

Les données utilisées sont un ensemble de données Kaggle contenant plus de 47 000 matchs, y compris des scores, des buteurs et des détails de correspondance. Ces données sont ingérées dans la base de données NEO4J. Le schéma de graphiques du chatbot comprend des nœuds pour les joueurs, les équipes, les matchs, les tournois, les villes et les pays, liés par des relations telles que "joué_home" et "scored_for".

Le tutoriel marche dans la construction du chatbot étape par étape:

  1. Configuration de l'environnement: Création d'un environnement conda et installation des bibliothèques nécessaires (Streamlit, Langchain, Langchain-openai, Langchain-Community, Neo4j). Les secrets (NEO4J URI, nom d'utilisateur, mot de passe et clé API OpenAI) sont stockés dans .streamlit/secrets.toml.

  2. Importations de bibliothèque et chargement secret: Importation de modules nécessaires et secrets de chargement en utilisant st.secrets.

  3. Authentification: Une barre latérale invite l'utilisateur à sa clé API OpenAI.

  4. Connexion de la base de données et initialisation de la chaîne QA: La fonction init_resources se connecte à Neo4j, rafraîchit le schéma et initialise A GraphCypherQAChain en utilisant ChatOpenAI. st.cache_resource cache ces ressources pour l'efficacité.

  5. Historique des messages: L'état de session de Streamlit gère l'historique du chat, affichant des messages précédents en utilisant st.chat_message et st.markdown.

  6. Composants de chat: La fonction query_graph exécute la chaîne, gérer les erreurs potentielles. st.chat_input accepte les requêtes utilisateur, et la réponse est affichée à l'aide de st.chat_message.

  7. Optimisation du code: Le code est refactorisé en fichiers modulaires (graph_utils.py et chat_utils.py) pour une meilleure organisation.

  8. Déploiement: L'application est déployée pour rationaliser le cloud, nécessitant un requirements.txt Fichier et Secrets Management.

L'application finale fournit une interface conviviale pour interroger la base de données de football. Le tutoriel souligne également que, bien que le développement de l'interface utilisateur soit relativement simple, l'optimisation de la génération de requêtes sous-jacente et garantissant une précision nécessite des efforts importants. L'exemple fourni, bien que fonctionnel, sert de point de départ et peut nécessiter un raffinement supplémentaire pour l'utilisation de la production. Le tutoriel se termine par les FAQ abordant les questions courantes sur les compétences requises, les coûts, les alternatives de base de données et les différences du chatbot par rapport à Chatgpt.

How to Build User Interfaces For AI Applications Using Streamlit And LangChain How to Build User Interfaces For AI Applications Using Streamlit And LangChain How to Build User Interfaces For AI Applications Using Streamlit And LangChain How to Build User Interfaces For AI Applications Using Streamlit And LangChain How to Build User Interfaces For AI Applications Using Streamlit And LangChain How to Build User Interfaces For AI Applications Using Streamlit And LangChain How to Build User Interfaces For AI Applications Using Streamlit And LangChain How to Build User Interfaces For AI Applications Using Streamlit And LangChain

(Remarque: les URL de l'image sont des espaces réservées et doivent être remplacées par des URL d'image réelles si vous souhaitez inclure les images.)

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn