Discutez avec vos données d'entreprise à l'aide de LLM
Cet échantillon montre quelques approches pour créer des expériences de type Chatgpt sur vos propres données. Il utilise le service Azure Openai pour accéder au modèle ChatGPT (GPT-35-Turbo et GPT3), et Vector Store (Pinecone, Redis et autres) ou recherche cognitive Azure pour l'indexation et la récupération des données.
Le repo fournit un moyen de télécharger vos propres données afin qu'il soit prêt à essayer de bout en bout.
Mises à jour
- 30/03/2024 - Refactorisé pour continuer à discuter, au flux de chat, à la fonctionnalité QNA, à télécharger et à administrer. Tous les autres seront déplacés vers son propre dépôt.
- 3/10/2024 - Déplacez la version de flux d'invite vers entaoaipf
- 3/9/2024 - Version initiale des techniques de chiffon avancées et motif de chiffon multimodal
- 28/02/2024 - Suppression des fonctionnalités d'analyse de la SEC et elle est déplacée dans son propre référentiel à la SEC
- 1/28/2024 - Supprimer les fonctionnalités de Pitchbook car ils sont déplacés dans son propre référentiel chez PIB
- 19/01/2024 - Mise à jour du package Python et Openai> 1.0. Modifications apportées à toutes les API Python pour la rupture des changements introduits dans Openai et Langchain.
- 10/12/2023 - Version initiale de l'invite autonome. Pour l'instant, la prise en charge des index Pinecone, mais la prise en charge de la recherche cognitive et de Redis sera bientôt mise à jour.
- 29/09/2023 - Ajouter Évaluer Promptflow. Le flux rapide une fois créé dans Azure ML peut être attaché à votre exécution existante pour évaluer par rapport au processus d'évaluation suivant:
- Grouille - Le flux d'évaluation des questions de questions-réponses évaluera les systèmes de génération augmentée de récupération des questions et réponses en tirant parti des modèles de langage de grande envergure (LLM) pour mesurer la qualité et la sécurité de vos réponses. L'utilisation de GPT-3.5 comme modèle de langue pour aider aux mesures vise à parvenir à un accord élevé avec les évaluations humaines par rapport aux mesures mathématiques traditionnelles. GPT_MANDEDENDNE (contre le contexte): Mesure la façon dont les réponses prédites du modèle sont fondées contre le contexte. Même si les réponses de LLM sont vraies, sinon vérifiables contre le contexte, ces réponses ne sont pas considérées comme non fondées.
- Similité ADA - Le flux d'évaluation ADA_Similarité des questions et réponses évaluera les systèmes de génération augmentée de récupération des questions et réponses en tirant parti des modèles de langage de pointe (LLM) pour mesurer la qualité et la sécurité de vos réponses. L'utilisation de GPT-3.5 comme modèle de langue pour aider aux mesures vise à parvenir à un accord élevé avec les évaluations humaines par rapport aux mesures mathématiques traditionnelles. Le flux d'évaluation de la similitude ADA vous permet d'évaluer et d'évaluer votre modèle avec la similitude ADA assistée par LLM Metri ADA_Similarité: mesure la similitude cosinus des incorporations ADA de la prédiction du modèle et de la vérité du sol. ADA_SIMILITÉ est une valeur dans la plage [0, 1].
- Cohérence - Le flux d'évaluation de la cohérence des questions et réponses évaluera les systèmes de génération augmentée de récupération des questions et réponses en tirant parti des modèles de langage grand de la technologie (LLM) pour mesurer la qualité et la sécurité de vos réponses. L'utilisation de GPT-3.5 comme modèle de langue pour aider aux mesures vise à parvenir à un accord élevé avec les évaluations humaines par rapport aux mesures mathématiques traditionnelles. Le flux d'évaluation de la cohérence vous permet d'évaluer et d'évaluer votre modèle avec la métrique de cohérence assistée par LLM. GPT_COHERENCE: mesure la qualité de toutes les phrases dans la réponse prédite d'un modèle et comment elles s'assemblent naturellement. La cohérence est notée sur une échelle de 1 à 5, 1 étant le pire et 5 étant les meilleurs.
- Similitude - Le flux d'évaluation de la similitude des questions et réponses évaluera les systèmes de génération augmentée de la récupération des questions et réponses en tirant parti des modèles de langage de pointe (LLM) pour mesurer la qualité et la sécurité de vos réponses. L'utilisation de GPT-3.5 comme modèle de langue pour aider aux mesures vise à parvenir à un accord élevé avec les évaluations humaines par rapport aux mesures mathématiques traditionnelles. Le flux d'évaluation de similitude vous permet d'évaluer et d'évaluer votre modèle avec la métrique de similitude assistée par LLM. GPT_SIMILITÉ: mesure la similitude entre les réponses de la vérité au sol fournies par l'utilisateur et la réponse prédite du modèle. La similitude est notée sur une échelle de 1 à 5, 1 étant le pire et 5 étant les meilleurs.
- Score F1 - Le flux d'évaluation des scores F1 de questions / réponses évaluera les systèmes de génération augmentée de récupération des questions et réponses en utilisant F1-score en fonction du nombre de mots dans la réponse prédite et la vérité au sol. Le flux d'évaluation des scores F1 vous permet de déterminer la métrique de score F1 en utilisant le nombre de jetons communs entre la version normalisée de la vérité du sol et la réponse prévue. F1-score: Calculez le score F1 en fonction des jetons dans la réponse prévue et la vérité au sol. F1-score est une valeur dans la plage [0, 1]. La métrique de la mise à la terre est notée sur une échelle de 1 à 5, 1 étant le pire et 5 étant les meilleurs.
- 22/09/2023 - Ajout de promptflow pour SQLask. Assurez-vous que les valeurs de configuration
PFSQLASK_URL et PFSQLASK_KEY sont ajoutées au point de terminaison déployé pour activer la fonction. Assurez-vous également que les valeurs de configuration SynapseName , SynapsePool , SynapseUser et SynapsePassword sont ajoutées à la connexion Innotflow entaoai . Déplacé la suppression de la capacité de session pour la page de chat de chatppt. - 10/20/2023 - Ajout de la configuration pour permettre à l'utilisateur final de modifier le type de recherche pour l'index de la recherche de vecteur de recherche cognitive (hybride, similitude / vecteur et ré-classement hybride), sur la base des meilleures pratiques que nous avons partagées. Le QNA, le chat et le flux d'invite sont modifiés. QNA et CHAT implémentent l'implémentation du magasin vectoriel personnalisé de Langchain et Invite Flow à l'aide des fonctions d'assistance. Correction du problème avec QNA / Chat / Promptflow ne générant pas de questions de suivi.
- 18/09/2023 - NLP SQL refactorisé pour ne pas utiliser l'agent / chaîne de la base de données de Langchain et utiliser à la place des invites personnalisées.
- 15/09/2023 - Modifié le package de recherche Azure à 11.4.0b9 et Langchain à la dernière version. Capacité ajoutée à effectuer une évaluation sur Promptflow pour QNA et CHAT. Bert PDF et les données d'évaluation peuvent être utilisées pour effectuer un lot et une évaluation dans le flux rapide. Un exemple de cahier présentant le flux et le processus E2E est disponible. Le dossier Bert Chat vous permet de tester le flux de l'invite E2E, l'exécution par lots et l'évaluation sous forme de cahier.
- 9/3/2023 - Ajout de l'API pour le chat à l'aide du flux d'invite. Permettez à l'utilisateur final de sélectionner entre les fonctions Azure comme API (configuration
ApiType dans l'application Web) ou en utilisant le point de terminaison géré par le flux d'invite. - 9/2/2023 - Ajouté API pour la réponse aux questions en utilisant le flux rapide. Permettez à l'utilisateur final de sélectionner entre les fonctions Azure comme API (configuration
ApiType dans l'application Web) ou en utilisant le point de terminaison géré par le flux d'invite. - 31/08/2023 - Exemple ajouté pour LLMOPS en utilisant le flux d'invite. Le repo ajoutera la flexibilité d'utiliser le modèle de flux invite déployé comme alternative aux fonctions Azure actuelles.
- 20/08/2023 - Ajout de la prise en charge des fichiers Markdown (en tant que fichier zip) et supprimé le chunk_size = 1 d'Azure Openaiembedding
- 8/11/2023 - Correction du problème avec la fonction de chat en streaming.
- 8/10/2023 - Modifications de rupture - Refactorisé tout le code pour utiliser la valeur de configuration
OpenAiEndPoint au lieu d' OpenAiService . Il s'agit de soutenir les meilleures pratiques telles qu'elles sont décrites dans la journalisation des entreprises via Azure API Management. Votre OpenAiEndPoint si l'utilisation d'APIM sera URL de la passerelle API et que l' OpenAiKey sera la clé de produit / illimité. Si vous n'utilisez pas APIM, vous n'avez pas besoin de modifier la clé, mais vous assurez que OpenAiEndPoint est une URL pleinement qualifiée de votre déploiement AOAI. OpenAiService n'est plus utilisé. Les modifications ont eu un impact sur la fonction de travail sur le chat sur le flux, il est donc désactivé pour l'instant et sera activé une fois testé et corrigé. - 8/9/2023 - Ajout de la fonction d'appel dans l'interface Chatgpt en tant que case à cocher. Exemple de démonstration de la capacité d'appeler les fonctions. Actuellement, API météo, API Stock et Bing sont prises en charge. L'appel de fonction est en avant-première et pris en charge uniquement à partir de "version API" de "2023-07-01-preview", alors assurez-vous de mettre à jour le déploiement existant pour utiliser cette version. Détails sur les fonctions d'appel. Pour le déploiement existant, ajoutez
WeatherEndPoint , WeatherHost , StockEndPoint , StockHost et RapidApiKey Configuration à Azure Function App. - 8/5/2023 - Ajout d'une interface de chat avec l'option "Stream". Cette fonctionnalité vous permet de diffuser la conversation vers le client. Vous devrez ajouter
OpenAiChat , OpenAiChat16k , OpenAiEmbedding , OpenAiEndPoint , OpenAiKey , OpenAiApiKey , OpenAiService , OpenAiVersion , PineconeEnv , PineconeIndex , PineconeKey , RedisAddress , RedisPassword , RedisPort Propriété dans Azure App Service (WebApp) pour permettre à la fonctionnalité de déploiement existant. - 30/07/2023 - Suppression du code inutilisé - résumé et chat et chat
- 28/07/2023 - a commencé à supprimer l'utilisation du modèle DaVinci. Pour l'instant, supprimé l'utilisation de toutes les fonctionnalités, sauf l'atelier. Fonctionnalité de résumé refactorisée basée sur les commentaires pour permettre à l'utilisateur de spécifier les sujets invite et prédéfinis pour le résumer.
- 26/07/2023 - Supprimez Openai Playground des outils du développeur en tant que fonctionnalités avancées de ceux qui sont disponibles dans la section ChatGpt.
- 25/07/2023 - Ajouter un onglet pour les capacités de chat pour prendre en charge les capacités ChatGpt directement à partir du modèle au lieu de "chat sur les données". Vous devrez ajouter la propriété
CHATGPT_URL dans Azure App Service (WebApp) pour activer la fonctionnalité en dehors du déploiement de la nouvelle fonction Azure. - 23/07/2023 - Ajout du reste de la fonctionnalité pour l'interface utilisateur PIB et la version initiale de la génération du pont PowerPoint comme sortie. Pour la nouvelle fonctionnalité ajoutée, assurez-vous d'ajouter une variable
FMPKEY à la configuration WebApp. - 20/07/2023 - Ajout de la fonctionnalité pour parler aux données PIB (dépôts SEC et transcription d'appel de gain). Étant donné que une nouvelle fonction Azure est déployée, assurez-vous que la propriété
PIBCHAT_URL est ajoutée à Azure WebApp avec l'URL de vos fonctions Azure déployées - 7/18/2023 - Refactorisé le code PIB pour résoudre une partie du problème des performances et des corrections de bogues.
- 7/17/2023 - Suppression de l'interface de chat GPT3 avec la retraite des modèles "DaVinci".
- 7/16/2023 - Version initiale de l'interface utilisateur PIB (prise en charge actuellement de 5 étapes - Profil de l'entreprise, transcriptions d'appels, communiqués de presse, dépôts SEC et notes / recommandations). Vous aurez besoin d'accéder à l'abonnement payant (FMP ou modifier en fonction de ce à quoi votre entreprise a accès). Pour utiliser avec FMP, vous devrez ajouter
FmpKey dans les fonctions Azure. En raison de la dépendance circulaire, vous devez ajouter manuellement manuellement SecDocPersistUrl et SecExtractionUrl dans les fonctions Azure. - 14/07/2023 - Ajouter la prise en charge du modèle GPT3.5 16K et la capacité de coincement du document> 4000 jetons avec> 500 chevauchement. Pour le ChunkSize> 4000, il sera par défaut à Token 16K pour la fonctionnalité QNA et CHAT. Ajout du fournisseur d'identité à l'application et à l'authentification pour l'interface QNA et CHAT. Pour le modèle GPT3.5 16K, vous devrez ajouter une propriété
OpenAiChat16k dans l'application de fonction Azure. - 7/13/2023 - Permettez à l'utilisateur final de sélectionner la configuration ChunkSize et Chunkoverlap. Version initiale du modèle d'invite primordial.
- 7/11/2023 - Copilot PIB fonctionnel sous la forme du cahier.
- 7/8/2023 - Ajout de la fonctionnalité pour renommer la session pour Chatgpt. Ajout de l'interface utilisateur pour l'outil d'évaluateur. Cette fonctionnalité se concentre sur l'exécution de l'évaluation basée sur LLM sur votre document. Il génère automatiquement l'ensemble de données de test (avec question et réponses) et effectuer le classement sur ce document en utilisant différents paramètres et génère les résultats de l'évaluation. Il est construit sur des fonctions durables Azure et est implémenté à l'aide du modèle de chaînage de fonction. Vous devrez ajouter
BLOB_EVALUATOR_CONTAINER_NAME (Assurez-vous que le même nom de conteneur est créé dans le compte de stockage) et RUNEVALUATION_URL (URL du déploiement de fonction durable) dans l'application Web Azure pour le déploiement existant et si vous souhaitez utiliser la fonction d'évaluatrice. Dans le déploiement de la fonction Azure, ajoutez AzureWebJobsFeatureFlags (Value ActiveWorkerIndexing) et les paramètres OpenAiEvaluatorContainer . - 7/5/2023 - Ajout de la fonctionnalité pour supprimer la session. Cette fonctionnalité nécessite la fonctionnalité en avant-première et vous devrez l'activer sur le compte COSMOSDB sur votre abonnement. Ajout d'un bloc d'essai / catch simple au cas où vous n'avez pas activé / déployé le cosmosdb pour poursuivre l'implémentation de Chatgpt.
- 7/4/2023 - Version initiale du stockage des "sessions" pour l'interface GPT3.5 / ChatGPT. La session et les messages sont stockés / récupérés à partir de COSMOSDB. Assurez-vous que le service COSMOSDB est fourni ou en créer un nouveau (pour le déploiement existant). Vous devrez ajouter des paramètres
CosmosEndpoint , CosmosKey , CosmosDatabase et CosmosContainer dans l'application Azure Functions et l'application Web. - 25/06/2023 - Ad-ordinateur présentant l'évaluation de la qualité des réponses de manière systématique (questions de génération automatique et chaîne d'évaluation), supportant les paramètres de QA LLM (taille de morceaux, chevauchement, technique d'intégration). Reportez-vous à Evaluator Notebook pour plus d'informations.
- 18/06/2023 - Ajouter la page d'administration en charge de la gestion de la base de connaissances.
- 15/06/2023 - Ajout du bouton "Liste de questions" pour poser une fonction de question pour afficher la liste de toutes les questions qui se trouvent dans la base de connaissances. Suivant trois propriétés
SEARCHSERVICE , SEARCHKEY et KBINDEXNAME (valeur par défaut d'Aoaikb) doit être ajoutée au service Azure App pour activer la fonction de bouton "Liste de questions". - 16/06/2023 - Ajoutez la fonctionnalité pour utiliser la recherche cognitive Azure comme magasin vectoriel pour stocker la base de connaissances en cache. Les questions qui ne sont pas dans KB sont envoyées au modèle LLM pour trouver la réponse via OAI, sinon elle est répondue de la pointe de données en cache. La nouvelle propriété
KbIndexName doit être ajoutée à l'application de fonction Azure. Ajout du cahier pour tester la fonctionnalité dans le cadre de l'atelier. TODO: Ajoutez la fonctionnalité pour ajouter la question à KB à partir de l'interface de chat (et faire de la session basée sur la session). Une caractéristique en plus de la réponse "régénérer" de LLM (au lieu d'une réponse mise en cache) sera ajoutée bientôt. - 6/7/2023 - Ajoutez Openai Playground dans les outils du développeur et la version initiale de la construction du copilote (pour l'instant avec le cahier, mais sera finalement déplacé en tant que fonction Copilot). Ajoutez le script, l'enregistrement et l'exemple pour les cas d'utilisation de l'analyse vocale en temps réel. Plus à ajouter bientôt.
- 27/05/2023 - Ajoutez du contenu d'atelier sous la forme des ordinateurs portables qui peuvent être exploités pour apprendre / exécuter les scénarios. Vous pouvez trouver les ordinateurs portables dans le dossier de l'atelier. Des détails sur le contenu de l'atelier sont disponibles ici.
- 26/05/2023 - Ajoutez une fonction de résumé pour résumer le document à l'aide de choses, de mapreduce ou d'affiner la résumé. Pour utiliser cette fonctionnalité (sur le déploiement existant), assurez-vous d'ajouter la configuration
OpenAiSummaryContainer pour fonctionner et BLOB_SUMMARY_CONTAINER_NAME Configuration au service Azure App (assurez-vous que la valeur que vous entrez est la même que le nom du conteneur dans Azure Storage et que vous avez créé le conteneur). Vous devez également ajouter la configuration PROCESSSUMMARY_URL à Azure App Service (assurez-vous que la valeur que vous entrez est la même que l'URL de la fonction Azure). - 24/05/2023 - Ajouter une fonctionnalité pour télécharger les fichiers CSV et l'agent CSV pour répondre / discuter des questions sur les données tabulaires. Smart Agent prend également en charge la réponse aux questions sur les données CSV.
- 22/05/2023 - Version initiale de "Smart Agent" qui vous donne une flexibilité pour parler à tous les documents téléchargés dans la solution. Il vous permet également de parler au scénario de base de données SQL. À mesure que davantage de fonctionnalités sont ajoutées, l'agent continuera de s'appuyer sur cela (par exemple, parlez à CSV / Excel ou aux données tabulaires)
- 21/05/2023 - Ajouter la section des outils de développeur - Conversion de code expérimental et gourou rapide.
- 17/05/2023 - Modifiez la source Edgar en magasin de vecteur de recherche cognitive au lieu de redis.
- 15/05/2023 - Ajoutez l'option d'utilisation de "Recherche cognitive" comme magasin de vecteur pour stocker l'index. Azure Cognitive Search offre une recherche de vecteurs pure et une récupération hybride - ainsi qu'un système de révision sophistiqué propulsé par Bing dans une seule solution intégrée. S'inscrire. Prise en charge du téléchargement de documents de mots.
- 5/10/2023 - Ajoutez les options sur la façon dont le document doit être guné. Si vous souhaitez utiliser le formateur de formulaire, assurez-vous que la ressource de reconnaissance du formulaire est créée et que les paramètres d'application appropriés
FormRecognizerKey et FormRecognizerEndPoint sont configurés. - 5/07/2023 - Option disponible pour sélectionner Azure OpenAI ou OpenAI. Pour OpenAI, assurez-vous que vous avez
OpenAiApiKey dans les paramètres des fonctions Azure. Pour Azure OpenAI, vous aurez besoin OpenAiKey , OpenAiService et OpenAiEndPoint Endpoint Paramètres. Vous pouvez également sélectionner cette option pour CHAT / Question / SQL NLP / Speech Analytics et autres fonctionnalités (à partir de la page Paramètres du développeur). - 5/03/2023 - Mot de passe requis pour le téléchargement et la page d'administration introduite en commençant par la gestion de l'index
- 30/04/2023 - Version initiale de la fonction d'agent de tâche ajoutée. Les agents autonomes sont des agents conçus pour être plus longs. Vous leur donnez un ou plusieurs objectifs à long terme, et ils exécutent indépendamment vers ces objectifs. Les applications combinent l'utilisation des outils et la mémoire à long terme. La fonction initiale implémente bébé AGI avec des outils d'exécution
- 29/04/2023 - Intégration de processus AWS S3 Utilisation de S3, de la fonction AWS Lambda et Azure Data Factory (déploiement automatisé non encore disponible, les scripts sont disponibles dans le dossier / déploiement / AWS)
- 28/04/2023 - Correction des bogues, des citations et des questions de suivi à travers l'AQ et le chat. Un peu plus restrictif pour limiter la réponse du document.
- 25/04/2023 - Version initiale de Power Virtual Agent
- 21/04/2023 - Ajoutez l'onglet SQL Query & SQL Data to SQL NLP et corriger les citations et les questions de suivi pour le chat et les fonctionnalités de demande
- 17/04/2023 - Analyse vocale en temps réel et discours au texte et texte à la parole pour le chat et les fonctionnalités de demande. (Vous pouvez configurer la fonctionnalité de texte vers la parole à partir des paramètres du développeur. Vous aurez besoin de services de parole Azure)
- 13/04/2023 - Ajouter une nouvelle fonctionnalité pour prendre en charge des questions sur plusieurs documents à l'aide de Vector QA Agent
- 4/8/2023 - Demandez à votre SQL - à l'aide de l'agent de base de données SQL ou à l'aide de la chaîne de base de données SQL
- 29/03/2023 - script de déploiement automatisé
- 23/03/2023 - Ajouter la recherche cognitive comme option pour stocker des documents
- 19/03/2023 - Ajouter une implémentation de chat GPT3
- 18/03/2023 - API pour générer un résumé sur les documents et échantillonner QA
- 17/03/2023
- Prise en charge du téléchargement de plusieurs documents
- Correction de bug - Implémentation Redis Vectorstore
- 16/03/2023 - version initiale, demandez à vos données et discutez avec vos données
Tester le site Web
Discuter et demander vos données
Caractéristiques
Liste des fonctionnalités
Architecture

Architecture azure

QA sur vos données avec Cache

Évaluation QA LLM

Commencer
Commencer
Configuration
Configuration de l'application et de la fonction
Ressources
- Révolutionnez vos données d'entreprise avec Chatgpt: Applications de prochaine génération avec Azure Openai et Recherche cognitive
- Recherche cognitive azure
- Service Azure Openai
- Recherche Redis
- Pignon
- Magasin de vecteur de recherche cognitive
Contributions
Nous sommes ouverts aux contributions, que ce soit sous la forme d'une nouvelle fonctionnalité, de mise à jour des fonctionnalités existantes ou une meilleure documentation. Veuillez créer une demande de traction et nous le réviserons et le fusionner.
Note
Adapté du dépôt d'Openai-Cogsearch, Analytics de Call Center, Auto Evaluator et Edgar Crawler