Ascannio - stock.adobe.com

DevDay : OpenAI complète sa boîte à outils pour les développeurs

Agents vocaux, mise en cache automatique du contexte et fine-tuning clé en main… voilà les fonctionnalités proposées par OpenAI pour les développeurs, alors que sa direction assume de plus en plus ses velléités commerciales.

Lors de son Devday 2024 à San Francisco, OpenAI a annoncé une collection d’outils pour les développeurs et les data scientists qui exploitent ses grands modèles de langage.

La startup a d’abord présenté la bêta de l’API Realtime. Comme son nom l’indique, celle-ci doit permettre de bâtir « des expériences conversationnelles multimodales à faible latence ». Cette interface WebSocket peut prendre en charge des fichiers texte et audios en entrée et en sortie, ainsi que l’appel de fonction.

API Realtime : GPT-4o donne de la voix

Plus particulièrement, elle permettrait de développer des chatbots ou des agents vocaux, intégrés dans des applications. Selon OpenAI, les développeurs n’ont pas à convertir l’audio en texte (speech to text) comme ils peuvent le faire actuellement avec Whisper, AssemblyAI ou Gladia. Ce système « speech to speech » retourne directement un fichier audio contenant la réponse d’un modèle capable d’infléchir son ton, de rire ou encore de murmurer. Six voix prédéfinies sont accessibles.

Ce modèle porte pour le moment un nom barbare – gpt-4o-realtime-preview-2024-10-01 –, mais est dérivé de GPT 4-0. Cette technologie est similaire à ce qu’OpenAI propose avec le mode Advanced Voice de ChatGPT.

Pour l’heure, l’API prend en charge des fichiers audio PCM 16 bit 24 kHz et G. 711 8 kHz encodés en base 64. « Nous travaillerons bientôt à la prise en charge d’autres codecs audio », précise la documentation d’OpenAI.

Le modèle peut répondre à une requête par un fichier audio, un texte ou les deux. OpenAI imagine déjà ingérer des images et des vidéos en entrée. Il augmentera la limite d’utilisation actuelle (100 sessions simultanées au maximum) et fournira des SDK pour les développeurs.

L’API Chat Completions permettra également de répondre avec un fichier audio avec le modèle GPT-4o-audio-preview.

GPT-4o mini sera également adapté à l’API Realtime.

« L’API Realtime utilise à la fois des tokens texte et audio. Les jetons d’entrée de texte sont facturés à 5 $ pour 1 million d’unités, et les jetons de sortie à 20 $ pour 1 million », indique OpenAI. « L’entrée audio est facturée à 100 $ pour 1 million de tokens, et la sortie audio à 200 $ pour la même quantité d’unités. Cela équivaut à environ 0,06 $ par minute d’entrée audio et 0,24 $ par minute de sortie audio. L’audio dans l’API Chat Completions sera au même prix ».

OpenAI ne précise pas si son service est disponible en Europe, mais Azure dit héberger le LLM gpt-4o-realtime-preview-2024-10-01 dans sa région cloud suédoise (Sweden central).

Par ailleurs, Twilio, l’éditeur d’une « CPaaS » (Communication Platform-as-a-Service) l’intégrera à son set d’outils.

Ici, OpenAI marche sur les plates-bandes de Kyutai, le laboratoire de recherche en IA soutenu par Xavier Niel. La startup française avait présenté il y a quelques mois Moshi, une IA conversationnelle douée de capacités similaires.

Une mise en cache automatisée du contexte

Avec la disponibilité de Prompt Caching, le fournisseur de LLM entend proposer une capacité déjà offerte par Google Cloud avec Gemini 1.5 Pro et 1.5 Flash sous l’appellation « Context Caching ».

Comme chez GCP, OpenAI met en cache les conversations des utilisateurs et les prompts les plus utilisés par les développeurs. La promesse ? Réduire jusqu’à 80 % la latence et jusqu’à 50 % le coût des prompts les plus longs.

À la différence que chez OpenAI, ce n’est pas une option : « Prompt Caching fonctionne automatiquement sur toutes vos requêtes API (aucune modification du code n’est nécessaire) et n’entraîne pas de frais supplémentaires ».

Ce mode n’est pour le moment pas activé pour tous les LLM. Il est enclenché pour GPT-4o, mini, 01-preview et 01-mini.

En revanche, pour bénéficier de cette mise en cache, il convient de bien structurer les prompts.

« Les mises en cache ne sont possibles que pour les correspondances exactes de préfixes au sein d’un prompt », précise la documentation du fournisseur. « […]Placez le contenu statique, comme les instructions et les exemples, au début de votre prompt, et placez le contenu variable, comme les informations spécifiques à l’utilisateur, à la fin. Cette règle s’applique également aux images et aux outils, qui doivent être identiques d’une requête à l’autre ».

