Partager via


API Assistants Azure OpenAI (préversion)

Les assistants, une nouvelle fonctionnalité Azure OpenAI Service, sont désormais disponibles en avant-première publique. L'API Assistants permet aux développeurs de créer plus facilement des applications avec des expériences sophistiquées de type copilote qui peuvent analyser des données, suggérer des solutions et automatiser des tâches.

  • Les assistants peuvent appeler des modèles Azure OpenAI avec des instructions spécifiques pour optimiser leur personnalité et leurs capacités.
  • Les assistants peuvent accéder à plusieurs outils en parallèle. Il peut s’agir à la fois d’outils hébergés par Azure OpenAI, tels que l’interpréteur de code et la recherche de fichiers, ou d’outils que vous créez et hébergez, et auxquels vous accédez via un appel de fonction.
  • Les assistants peuvent accéder à des threads persistants. Les threads simplifient le développement d’applications d’IA en stockant l’historique des messages et en le tronquant lorsque la conversation devient trop longue pour la longueur du contexte du modèle. Vous créez un thread une fois et vous y ajoutez simplement des messages lorsque vos utilisateurs répondent.
  • Les assistants peuvent accéder aux fichiers dans plusieurs formats. Soit dans le cadre de leur création, soit dans le cadre de threads entre assistants et utilisateurs. Lorsque vous utilisez des outils, les assistants peuvent également créer des fichiers (tels que des images ou des feuilles de calcul) et citer des fichiers qu’ils référencent dans les messages qu’ils créent.

Vue d’ensemble

Auparavant, la création d'assistants d'IA personnalisés nécessitait un travail considérable, même pour les développeurs expérimentés. Bien que l'API de complétion des conversations soit légère et puissante, elle est intrinsèquement sans état, ce qui signifie que les développeurs devaient gérer l'état des conversations et les fils de discussion, les intégrations d'outils, les documents d'extraction et les index, et exécuter le code manuellement.

L'API Assistants, en tant qu'évolution de l'API d'achèvement des chats, apporte une solution à ces problèmes. L’API Assistants prend en charge les threads persistants managés automatiquement. Cela signifie qu'en tant que développeur, vous n'avez plus besoin de développer des systèmes de gestion des états de conversation et de travailler autour des contraintes de la fenêtre contextuelle d'un modèle. L'API Assistants gérera automatiquement les optimisations afin de maintenir le fil d'exécution en dessous de la fenêtre de contexte maximale du modèle que vous avez choisi. Une fois que vous avez créé un fil de discussion, vous pouvez simplement y ajouter de nouveaux messages au fur et à mesure que les utilisateurs y répondent. Les assistants peuvent également accéder à plusieurs outils en parallèle, si nécessaire. Ces outils comprennent :

Conseil

Il n’y a pas de coût ou de quota supplémentaire pour l’utilisation d’assistants, sauf si vous utilisez les outils d’interpréteur de code ou de recherche de fichiers.

L’API Assistants repose sur les mêmes fonctionnalités que le produit GPT d’OpenAI. Les cas d'utilisation possibles vont de la recommandation de produits alimentée par l'IA à l'application d'analyse des ventes, en passant par l'assistant de codage, le chatbot de questions-réponses pour les employés, et bien d'autres encore. Commencez à générer sur le terrain de jeu Assistants sans code sur Azure AI Studio ou commencez à générer avec l’API.

Important

L’extraction de données non fiables en utilisant les fonctionnalités d’appel de fonction, d'interpréteur de code ou de recherche de fichiers avec entrée de fichier et de thread d’assistant peut compromettre la sécurité de votre assistant ou de l’application qui utilise l’assistant. Découvrez les approches d’atténuation ici.

Terrain de jeu des assistants

Nous fournissons une procédure pas à pas du terrain de jeu des assistants dans notre guide de démarrage rapide. Il s’agit d’un environnement sans code qui permet de tester les capacités des assistants.

Composants des assistants

Diagramme montrant les composants d’un assistant.

