Bibliothèque d’IA Teams
La bibliothèque d’IA Teams est une interface centrée sur Teams pour les modèles de langage commun basés sur GPT et les moteurs d’intention utilisateur qui, modère la nécessité pour vous d’effectuer des tâches complexes et coûteuses d’écriture et de maintenance de la logique de bot conversationnelle pour l’intégrer aux modèles llMs (Large Language Models).
La bibliothèque d’IA fournit une approche simple basée sur les fonctionnalités et vous aide à créer des applications intelligentes rapidement et facilement avec des extraits de code prédéfinis et réutilisables afin que vous puissiez vous concentrer sur la création de la logique métier plutôt que sur l’apprentissage de la sémantique des applications conversationnelles Teams.
Pourquoi utiliser la bibliothèque IA Teams ?
La bibliothèque d’IA est une interface centrée sur Teams pour les modèles de langage volumineux. Vos applications peuvent utiliser des llms pour faciliter des interactions conversationnelles plus naturelles avec les utilisateurs, en guidant cette conversation dans vos compétences en matière d’applications.
Vous pouvez vous concentrer sur l’écriture de votre logique métier et permettre à Teams de gérer les complexités des bots conversationnels afin de pouvoir facilement extraire et utiliser l’intention utilisateur dans vos applications.
La bibliothèque d’IA est une interface centrée sur Teams pour les modèles de langage volumineux. Utilisez des modèles prédéfinis pour ajouter des fonctionnalités d’application Teams.
Utilisez des techniques telles que l’ingénierie d’invite pour ajouter des ChatGPT telles que des expériences de conversation à votre bot et des fonctionnalités de sécurité intégrées, telles que la modération, pour vous assurer que votre bot répond toujours de manière appropriée.
La bibliothèque inclut un moteur de planification qui permet au modèle d’identifier l’intention de l’utilisateur, puis mappe cette intention aux actions que vous implémentez.
Vous pouvez facilement ajouter la prise en charge de n’importe quel LLM de votre choix sans modifier la logique du bot.
La bibliothèque IA Teams est disponible dans les langages JavaScript et C#, ce qui vous permet d’exploiter la puissance de l’IA et de créer des applications intelligentes et conviviales pour Microsoft Teams à l’aide des langages de programmation les plus à l’aise. Nous nous engageons à créer des produits IA avec les outils et les langages souhaités pour offrir les meilleures expériences possibles à vos clients sur Teams.
Voici quelques-unes des fonctionnalités main disponibles via la bibliothèque IA Teams :
Génération de modèles de composants centrés sur Teams simples
La bibliothèque IA Teams simplifie le modèle d’application Teams pour se concentrer sur l’extension nécessaire par rapport au protocole requis. Vous pouvez utiliser des modèles prédéfinis et ajouter votre logique métier à cette structure pour ajouter des modules tels que des bots, des extensions de message, des cartes adaptatives ou un déploiement de liens.
Modélisation en langage naturel
La bibliothèque IA Teams est créée avec des modèles de langage optimisés par GPT, de sorte que vous n’avez pas besoin de passer du temps à écrire votre logique conversationnelle et à identifier les intentions de l’utilisateur. La création d’applications Teams basées sur l’IA est plus facile, plus conforme et systématiquement utilisable que jamais auparavant.
Les bots peuvent s’exécuter dans le contexte et aider lorsque le bot reconnaît une intention utilisateur qui correspond à l’une des actions du bot. Cela stimule la conversation sans demander aux utilisateurs de parler explicitement au bot à l’aide d’un petit ensemble d’actions inscrites.
Ingénierie des requêtes
L’ingénierie des invites vous aide à concevoir des invites en tenant compte de l’intention de l’utilisateur, du contexte de la conversation et de la personnalité du bot. Les bots peuvent être personnalisés et personnalisés pour répondre aux besoins des utilisateurs.
Historique des sessions de conversation
La bibliothèque IA Teams mémorise le contexte dans les messages et contribue à améliorer les performances du bot en analysant les modèles de comportement des utilisateurs.
Localisation
Étant donné que la bibliothèque IA Teams utilise le modèle GPT d’OpenAI, la localisation est disponible. Lorsqu’un utilisateur entre dans n’importe quelle langue, l’entrée est traduite de manière cohérente en intentions, entités et actions résultantes que l’application comprend sans qu’il soit nécessaire de créer et de gérer les enregistrements de localisation.
Modularité LLM
Le modèle LLM (Large Language Model) est un modèle de langage avancé qui utilise des variables latentes pour générer du texte et un style cohérents et variés en langage naturel.
Bien que la bibliothèque IA Teams soit conçue pour utiliser le modèle GPT d’Open AI, vous avez la possibilité d’échanger avec n’importe quel LLM de votre choix sans modifier la logique du bot. Cela signifie que vous pouvez choisir de conserver le contenu de votre application en dehors du domaine public et limité à votre modèle LLM préféré.
IA responsable
La bibliothèque d’IA Teams vous permet de créer des applications conversationnelles éthiques et responsables en :
- Hooks de modération : pour réglementer les réponses des bots par rapport à toute API de modération.
- Balayage de conversation : pour surveiller les conversations et intervenir lorsque la conversation est égaré par le biais d’une détection et d’une correction proactives.
- Boucles de commentaires : pour évaluer les performances du bot pour des conversations de haute qualité et améliorer l’expérience utilisateur.
La bibliothèque d’IA Teams offre une prise en charge de scénarios peu code ou complexes. La bibliothèque étend les fonctionnalités avec des constructions IA pour créer une modélisation en langage naturel, une intention utilisateur spécifique au scénario, une personnalisation et des conversations contextuelles automatisées.
Moteur prédictif pour le mappage des intentions aux actions
Une interface simple pour les actions et les prédictions permet aux bots de réagir lorsque le bot a confiance pour prendre des mesures. La présence ambiante permet aux bots d’apprendre l’intention, d’utiliser des invites basées sur la logique métier et de générer des réponses. Par exemple, si un utilisateur n’était pas du bureau et doit résumer rapidement un thread, la bibliothèque :
- Comprend l’intention comme un résumé.
- Permet aux invites d’effectuer des résumés sur une période de temps axée sur le responsable de l’utilisateur.
- Fournit des actions pour résumer le contenu de conversation que les utilisateurs peuvent utiliser.
Planificateur d’action
Action Planificateur est le composant main qui appelle votre modèle LLM (Large Language Model) et inclut plusieurs fonctionnalités pour améliorer et personnaliser votre modèle. Les plug-ins de modèle simplifient la configuration de votre LLM sélectionné sur le planificateur et sont fournis avec un OpenAIModel qui prend en charge les machines llms OpenAI et Azure OpenAI. Des plug-ins supplémentaires pour d’autres modèles comme Llama-2 peuvent facilement être ajoutés, ce qui vous donne la possibilité de choisir le modèle le mieux adapté à votre cas d’usage. Une boucle de rétroaction interne augmente la fiabilité en corrigeant les réponses secondaires du LLM.
Assistants API
Remarque
La bibliothèque d’IA Teams prend en charge openAI et l’API Assistants Azure OpenAI dans la préversion publique des développeurs pour vous permettre de commencer à créer des assistants intelligents.
L’API Assistants vous permet de créer des assistants IA puissants capables d’effectuer diverses tâches difficiles à coder à l’aide de méthodes traditionnelles. Il fournit un accès programmatique au système GPT d’OpenAI pour des tâches allant de la conversation au traitement d’images, en passant par le traitement audio et la création d’assistants personnalisés. L’API prend en charge l’interaction en langage naturel, ce qui permet de développer des assistants capables de comprendre et de répondre de manière conversationnelle.
Suivez le guide de démarrage rapide pour créer un assistant spécialisé en mathématiques.
Gestion des invites
La gestion dynamique des invites est une fonctionnalité du système d’IA qui lui permet d’ajuster la taille et le contenu de l’invite envoyée au modèle de langage, en fonction du budget de jeton disponible et des sources de données ou des augmentations. Il peut améliorer l’efficacité et la précision du modèle en s’assurant que l’invite ne dépasse pas la fenêtre de contexte ou n’inclut pas d’informations non pertinentes.
Augmentation
Améliorez et dirigez efficacement les réponses de votre modèle IA avec l’augmentation. En utilisant différents modes d’augmentation, vous pouvez adapter votre modèle à vos besoins, en augmentant sa précision et les résultats souhaités.
Récupération de la génération augmentée (RAG) : incorpore automatiquement des sources de données externes en temps réel, dynamiques et spécifiées dans les réponses de votre modèle, ce qui permet d’obtenir des résultats à jour et contextuels précis sans ajuster ou réapprescripteur votre modèle. Répondez aux questions sur les numéros de vente actuels ou personnalisez-les en fonction des données d’un utilisateur spécifique ; avec RAG, votre modèle n’est plus bloqué dans le passé.
Monologue : Créez des agents de style AutoGPT capables d’effectuer des actions en plusieurs étapes de manière indépendante et fiable avec la validation complète du schéma et la réparation automatique incluses.
Séquence : activez votre assistant IA pour retourner une séquence d’actions à exécuter avec une validation de schéma qui augmente la fiabilité.
Fonctions : produisez des réponses structurées à partir de votre modèle en utilisant des fonctions définies par l’utilisateur. Ces fonctions sont personnalisables à l’aide de schémas JSON pour définir les paramètres et leur format. ActionPlanner évalue les réponses du modèle par rapport au schéma, en effectuant des réparations en fonction des besoins, ce qui augmente la fiabilité et la cohérence des réponses.
Sources de données vectorielles
Les bases de données vectorielles sont un nouveau type de base de données conçu pour stocker des vecteurs et permettre une recherche efficace sur celles-ci. Ils retournent les résultats les plus pertinents pour la requête d’un utilisateur. La fonctionnalité de recherche vectorielle dans une base de données vectorielle permet à la génération de récupération augmentée d’utiliser des LMS et des données personnalisées ou des informations spécifiques au domaine. Cela implique d’extraire les informations pertinentes d’une source de données personnalisée et de les intégrer dans la demande de modèle par le biais d’une ingénierie rapide. Avant d’envoyer une requête au LLM, l’entrée utilisateur, la requête ou la requête est transformée en incorporation, et des techniques de recherche vectorielle sont utilisées pour rechercher les incorporations les plus similaires dans la base de données.
Raisonnement amélioré
La bibliothèque d’IA Teams offre un système intégré de vérification des faits pour lutter contre les hallucinations des bots. Lorsqu’un utilisateur interagit avec votre assistant IA, le système invite le bot à s’engager dans un processus d’autoréflexion critique évaluant ses réponses potentielles avant de l’envoyer. L’introspection permet au bot d’identifier les inexactitudes et de corriger ses réponses, ce qui améliore la précision, la qualité et la pertinence contextuelle. Le raisonnement avancé garantit que votre assistant IA devient une source fiable d’informations et de jugement, ce qui crée la confiance dans votre produit et ramène les utilisateurs chaque jour.
Boucle de commentaires
La boucle de commentaires permet au bot de valider et de corriger la sortie du modèle de langage. Il vérifie la structure et les paramètres du plan ou du monologue que le modèle retourne et fournit des commentaires sur les erreurs ou les informations manquantes. Le modèle tente ensuite de corriger ses erreurs et retourne une sortie valide. La boucle de rétroaction peut améliorer la fiabilité et la précision du système d’IA et réduire les risques d’hallucinations ou d’actions non valides.
Le tableau suivant répertorie les mises à jour de la bibliothèque IA Teams :
Type | Description | .NET | JavaScript | Python |
---|---|---|---|---|
OpenAIModel | La classe OpenAIModel vous permet d’appeler À la fois OAI et Azure OAI avec un seul composant. De nouveaux modèles peuvent être définis pour d’autres types de modèles tels que LLaMA2. | ✔️ | ✔️ | ✔️ |
Incorporations | La classe OpenAIEmbeddings vous permet de générer des incorporations à l’aide d’OAI ou d’Azure OAI. De nouvelles incorporations peuvent être définies pour des éléments tels que les incorporations OSS. | ❌ | ✔️ | ✔️ |
Requêtes | Un nouveau système d’invite basé sur un objet permet une meilleure gestion des jetons et réduit la probabilité de dépassement de la fenêtre de contexte du modèle. | ✔️ | ✔️ | ✔️ |
Augmentation | Les augmentations simplifient les tâches d’ingénierie d’invite en permettant au développeur d’ajouter des augmentations nommées à son invite. Seules les functions augmentations de style , sequence et monologue sont prises en charge. |
✔️ | ✔️ | ✔️ |
Sources de données | Un nouveau plug-in DataSource facilite l’ajout de RAG à n’importe quelle invite. Vous pouvez inscrire une source de données nommée auprès du planificateur, puis spécifier le nom des sources de données qu’ils souhaitent ajouter à l’invite. | ❌ | ✔️ | ✔️ |
Appels de fonction à l’aide du KIT de développement logiciel (SDK) IA
Les appels de fonction, implémentés dans le SDK IA, déverrouillent de nombreuses fonctionnalités, ce qui permet au modèle IA de générer des réponses précises en toute transparence. Il permet une connexion directe avec des outils externes, ce qui rend l’IA encore plus puissante. Ces fonctionnalités incluent l’exécution de calculs complexes, la récupération de données importantes, la création de flux de travail plus fluides et l’activation d’interactions dynamiques avec les utilisateurs.
Remarque
Les sorties structurées ne sont pas prises en charge.
Pour utiliser l’appel de fonction avec l’API De saisie semi-automatique de conversation :
Configurez le planificateur où l’invite par défaut utilise l’augmentation des outils. Mettez à jour l’un des fichiers suivants de votre application bot :
- Pour une application JavaScript : mettez à jour
index.ts
. - Pour une application de bot C# : mettez à jour
Program.cs
. - Pour une application Python : mettez à jour
bot.py
.
L’extrait de code suivant montre comment configurer la
ToolsAugmentation
classe :const planner = new ActionPlanner({ model, prompts, defaultPrompt: 'tools' });
- Pour une application JavaScript : mettez à jour
Spécifiez l’augmentation des outils dans le
config.json
fichier.{ "schema": 1.1, "description": "", "type": "", "completion": { + "tool_choice": "auto", + "parallel_tool_calls": true, }, + "augmentation": { + "augmentation_type": "tools" + } }
Spécifiez tous vos
function definitions
dans leactions.json
fichier, qui se trouve dans leprompts
dossier . Veillez à suivre le schéma pour éviter les erreurs lorsque l’action est appelée par le LLM.[{ "name": "CreateList", "description": "Creates a list" }]
Inscrivez votre
handlers
dans votreapplication
classe.- Chaque gestionnaire est une fonction de rappel qui s’exécute lorsqu’un événement spécifique se produit. Le gestionnaire d’appels de fonction exécute du code en réponse à l’événement .
- L’appel de fonction doit retourner une chaîne comme sortie de l’appel de fonction.
- Lorsque le modèle demande à appeler des fonctions, celles-ci sont mappées à
DO
des commandes au sein d’unPlan
et sont appelées dans la fonction de classerun
IA. Les sorties sont ensuite retournées au modèle avec des ID d’appel d’outil pour indiquer que les outils ont été utilisés.
L’extrait de code suivant montre comment inscrire
handlers
:app.ai.action("createList", async (context: TurnContext, state: ApplicationTurnState, parameters: ListAndItems) => { // Ex. create a list with name "Grocery Shopping". ensureListExists(state, parameters.list); return `list created and items added. think about your next action`; });
Activer les options de l’outil
Vous pouvez activer les options d’outil suivantes :
Activer le choix des outils : pour permettre au modèle de sélectionner la fonction qu’il doit appeler en activant la sélection d’outils. Dans le
config.json
fichier :- Définissez
tool_choice
commerequired
pour imposer au modèle d’appeler toujours au moins une fonction. - Définissez
tool_choice
sur une fonction spécifique à l’aide de sa définition pour l’utilisation de cette fonction. - Définissez
tool_choice
sur pournone
désactiver l’outil.
La valeur par défaut de
tool_choice
estauto
. Il permet au modèle de sélectionner les fonctions qu’il doit appeler.- Définissez
Activer/désactiver les appels d’outils parallèles : l’exécution d’outils en parallèle est plus rapide et réduit le nombre d’appels à l’API. Dans le
config.json
fichier , vous pouvez définirparallel_tool_calls
surtrue
oufalse
. Par défaut, leparallel_tool_calls
paramètre est défini surtrue
.
L’extrait de code suivant montre comment activer le choix des outils et activer les appels d’outils parallèles :
{
"schema": 1.1,
"description": "",
"type": "",
"completion": {
+ "tool_choice": "auto",
+ "parallel_tool_calls": true,
},
+ "augmentation": {
+ "augmentation_type": "tools"
+ }
}
Exemples de code
Exemple de nom | Description | .NET | Node.js | Python |
---|---|---|---|---|
Echo bot | Cet exemple montre comment incorporer un flux conversationnel de base dans une application Microsoft Teams à l’aide de Bot Framework et de la bibliothèque IA Teams. | View | View | View |
Extension de message de commande de recherche | Cet exemple montre comment incorporer une application d’extension de message de base dans une application Microsoft Teams à l’aide de Bot Framework et de la bibliothèque d’IA Teams. | View | View | View |
Bot typeahead | Cet exemple montre comment incorporer la fonctionnalité de recherche de typeahead dans les cartes adaptatives dans une application Microsoft Teams à l’aide de Bot Framework et de la bibliothèque IA Teams. | View | View | View |
Bot conversationnel avec IA : Chef Teams | Cet exemple montre comment incorporer un comportement de bot conversationnel de base dans Microsoft Teams. Le bot est conçu pour permettre à GPT de faciliter la conversation en son nom, en utilisant uniquement un fichier d’invite en langage naturel pour le guider. | View | View | |
Extensions de message : GPT-ME | Cet exemple est une extension de message (ME) pour Microsoft Teams qui utilise le modèle text-davinci-003 pour aider les utilisateurs à générer et mettre à jour des publications. | View | View | View |
Bot léger | Cet exemple illustre un comportement de bot conversationnel plus complexe dans Microsoft Teams. Le bot est conçu pour permettre à GPT de faciliter la conversation en son nom et les réponses définies manuellement, et mappe les intentions de l’utilisateur aux actions définies par l’utilisateur. | View | View | View |
Lister le bot | Cet exemple montre comment incorporer un comportement de bot conversationnel de base dans Microsoft Teams. Le bot exploite la puissance de l’IA pour simplifier votre flux de travail et mettre de l’ordre dans vos tâches quotidiennes, et présente les fonctionnalités de chaînage d’actions. | View | View | View |
Bot DevOps | Cet exemple montre comment incorporer un comportement de bot conversationnel de base dans Microsoft Teams. Le bot utilise le modèle gpt-3.5-turbo pour discuter avec les utilisateurs de Teams et effectuer des actions DevOps telles que créer, mettre à jour, trier et synthétiser des éléments de travail. | View | View | View |
Vingt questions | Cet exemple montre les capacités incroyables des modèles de langage et le concept d’intention utilisateur. Mettez au défi vos compétences en tant que joueur humain et essayez de deviner un secret en 20 questions, tandis que le bot alimenté par l’IA répond à vos questions sur le secret. | View | View | View |
Assistant de professeur de mathématiques | Cet exemple montre comment créer une expérience conversationnelle de base à l’aide des API Assistants d’OpenAI. Il utilise l’outil Interpréteur de code d’OpenAI pour créer un assistant expert en mathématiques. | View | View | View |
Assistant de commandes alimentaires | Cet exemple montre comment créer un assistant conversationnel qui utilise des outils pour appeler des actions dans le code de vos bots. Il s’agit d’une commande de nourriture assistant pour un restaurant fictif appelé The Pub et est capable d’interactions complexes avec l’utilisateur à mesure qu’il prend sa commande. | View | View | View |