Guide d'API LLM simulée
Créez gratuitement des endpoints LLM en streaming qui imitent OpenAI, Claude et d'autres fournisseurs IA. Construisez et testez vos fonctionnalités IA sans dépenser des milliers en appels d'API.
Premiers pas
La création d'un endpoint LLM en streaming simulé prend moins de 30 secondes. Suivez ces étapes simples :
- 1
Visitez la page LLM Mock
Rendez-vous sur mockapi.dog/llm-mock. Un code unique de 6 caractères est généré automatiquement pour votre endpoint.
- 2
Choisissez le profil de fournisseur LLM
Sélectionnez le format de réponse du fournisseur à émuler :
- • OpenAI - Format de l'API Chat Completions ou de l'API Responses, selon le chemin appelé par votre SDK
- • Anthropic Claude - Format de streaming de l'API Messages
- • Stream générique - Flux de tokens indépendant du fournisseur
- • JSON générique - Réponse JSON simple (sans streaming)
- 3
Sélectionnez le mode de contenu
Choisissez comment le contenu de la réponse est généré :
- • Généré - Génération automatique de texte de type LLM (style Chat, Technique ou Markdown)
- • Statique - Utilise votre texte tel quel, sans modification
- • Hybride - Votre texte suivi d'une continuation générée
- 4
Configurez la génération de tokens (facultatif)
Pour les modes Généré ou Hybride, définissez les tokens minimum et maximum (10-2000, 100-300 par défaut). La longueur du texte généré sera aléatoire entre ces valeurs. Inutile pour le mode Statique.
- 5
Validez la vérification et enregistrez
Effectuez la vérification Turnstile, puis cliquez sur « Enregistrer l'endpoint simulé ». L'URL de votre endpoint est automatiquement copiée !
https://abc123.mockapi.dog/v1/chat/completions
Et voilà ! Démarrez le streaming immédiatement
Votre endpoint est prêt à l'emploi. Remplacez la baseURL OpenAI/Claude par votre endpoint simulé et commencez à tester. Aucune authentification ni clé d'API requise.
Le problème du coût
Les véritables API LLM sont coûteuses. Pendant le développement, les tests et le prototypage, les coûts peuvent rapidement déraper. Voici ce que vous paieriez chez les vrais fournisseurs :
OpenAI GPT-4
CoûteuxExemple : Tester un chatbot avec 1000 conversations (500 tokens en moyenne chacune) = 20 $ et plus
Anthropic Claude
OnéreuxPipeline CI/CD : Exécuter des tests 100 fois par jour = 300 $ et plus/mois
Avec MockAPI Dog : 0 $
Réponses en streaming gratuites pour le développement et les tests. Économisez des milliers en phase de développement. Passez aux vraies API uniquement lorsque vous êtes prêt pour la production.
Pourquoi utiliser une API LLM simulée ?
Économisez de l'argent
Évitez de dépenser des milliers de dollars en développement. Testez votre interface, votre logique de streaming et votre gestion d'erreurs sans consommer de crédits d'API.
- Aucune clé d'API ni configuration de facturation requise
- Requêtes gratuites pendant le développement
- Idéal pour les développeurs indépendants et les startups
Tests instantanés
Testez les réponses en streaming, les animations d'interface et les états d'erreur instantanément, sans subir la latence des vrais modèles ni les limites de débit des fournisseurs.
- Vitesse de réponse et tokens configurables
- Testez les cas limites et scénarios d'erreur
- Inspectez en direct les requêtes envoyées par votre application
Plusieurs fournisseurs
Testez votre application avec différents fournisseurs LLM sans gérer plusieurs clés d'API. Basculez entre OpenAI, Claude et formats génériques sans effort.
- Endpoints compatibles OpenAI
- Prise en charge du format Anthropic Claude
- Format de streaming SSE générique
Intégration CI/CD
Exécutez des tests automatisés dans votre pipeline CI/CD sans vous soucier des coûts d'API ou des limites de débit. Testez vos fonctionnalités IA à chaque commit.
- Aucune authentification requise
- Réponses cohérentes et prévisibles
- Exécution rapide pour un retour immédiat
Fournisseurs pris en charge
MockAPI Dog prend en charge les formats de streaming des fournisseurs LLM populaires. Définissez simplement votre endpoint comme baseURL dans votre SDK préféré.
Format OpenAI
Compatible avec le SDK officiel d'OpenAI. Un même endpoint répond à l'API Chat Completions et à l'API Responses, en streaming ou non. Les réponses indiquent le modèle gpt-5.4 et, avec Chat Completions, stream_options.include_usage ajoute un fragment final contenant l'usage.
Format Anthropic
Compatible avec le SDK officiel d'Anthropic. Émule l'API Messages, en streaming ou non, avec la séquence d'événements attendue par le SDK. Les réponses indiquent le modèle claude-sonnet-5.
Format SSE générique
Format standard Server-Sent Events (SSE). Chaque événement contient {"token": "..."} et le flux se termine par {"done": true}. À utiliser avec n'importe quel client de streaming ou pour bâtir votre propre intégration.
- Intégrations LLM personnalisées
- Tests d'implémentations EventSource
- Apprentissage des protocoles de streaming
Comment les requêtes atteignent votre endpoint
Les SDK ajoutent leur propre chemin à la baseURL. MockAPI Dog retire ces suffixes avant la correspondance : définissez donc la baseURL exactement sur l'URL enregistrée.
POST https://xyz789.mockapi.dog/llm/chat/completions → /llm- Les profils génériques correspondent exactement au chemin enregistré : appelez donc directement cette URL.
- Les endpoints LLM sont enregistrés en POST, la méthode utilisée par tous les SDK.
Streaming ou JSON ?
Une réponse est diffusée en streaming si le corps de la requête contient "stream": true. Si le corps n'a pas de champ stream, elle l'est lorsque l'en-tête Accept inclut text/event-stream. Sinon, vous obtenez une réponse JSON unique.
Modes de contenu
Choisissez la façon dont votre endpoint LLM simulé génère le contenu de la réponse. Chaque mode offre un contrôle différent sur le texte diffusé.
Généré
Génère automatiquement du texte de type LLM dans différents styles. Choisissez entre Chat (ton conversationnel), Technique (orienté programmation) ou Markdown (formaté avec listes et blocs de code).
Statique
Utilise votre texte exact comme réponse. Le texte est diffusé tel qu'il est écrit, sans génération ni modification.
Hybride
Combine votre texte avec une continuation générée automatiquement. Votre texte est diffusé en premier, suivi d'un contenu généré de type LLM.
Styles de texte pour le contenu généré
En mode Généré ou Hybride, vous pouvez choisir entre les styles Chat (conversationnel), Technique (orienté programmation) ou Markdown (incluant le formatage, les listes et les blocs de code).
Paramètres de génération de tokens
Affinez la façon dont votre endpoint LLM simulé génère et diffuse les tokens pour répondre à vos besoins de test.
Nombre de tokens
Définissez le nombre de tokens à générer, estimé à environ 4 caractères par token. Utile pour tester différentes longueurs de réponses.
Vitesse de streaming
Le texte est diffusé par fragments de 5-20 caractères. Définissez un délai minimum et maximum entre les fragments (10-500 ms) : chaque délai est tiré au hasard dans cette plage. Laissé vide, il vaut 30-120 ms par défaut.
Astuce de pro
Testez à différentes vitesses pour vous assurer que votre interface gère élégamment le streaming rapide comme le lent. Les vraies API LLM peuvent varier considérablement en temps de réponse.
Exemples de code
Voici comment utiliser votre endpoint LLM simulé avec des SDK et bibliothèques populaires.
SDK OpenAI
Remplacez la baseURL par votre endpoint simulé. Aucune clé d'API requise !
import OpenAI from 'openai'; const openai = new OpenAI({baseURL: 'https://xyz789.mockapi.dog/llm',apiKey: 'dummy-api-key', // Mock endpoint doesn't check API keys }); async function main() { const stream = await openai.chat.completions.create({ model: 'gpt-5.4', messages: [{ role: 'user', content: 'Hello!' }], stream: true, }); for await (const chunk of stream) { const content = chunk.choices[0]?.delta?.content || ''; process.stdout.write(content); } } main();
SDK OpenAI (API Responses)
Le même endpoint répond aussi à l'API Responses. Lisez le texte dans les événements response.output_text.delta.
import OpenAI from 'openai'; const openai = new OpenAI({baseURL: 'https://xyz789.mockapi.dog/llm',apiKey: 'dummy-api-key', // Mock endpoint doesn't check API keys }); async function main() { const stream = await openai.responses.create({ model: 'gpt-5.4', input: 'Hello!', stream: true, }); for await (const event of stream) { if (event.type === 'response.output_text.delta') { process.stdout.write(event.delta); } } } main();
SDK Anthropic
Utilisez le SDK Anthropic en définissant une baseURL personnalisée.
import Anthropic from '@anthropic-ai/sdk'; const anthropic = new Anthropic({baseURL: 'https://xyz789.mockapi.dog/claude',apiKey: 'dummy-api-key', // Mock endpoint doesn't check API keys }); async function main() { const stream = await anthropic.messages.stream({ model: 'claude-sonnet-5', max_tokens: 1024, messages: [{ role: 'user', content: 'Hello!' }], }); for await (const chunk of stream) { if (chunk.type === 'content_block_delta' && chunk.delta.type === 'text_delta') { process.stdout.write(chunk.delta.text); } } } main();
Fetch générique (SSE)
À utiliser avec du JavaScript/TypeScript natif pour une flexibilité maximale.
async function streamResponse() {const response = await fetch('https://xyz789.mockapi.dog/llm/stream', {method: 'POST', headers: { 'Content-Type': 'application/json', }, body: JSON.stringify({ prompt: 'Hello, world!', stream: true, // without this (or Accept: text/event-stream) you get plain JSON }), }); const reader = response.body?.getReader(); const decoder = new TextDecoder(); while (true) { const { done, value } = await reader.read(); if (done) break; const chunk = decoder.decode(value); const lines = chunk.split('\n'); for (const line of lines) { if (line.startsWith('data: ')) { try { const json = JSON.parse(line.slice(6)); if (json.done) return; console.log(json.token); } catch (e) { // Skip invalid JSON } } } } } streamResponse();
C'est aussi simple que ça !
Remplacez simplement la baseURL et c'est parti. Votre code existant fonctionnera sans modifications.
Cas d'usage concrets
Développement de chatbots
Construisez et testez des interfaces de chatbot sans dépenser en appels d'API. Testez le fil des messages, les animations de streaming et la gestion des erreurs.
- Tester les animations de messages en streaming
- Vérifier le fil de conversation
- Déboguer les cas limites de l'interface
Tests et QA
Exécutez des tests automatisés et manuels sans frais d'API. Testez différents scénarios de réponse et cas limites de manière cohérente.
- Tests E2E automatisés en CI/CD
- Données de test cohérentes
- Exécution rapide des tests
Apprentissage et tutoriels
Apprenez l'intégration IA sans dépenser. Idéal pour les tutoriels, les cours et le contenu pédagogique.
- Pas de configuration de clé d'API pour les étudiants
- Pratique gratuite
- Environnement d'apprentissage sécurisé
MVP et démos
Construisez des preuves de concept et des démos sans coûts initiaux. Présentez votre vision aux investisseurs et parties prenantes avant d'investir dans des API de production.
- Prototypage rapide
- Démos pour investisseurs
- Validez vos idées à moindre coût
Fonctionnalités avancées
Request Inspector
Activez la journalisation pour suivre en direct les prompts, en-têtes et paramètres envoyés par votre application. Les en-têtes Authorization et cookie sont masqués, mais les autres, comme x-api-key, sont stockés tels quels : utilisez donc une clé d'API factice.
Délais configurables
Ajoutez un délai fixe avant le début de la réponse et ajustez la vitesse de streaming, pour tester les états de chargement et la gestion des timeouts.
Simulation d'erreurs
Faites échouer un pourcentage de requêtes ou déclenchez une erreur à la demande via un en-tête de requête, avec des codes de statut comme 401, 429 ou 503. Les erreurs sont envoyées en JSON avant tout streaming : votre SDK les lève donc comme des erreurs d'API.
Aucune authentification
Les endpoints simulés ne nécessitent ni clés d'API ni authentification. Idéal pour les pipelines CI/CD et les démos publiques.
Dépannage
Le streaming ne fonctionne pas
Une réponse n'est diffusée en streaming que si le corps de la requête contient "stream": true, ou s'il n'a pas de champ stream et que l'en-tête Accept inclut text/event-stream. Sinon, l'endpoint renvoie une réponse JSON unique. Vérifiez aussi que votre client lit la réponse comme un flux.
// Make sure to set stream: true
const stream = await openai.chat.completions.create({
stream: true, // This is required!
// ...
});Réponse trop rapide/lente
Ouvrez les « Paramètres de délais, vitesse de streaming et simulation d'erreurs » et modifiez les délais min et max dans l'onglet « Vitesse de streaming ». Vérifiez aussi l'onglet « Délais » pour un délai fixe avant la réponse.
Problèmes de compatibilité du SDK
Assurez-vous que le profil de fournisseur de l'endpoint correspond à votre SDK (le SDK OpenAI nécessite le profil OpenAI, le SDK Anthropic le profil Anthropic). Définissez la baseURL sur l'URL enregistrée et laissez le SDK ajouter son propre chemin.
Erreurs CORS dans le navigateur
Les endpoints simulés sont configurés avec des en-têtes CORS permissifs. Si vous obtenez encore des erreurs CORS, vérifiez vos en-têtes de requête et assurez-vous de ne pas envoyer d'en-têtes restreints.
Le SDK reçoit une erreur 404 Not Found
Les endpoints LLM ne répondent qu'aux requêtes POST vers le chemin enregistré suivi du suffixe propre au SDK. Le corps de la 404 indique le code, la ressource et la méthode reçus par le serveur : comparez-les avec votre endpoint enregistré.
Les requêtes renvoient 429 Too Many Requests
Chaque endpoint a une limite quotidienne d'appels. Une fois atteinte, les appels renvoient 429 avec la limite et une heure resetAt (minuit, heure du serveur) dans le corps. Chaque adresse IP est aussi limitée à 100 requêtes par minute sur l'ensemble du service.
Conseils et bonnes pratiques
Testez à différentes vitesses
Les vraies API LLM varient en vitesse. Testez votre interface avec un streaming rapide et lent pour garantir une expérience utilisateur fluide en toutes conditions.
Utilisez des variables d'environnement
Stockez votre baseURL dans des variables d'environnement. Basculez entre les API simulées et de production en changeant une seule variable.
// .env.development
OPENAI_BASE_URL=https://xyz789.mockapi.dog/llm
// .env.production
OPENAI_BASE_URL=https://api.openai.com/v1Testez les scénarios d'erreur
Ne testez pas seulement les chemins heureux. Utilisez la simulation d'erreurs pour tester les limites de débit (429), les échecs d'authentification (401) et les pannes (503), et un délai fixe pour tester les timeouts.
Workflow de développement LLM
Suivez ce workflow pour un développement IA efficace :
- Construisez l'interface et la logique de streaming avec des endpoints simulés
- Testez à fond avec différents modes de contenu et vitesses
- Exécutez des tests automatisés en CI/CD avec des endpoints simulés
- Passez à la vraie API uniquement pour les tests d'intégration finaux
- Déployez avec des clés d'API de production
Validez avant la production
Avant de basculer sur les API de production, validez votre implémentation avec l'API réelle du fournisseur dans un environnement de staging pour détecter toute différence de comportement.
Glossaire
LLM (Large Language Model)
Modèles d'IA comme GPT-4 et Claude qui génèrent des réponses textuelles proches du langage humain. Exemples : la série GPT d'OpenAI, Claude d'Anthropic, Gemini de Google.
API en streaming
Une API qui envoie les données par fragments plutôt que d'attendre la réponse complète. Permet l'affichage en temps réel du texte généré par l'IA au fur et à mesure de sa création.
Token
L'unité de base du texte dans les LLM. Approximativement équivalent à un mot ou un fragment de mot. La tarification des LLM est généralement basée sur le nombre de tokens.
SSE (Server-Sent Events)
Une technologie qui permet aux serveurs d'envoyer des données aux clients en temps réel. Utilisée par les API LLM pour diffuser leurs réponses.
baseURL
L'adresse de base pour les requêtes API. Remplacez-la par l'URL de votre endpoint simulé pour rediriger les requêtes vers MockAPI Dog au lieu du vrai fournisseur.
Fournisseur
Sociétés qui proposent des API LLM, telles qu'OpenAI (GPT), Anthropic (Claude), Google (Gemini), etc.
Prêt à commencer à construire ?
Créez votre premier endpoint LLM en streaming simulé en quelques secondes. Sans inscription, sans carte bancaire, sans complications. Commencez à développer des fonctionnalités IA sans dépenser des milliers en appels d'API.