Try OpenAI's latest and smartest model o1

Try it now

Table of Contents

    Comment réparer les limites de taux et les erreurs de temporisation d'OpenAI.

    Les LLM commencent à être utilisés dans une grande variété de cas d'utilisation. Il s'agit notamment de la traduction, de l'analyse des sentiments, de la génération de codes, de blogs, d'e-mails, etc. Cependant, l'intégration directe de l'API OpenAI dans votre production pose quelques problèmes car elle est relativement nouvelle. Ses API ne fournissent pas de SLA ni de garantie de temps de fonctionnement, ni même de performance du service. Il y a encore des limites de taux sur les tokens par seconde et les requêtes par seconde.

    Les LLM commencent à être utilisés dans une grande variété de cas d'utilisation. Cependant, l'intégration directe de l'API OpenAI dans votre production pose quelques problèmes car elle est relativement récente. Ses API ne fournissent pas de SLA ni de garantie de temps de fonctionnement, ni même de performance du service. Il y a encore des limites de taux sur les tokens par seconde et les requêtes par seconde.

    OpenAI recommande d'utiliser diverses techniques pour atténuer ce problème. Examinons-en quelques-unes brièvement.

    Backoff exponentiel

    Le backoff exponentiel est une stratégie utilisée pour gérer les limites de taux en augmentant progressivement le temps entre les tentatives ultérieures dans le cas d'une erreur de limitation de taux. Voici un exemple en Node.Js :

    const axios = require('axios') ; // Assurez-vous d'installer axios avec npm ou yarn. const BASE_URL = 'https://api.openai.com/v1/chat/completions' ; async function makeRequestWithBackoff(endpoint, params, retries = 3, backoffDelay = 500) { try { const response = await axios.post(endpoint, params, { headers : { 'Content-Type' : 'application/json', 'Authorization' : `Bearer YOUR_OPENAI_API_KEY`, }, }) ; return response.data ; } catch (error) { if (error.response && error.response.status === 429 && retries > 0) { // 429 est le code de statut HTTP pour Too Many Requests // Attendez un délai aléatoire qui augmente exponentiellement à chaque tentative const delay = Math.random() * backoffDelay ; console.log(`Rate limit hit, retrying in ${delay}ms`) ; await new Promise((resolve) => setTimeout(resolve, delay)) ; return makeRequestWithBackoff(endpoint, params, retries - 1, backoffDelay * 2) ; } else { // S'il ne s'agit pas d'une erreur de limite de taux ou si nous n'avons plus de tentatives, nous lançons l'erreur throw error ; } } } const params = { messages : [ {role : "user", content : "Hi, Who are you ?" } ] max_tokens : 50, model : "gpt-3.5-turbo" } ; makeRequestWithBackoff(BASE_URL, params) .then(data => console.log(data)) .catch(error => console.error(error)) ;
    

    Vous pouvez même modifier la logique pour remplacer le backoff exponentiel par un backoff linéaire ou aléatoire.

    Batching

    OpenAI permet également les requêtes par lots sur le point de terminaison /completions. Cela peut fonctionner si vous avez des requêtes par seconde mais que vous n'avez pas de tokens par seconde. Mais n'oubliez pas que cette API est en train d'être dépréciée. En utilisant le même exemple que ci-dessus :

    const BASE_URL = "https://api.openai.com/v1/completions" ; const params = { model : "curie", prompts : [ "Il était une fois un chien", "Il était une fois un chat", "Il était une fois un humain" ] } ; makeRequestWithBackoff(BASE_URL, params) .then(data => console.log(data)) .catch(error => console.error(error)) ;
    

    Il existe d'autres techniques que vous pouvez utiliser en plus de celles-ci.

    Mise en cache

    Souvent, vos utilisateurs font les mêmes requêtes. Une couche de mise en cache simple ou sémantique au-dessus de votre requête peut vous aider à réduire les coûts et le temps de requête. Mais dans ce contexte, cela réduira les appels faits à OpenAI.

    Passer d'OpenAI à Azure.

    Vous pouvez demander à bénéficier du service OpenAI d'Azure et mettre en place un équilibrage de charge entre les deux fournisseurs. Ainsi, même si l'un d'entre eux est en panne ou lent, vous pouvez passer à l'autre fournisseur.

    Réponses en continu

    L'API OpenAI fournit une fonction de streaming qui nous permet de recevoir les réponses partielles du modèle en temps réel, au fur et à mesure qu'elles sont générées. Cette approche offre un avantage significatif par rapport aux appels traditionnels sans flux, où vous pourriez ne pas être au courant des délais potentiels jusqu'à ce que la durée totale de la réponse s'écoule, ce qui peut varier en fonction de vos paramètres initiaux tels que la complexité de la demande et le nombre de max_tokens spécifiés.

    La diffusion en continu garantit que, quelle que soit la taille de la demande ou le nombre max_tokens défini, le modèle commence à fournir des jetons généralement dans les 5 à 6 premières secondes. S'il y a un délai au-delà de cette brève fenêtre, c'est un indicateur précoce que la demande peut avoir dépassé le temps imparti ou qu'elle n'a pas été traitée comme prévu. Nous pouvons mettre fin à ces demandes et les réessayer.

    Mise en place de solutions de repli

    Pour les cas d'utilisation spécifiques où il est acceptable d'obtenir des réponses d'autres modèles, vous pouvez mettre en place des fallbacks vers d'autres modèles. Les meilleures alternatives pourraient être Llama-70b, Gemini, ou d'autres modèles plus petits comme MIXTRAL 8X7B, Claude Instant, etc. Il s'agit là de quelques techniques courantes qui peuvent être utilisées pour atténuer les erreurs dans les applications de production.

    Merci de votre lecture et suivez-nous sur Merlin @ Twitter Merlin API propose toutes ces fonctionnalités et bien plus encore, avec un choix de plus de 20 modèles. Nous nous concentrons sur la fiabilité de l'API et nous nous chargeons de toutes les opérations de commutation, de repli, de mise en cache et de gestion des limites de débit. Nous fournissons une API unifiée et utilisons un format de réponse unique pour tous les modèles.

    Un petit exemple d'utilisation de l'API Merlin avec Node.js :

    import { Merlin } from "merlin-node" ; // npm install merlin-node // WARNING : test api key // Replace with your API key from Merlin Dashboard // https://api.getmerlin.in const apiKey = "merlin-test-3b7d-4bad-9bdd-2b0d7db3dcb6d" ; const Merlin = new Merlin({ merlinConfig : { apiKey } }) ; const initChat = { role : "system", content : "Vous êtes un assistant utile". 
    } async function createCompletion() { try { const completion = await Merlin.chat.completions.create({ messages : [initChat], model : "gpt-3.5-turbo", // 20+ modèles selon les besoins }) ; } catch (error) { console.error("Error creating completion :", error) ; } } createCompletion() ;
    

    Experience the full potential of ChatGPT with Merlin

    Author
    Kalpna Thakur

    Kalpna Thakur

    She is Marketing powerhouse of Merlin AI, Automation master & Growth extraordinaire, brings 10X growth with every initiative!

    Published on : 19th December 2023, Tuesday

    Last Updated : 18th December 2024, Wednesday

    Read more blogs

    Cover Image for OpenAI O1 : Un nouveau paradigme dans l'IA
    OpenAI O1 : Un nouveau paradigme dans l'IA
    2024-09-12 | 3 min. read
    OpenAI a lancé un nouveau modèle phare appelé O1, qui peut "raisonner" sur lui-même, ce qui ouvre la voie à un nouveau paradigme en matière d'IA et de LLM.
    Cover Image for ChatGPT 4 Vs ChatGPT 4o | GPT 4o est-il meilleur que GPT 4 ?
    ChatGPT 4 Vs ChatGPT 4o | GPT 4o est-il meilleur que GPT 4 ?
    2024-06-03 | 7 min. read
    Vous êtes-vous déjà demandé si ChatGPT-4o était vraiment une amélioration par rapport à ChatGPT-4 ? Vous n'êtes pas le seul. Dans ce blog, nous nous penchons sur les détails les plus infimes qui distinguent ces deux modèles d'IA.
    Cover Image for Conseils d'initiés : Comment dominer avec GPT-4, GPT-4 Turbo et GPT-4o
    Conseils d'initiés : Comment dominer avec GPT-4, GPT-4 Turbo et GPT-4o
    2024-05-30 | 6 min. read
    Imaginez que vous ayez à portée de main la puissance des modèles d'IA de pointe. Ce guide vous explique les tenants et les aboutissants de l'utilisation de GPT-4, GPT-4 Turbo et GPT-4o. Que vous soyez un passionné de technologie ou un professionnel cherchant à tirer parti de l'IA pour vos projets, nous vous fournirons des informations pratiques et des instructions étape par étape.
    Cover Image for Obtenez ChatGPT-4o GRATUITEMENT avec un nombre illimité d'invites ! - Comment utiliser GPT 4o
    Obtenez ChatGPT-4o GRATUITEMENT avec un nombre illimité d'invites ! - Comment utiliser GPT 4o
    2024-05-28 | 7 min. read
    Ce guide complet vous guidera à travers les meilleures méthodes pour maximiser votre utilisation du puissant modèle de langage d'OpenAI sans dépenser un centime. Améliorez votre création de contenu, automatisez des tâches et exploitez le potentiel illimité de l'IA grâce à nos instructions pas à pas et à nos précieux conseils.
    Cover Image for L'art de poser les bonnes questions à ChatGPT : Découvrez les caractéristiques cachées des Chatbots en 2024
    L'art de poser les bonnes questions à ChatGPT : Découvrez les caractéristiques cachées des Chatbots en 2024
    2024-05-27 | 7 min. read
    Maîtriser l'art de questionner les ChatGPT peut considérablement améliorer vos interactions et vos résultats. Apprenez à exploiter les capacités nuancées des chatbots, vous permettant d'accéder à des caractéristiques et fonctionnalités cachées qui rendront vos interactions plus productives et perspicaces en 2024. Des astuces pratiques aux conseils d'experts, ce guide est la clé qui vous permettra d'améliorer votre expérience avec les chatbots.
    Cover Image for Meilleures suggestions de ChatGPT pour la rédaction d'une recherche que vous devez connaître
    Meilleures suggestions de ChatGPT pour la rédaction d'une recherche que vous devez connaître
    2024-04-29 | 5 min. read
    Déverrouillez la puissance de ChatGPT avec des invites personnalisées ! Rationalisez vos interactions, gagnez du temps, obtenez des réponses adaptées à tous vos besoins, et bien plus encore.
    Cover Image for GPT-4 vs GPT-4 Turbo : Lequel utiliser ?
    GPT-4 vs GPT-4 Turbo : Lequel utiliser ?
    2024-04-16 | 6 min. read
    Les modèles GPT-4 et GPT-4 Turbo AI façonnent le paysage de l'IA grâce à leurs caractéristiques avancées. Il existe néanmoins des différences en fonction du cas d'utilisation, de la vitesse, de l'efficacité et du coût. Dans ce blog, vous découvrirez ces différences en détail afin de faire le choix qui vous convient le mieux.
    Cover Image for Les meilleurs outils d'IA pour les enseignants de l'enseignement supérieur
    Les meilleurs outils d'IA pour les enseignants de l'enseignement supérieur
    2024-04-16 | 6 min. read
    Découvrez les meilleurs outils d'IA pour les éducateurs ! Personnalisez l'apprentissage, augmentez la productivité et créez des leçons attrayantes sans effort pour les étudiants afin de rendre l'apprentissage passionnant.