Cette mise en cache débute à partir de 1024 tokens et par incrément de 128 tokens au-delà.

La durée de ce service est toutefois relative. « Les évictions de cache se produisent généralement après 5 à 10 minutes d’inactivité, mais peuvent parfois persister jusqu’à une heure pendant les périodes creuses », lit-on dans la documentation. Il n’y a pas encore de fonction manuelle de nettoyage du cache.

OpenAI insiste sur le fait que les espaces de mise en cache ne sont pas partagés entre les clients.

Du Fine-tuning clé en main

Deux autres API sont consacrés au fine-tuning des LLM d’OpenAI.

Il y a d’abord Model Distillation. Celle-ci doit aider les développeurs et les data scientists à simplifier le processus de fine-tuning d’un plus petit modèle à l’aide des sorties d’un plus grand LLM.

Pour ce faire, il s’agit de bâtir une procédure de tests à travers le module Evals, disponible en bêta via une API ou une UI. OpenAI décline plusieurs critères de tests, dont la validité des fichiers JSON ou XML générés, la factualité, la qualité sémantique, etc.

Ensuite, il convient de générer des données synthétiques en appelant un LLM comme GPT-4o ou 01-preview. Ces résultats sont stockés à l’aide de l’option « store : true » de l’API Chat Completions.

Ces données peuvent être utilisées pour fine-tuner GPT-4o mini ou d’autres LLM plus petits avant d’évaluer ses résultats, de nouveau avec le module Evals. OpenAI prévient que c’est un processus itératif et qu’il faudra répéter l’opération avant d’obtenir un résultat suffisant pour la mise en production.

OpenAI assure que Model Distillation fonctionne avec l’ensemble de ses LLM, tant que l’échelle de taille est respectée. Si la génération des données de test est facturée au même prix qu’un appel API classique, il est possible d’obtenir jusqu’à sept évaluations gratuites par semaine si les usagers acceptent de partager les résultats avec OpenAI. « Les informations partagées avec nous seront utilisées pour nous aider à améliorer et à évaluer nos futurs modèles », promet le fournisseur.

Jusqu’au 31 octobre, OpenAI offre jusqu’à 2 millions de tokens gratuits par jour pour GPT-4o mini et jusqu’à 1 million de tokens quotidiens pour GPT-4o afin de tester Model Distillation.

Enfin, une API est dédiée au fine tuning visuel de GPT-4o. Il suffirait de 100 images pour améliorer les performances du LLM multimodal dans la compréhension des éléments visuels et l’accomplissement de certaines tâches. Elle a déjà été testée pour améliorer la détection de panneaux de signalisation, d’extraction de données structurées dans des documents de type PDF, ou pour générer du code utilisé afin de propulser un front-end Web.

Ce fine-tuning du VLM (Vision Language Model) peut se faire avec un maximum de 50 000 exemples contenant jusqu’à 10 images chacun. Là encore, OpenAI offre 1 million de tokens d’entraînement par jour jusqu’au 31 octobre pour fine-tuner GPT-4o avec des images.

Au-delà, l’entraînement et le fine-tuning de GPT-4o « coûtera 25 $ pour 1 million de tokens et l’inférence, 3,75 $ pour 1M de jetons d’entrée et 15 $ pour 1M de jetons de sortie ». Pour rappel, la résolution des images sert à calculer le nombre de tokens qu’elles occupent en entrée.

Un cap résolument commercial

Ces annonces incrémentales ont lieu dans un contexte particulier. La semaine dernière, Reuters dévoilait la restructuration en cours d’OpenAI. Jusqu’alors gouvernée par un conseil d’administration d’organisation à but non lucratif, l’entreprise embrasserait totalement sa vocation commerciale afin d’attirer les investisseurs. Le premier board ne disparaîtrait pas, mais conserverait une part minoritaire de la société. Sam Altman, cofondateur et CEO d’OpenAI pourrait recevoir des actions.

Le même jour de la publication de l’article de Reuters, Mira Murati, directrice technique d’OpenAI, a annoncé son départ, tout comme Barret Zoph et Bob McGrew, deux chercheurs haut placés dans l’organigramme.

Auprès de l’agence de presse, Sam Altman a nié que ces départs étaient dus au projet de restructuration. Il serait envisagé depuis plusieurs mois par le conseil d’administration. Un porte-parole l’a rapidement indiqué : OpenAI prévoit de respecter ses engagements en matière d’IA responsable. La semaine dernière également, l’entreprise signait le pacte européen sur l’IA.

Pour approfondir sur Data Sciences, Machine Learning, Deep Learning, LLM