Composant Description
Assistant IA personnalisée qui utilise les modèles Azure OpenAI conjointement avec des outils.
Thread Session de conversation entre un assistant et un utilisateur. Les threads stockent les messages et gèrent automatiquement la troncature pour adapter le contenu au contexte d'un modèle.
Message Message créé par un assistant ou un utilisateur. Les messages peuvent contenir du texte, des images et d’autres fichiers. Les messages sont stockés sous forme de liste dans le thread.
Exécuter Activation d’un assistant pour qu’il commence à s’exécuter en fonction du contenu du thread. L'assistant utilise sa configuration et les messages du thread pour effectuer des tâches en appelant des modèles et des outils. Dans le cadre d’une exécution, l’assistant ajoute des messages au thread.
Étape d’exécution Liste détaillée des étapes de l’assistant dans le cadre d’une exécution. Un assistant peut appeler des outils ou créer des messages pendant son exécution. L’examen des étapes d’exécution vous permet de comprendre comment l’assistant parvient à ses résultats finaux.

Accès aux données des assistants

Actuellement, les assistants, les threads, les messages et les fichiers créés pour Assistants sont limités au niveau de la ressource Azure OpenAI. Par conséquent, toute personne ayant accès à la ressource Azure OpenAI ou à la clé API est en mesure de lire/écrire des assistants, des threads, des messages et des fichiers.

Nous vous recommandons vivement les contrôles d’accès aux données suivants :

  • Implémenter l’autorisation. Avant d’effectuer des lectures ou des écritures sur des assistants, des threads, des messages et des fichiers, vérifiez que l’utilisateur final est autorisé à le faire.
  • Restreindre l’accès aux ressources Azure OpenAI et à la clé API. Déterminez avec soin qui a accès aux ressources Azure OpenAI où les assistants sont utilisés, et les clés API associées.
  • Auditez régulièrement les comptes/personnes qui ont accès à la ressource Azure OpenAI. L’accès au niveau de la ressource et aux clés API permet un large éventail d’opérations, notamment la lecture et la modification de messages et de fichiers.
  • Activez les paramètres de diagnostic pour permettre le suivi à long terme de certains aspects du journal d’activité de la ressource Azure OpenAI.

Paramètres

L’API Assistants prend en charge plusieurs paramètres qui vous permettent de personnaliser la sortie des assistants. Le paramètre tool_choice vous permet de forcer l’assistant à utiliser un outil spécifié. Vous pouvez aussi créer des messages avec le rôle assistant pour créer des historiques de conversation personnalisés dans Threads. temperature, top_p et response_format vous permettent d’optimiser davantage les réponses. Pour plus d’informations, consultez la documentation de référence.

Gestion de la fenêtre de contexte

Les assistants tronquent automatiquement le texte pour s’assurer qu’il ne dépasse pas la longueur maximale du contexte du modèle. Vous pouvez personnaliser ce comportement en spécifiant le nombre maximum de jetons que vous souhaitez qu’une exécution utilise et/ou le nombre maximal de messages récents que vous souhaitez inclure dans une exécution.

Nombre maximal de jetons de complétion et de jetons de prompt

Pour contrôler l’utilisation de jetons dans une seule exécution, définissez max_prompt_tokens et max_completion_tokens lorsque vous créez l’exécution. Ces limites s’appliquent au nombre total de jetons utilisés dans toutes les complétions tout au long du cycle de vie de l’exécution.

Par exemple, le lancement d’une exécution avec max_prompt_tokens défini sur 500 et max_completion_tokens défini sur 1000 signifie que la première exécution tronquera le thread au bout de 500 jetons et limite la sortie à 1 000 jetons. Si seulement 200 jetons de prompt et 300 jetons de complétion sont utilisés lors de la première complétion, la deuxième complétion aura les limites disponibles de 300 jetons de prompt et de 700 jetons de complétion.

Si une complétion atteint la limite max_completion_tokens, l’exécution se termine avec un statut incomplet et les détails sont fournis dans le champ incomplete_details de l’objet Exécution.

Lorsque vous utilisez l’outil Recherche de fichiers, nous vous recommandons de définir max_prompt_tokens sur au moins 20 000. Pour les conversations plus longues ou des interactions multiples avec l’outil Recherche de fichiers, envisagez d’augmenter cette limite à 50 000, ou idéalement, de supprimer les limites max_prompt_tokens pour obtenir des résultats avec une qualité maximale.

Stratégie de troncation

Vous pouvez également spécifier une stratégie de troncation pour contrôler le rendu de votre thread dans la fenêtre contextuelle du modèle. L’utilisation d’une stratégie de troncation de type auto fait appel à la stratégie de troncation par défaut d’OpenAI. L’utilisation d’une stratégie de troncation de type last_messages vous permet de spécifier le nombre de messages les plus récents à inclure dans la fenêtre de contexte.

Voir aussi