Recherche

OpenAI ouvre l'accès API à ChatGPT : petit aide-mémoire

L'API OpenAI donne désormais accès au modèle sous-jacent de ChatGPT. Dans quelles conditions ?

Publié par Clément Bohic le - mis à jour à
Lecture
4 min
  • Imprimer
OpenAI ouvre l'accès API à ChatGPT : petit aide-mémoire

Il y a du nouveau sur l'API OpenAI. Elle permet désormais d'exploiter ChatGPT... ou plus précisément le modèle sur lequel se fonde le chatbot. Voici quelques éléments d'information.

À quel(s) modèle(s) peut-on accéder ?

À la famille dite « Turbo ». Elle comprend pour le moment un modèle GPT-3.5. Entraîné sur des données allant jusqu'à septembre 2021, il est disponible sous deux formes. D'un côté, la version « stable ». De l'autre, un snapshot qui sera pris en charge pendant trois mois.

La version stable recevra des mises à jour régulières, à l'instar de ChatGPT. La prochaine doit intervenir en avril.

Comment y accéder et pour quoi faire ?

Il faut utiliser le point de terminaison /chat/completions. Un chemin d'accès qui rappelle que GPT-3.5 Turbo, quoique optimisé pour le format chat, fonctionne aussi pour de la simple complétion de texte.

En la matière, il est, affirme OpenAI, aussi puissant que la référence Davinci (text-davinci-003). Mais dix fois moins cher : 0,002 $ par lot de 1000 tokens (données d'entrée + données de sortie).

GPT-3.5 Turbo n'utilise toutefois pas le même format de requête que Davinci. Pour qui a déjà utilisé ce dernier, il y a donc un petit travail de réécriture.

L'entrée principale est le paramètre « messages ». Chacun des objets qu'on y intègre est associé à un rôle : « système », « utilisateur » ou « assistant ». Le rôle « système » aide à définir le comportement du modèle. Le rôle « assistant » permet de rappeler de précédentes réponses (la « mémoire » du modèle étant limitée à 4096 tokens) et éventuellement de donner des exemples de comportement souhaité.

Ci-dessous, une requête adressable à Davinci.

Translate the following English text to French: "{text}"

Son équivalent à destination de GPT-3.5 Turbo pourrait ressembler à ce qui suit.

[
{"role": "system", "content": "You are a helpful assistant that translates English to French."},
{"role": "user", "content": 'Translate the following English text to French: "{text}"'}
]

Qu'est-ce que ChatML ?

Sous le capot, GPT-3.5 Turbo utilise son propre format structuré : Chat Markup Language (ChatML). Chaque séquence de messages y a son en-tête, destiné à fournir des métadonnées (pour le moment, uniquement l'identité du locuteur).

L'API dispense d'utiliser ChatML, mais OpenAI songe à y donner accès. Il l'a déjà ouvert à l'expérimentation dans son bac à sable.

[
{'token': '<|im_start|>'},
'system\nYou are ChatGPT, a large language model trained by OpenAI. Answer as concisely as possible.\nKnowledge cutoff: 2021-09-01\nCurrent date: 2023-03-01',
{'token': '<|im_end|>'}, '\n', {'token': '<|im_start|>'},
'user\nHow are you',
{'token': '<|im_end|>'}, '\n', {'token': '<|im_start|>'},
'assistant\nI am doing well!',
{'token': '<|im_end|>'}, '\n', {'token': '<|im_start|>'},
'user\nHow are you now?',
{'token': '<|im_end|>'}, '\n'
]

Tout comme avec l'API, on peut exploiter ChatML sur d'autres formats que la discussion.

[
{'token': '<|im_start|>'},
'user\nList off some good ideas:',
{'token': '<|im_end|>'}, '\n', {'token': '<|im_start|>'},
'assistant'
]

 

Quelles sont les conditions d'utilisation ?

Quelques clauses ont évolué avec l'ouverture de l'« API ChatGPT ». En tête de liste, l'exploitation des données des utilisateurs à des fins d'amélioration du service. Depuis le 1er mars, OpenAI n'y recourt que si on l'y autorise explicitement (opt-in).

Par défaut, les données effectivement envoyées seront conservées pendant 30 jours, à des fins de détection des abus. OpenAI affirme que les entreprises qui sont sur des cas d'usage peu susceptibles de produire de tels abus pourront demander une exemption.

À souligner également les clarifications quant à la propriété des données : l'utilisateur possède aussi bien celles envoyées au modèle que celles reçues.

Précision : en l'état, on ne peut pas entraîner GPT-3.5 Turbo avec ses propres données.

Peut-on bénéficier de ressources de calcul dédiées ?

Cette option, dont on a eu vent fin février, est effectivement disponible... sur demande à OpenAI. Lequel fournit peu de détails à son propos, sinon qu'elle « peut faire sens économiquement à partir d'environ 450 millions de tokens par jour ».

Les informations qui ont filtré concernant cette offre laissent entrevoir la possibilité d'accéder, en plus de GPT-3.5 Turbo, à des versions « boostées » de Davinci. Dont une disposant d'un historique de 32 000 tokens.

Le contrôle des versions est par ailleurs activé. Un SLA à retenir : 99,5 % de disponibilité pour toutes les instances, avec un support technique par téléphone.

Qu'est-ce que Whisper ?

L'autre modèle qu'OpenAI vient d'intégrer à son API publique. Il est disponible sur les endpoints /transcriptions (reconnaissance vocale) et /translations (traduction en anglais). On l'alimente avec des fichiers audio ou vidéo (m4a, mp3, mp4, mpeg, mpga, wav, webm) de 25 Mo maximum.

Pour le moment, on peut accéder à une version de Whisper : la plus puissante (large-v2). C'est celle qu'OpenAI a mise en open source en septembre dernier.

Whisper a été entraîné sur une centaine de langues. Mais il ne fonctionne officiellement que sur une soixantaine d'entre elles (OpenAI a éliminé celles pour lesquelles le taux d'erreurs est supérieur à 50 %).

Un prix à retenir : 0,006 $ par minute d'audio. On peut guider le modèle en ajoutant des consignes textuelles : éléments de compréhension de termes problématiques (le peintre Dalí vs le modèle DALL-E, par exemple), rappel de la transcription d'un segment précédent, notions d'orthotypographie...

Illustration principale générée par IA

Sur le même thème

Voir tous les articles Data & IA
Les Podcasts de Splunk
sponsorisé
Gestion de crises : les leçons d’un DSI

Livres Blancs

Voir tous les livres blancs

Vos prochains événements

Voir tous les événements

Voir tous les événements

S'abonner
au magazine
Se connecter
Retour haut de page