Retour au blog
Guide technique·25 mai 2026·7 min de lecture

Construire un chatbot RAG en espagnol avec Claude — guide pratique pour l’Amérique latine et l’Espagne

Stack complet pour un RAG en espagnol : text-embedding-3-large (appelé directement auprès d’OpenAI — Kunavo ne fournit pas d’embeddings) + pgvector + Claude Sonnet 4.6 + mise en cache des prompts. Environ 0,007 $ par requête, en additionnant les deux fournisseurs. Variantes régionales (voseo, tuteo, ustedeo), tokens espagnols (1,3–1,5 fois plus qu’en anglais), prévention des hallucinations et coûts mensuels réels pour 100 à 10 000 requêtes quotidiennes.

Construire un chatbot RAG en espagnol qui répond avec précision sur votre base de connaissances — guide pratique destiné aux équipes produit en Espagne et en Amérique latine. Nous couvrons le choix du modèle, la gestion des variantes régionales de l’espagnol, le coût par requête et les moyens d’éviter les hallucinations.

La stack de base

  1. Vectorisation des documents avec text-embedding-3-large, appelée directement auprès d’OpenAI —— Kunavo ne fournit pas les embeddings, uniquement l’étape de génération
  2. Recherche vectorielle (pgvector, Pinecone ou Qdrant)
  3. Génération des réponses avec Claude Sonnet 4.6 + mise en cache des prompts
  4. Fallback vers Gemini 2.5 Flash pour les fortes charges / les coûts minimaux

Snippet de base

responder.py
from openai import OpenAI

client = OpenAI(
    api_key="sk-kn-...",
    base_url="https://api.kunavo.com/v1",
)

def responder(pregunta: str, contexto: list[str]) -> str:
    """Responde en español usando contexto recuperado de la base de conocimiento."""
    resp = client.chat.completions.create(
        model="claude-sonnet-4-6",
        messages=[
            {
                "role": "system",
                "content": [
                    {
                        "type": "text",
                        "text": (
                            "Eres un asistente que responde en español neutro, "
                            "claro y conciso, basándote exclusivamente en el "
                            "contexto proporcionado. Si la respuesta no está en "
                            "el contexto, di 'No tengo esa información' en lugar "
                            "de inventar."
                        ),
                        "cache_control": {"type": "ephemeral"},
                    },
                ],
            },
            {
                "role": "user",
                "content": (
                    f"## Contexto\n{chr(10).join(contexto)}\n\n"
                    f"## Pregunta\n{pregunta}"
                ),
            },
        ],
        max_tokens=600,
    )
    return resp.choices[0].message.content

Coût par requête : environ $0.004 (moins d’un demi-centime d’euro) avec la mise en cache active. Sans mise en cache, environ $0.01. La différence justifie la configuration correcte de cache_control.

Espagnol neutre ou variantes régionales

Si votre produit s’adresse simultanément à des utilisateurs d’Espagne et d’Amérique latine, vous avez trois options :

  • Espagnol neutre (recommandé par défaut) : demandez au modèle d’utiliser « usted/ustedes » dans un registre formel et d’éviter les régionalismes. Il fonctionne dans tous les pays, mais paraît légèrement impersonnel
  • Détection du pays + prompt spécifique : utilisez l’adresse IP ou les paramètres de l’utilisateur pour choisir entre le « voseo » (Argentine, Uruguay), le « tuteo » (Espagne, Mexique) et l’« ustedeo » (Colombie, certaines régions). Indiquez le dialecte dans le system prompt
  • Un modèle par marché : uniquement si vous disposez d’équipes dédiées et d’un volume élevé dans chaque région. Pour la plupart des équipes, c’est excessif

Claude Sonnet 4.6 et Gemini 2.5 Pro comprennent toutes les variantes ; la sortie suit le style du prompt. Une ligne comme « Réponds en espagnol rioplatense (voseo, par ex. 'vos podés') » suffit.

Tokens en espagnol

L’espagnol consomme environ 1.3-1.5x plus de tokens que l’anglais pour un même contenu (en raison des terminaisons plus longues et des articles). Ajustez vos budgets d’entrée et de sortie en conséquence. Un contexte de 5K tokens en anglais devient environ 6.5K en espagnol.

Anti-hallucinations — ce qui fonctionne réellement

  • System prompt explicite : « si la réponse ne se trouve pas dans le contexte, dis “Je n’ai pas cette information” ». Le modèle le respecte davantage en espagnol neutre que dans d’autres langues, sans que nous sachions pourquoi
  • Citer la source : demandez-lui de renvoyer l’identifiant du document dont provient chaque affirmation. Si l’identifiant est inventé, vous savez qu’il a halluciné
  • Limiter la sortie : max_tokens=300 réduit fortement la tentation d’inventer du contenu superflu
  • Tests adversariaux : 50 questions de votre jeu de données marquées comme « impossibles à traiter avec le contexte actuel ». Votre chatbot doit toutes les refuser

Coût mensuel estimé (espagnol)

  • 100 requêtes/jour : environ $11/mois avec la mise en cache
  • 1 000 requêtes/jour : environ $110/mois
  • 10 000 requêtes/jour : environ $1 100/mois

Si vous atteignez 10 000+ requêtes et devez réduire davantage les coûts, utilisez Gemini 2.5 Flash pour les requêtes simples (4 à 10 fois moins cher) et réservez Sonnet 4.6 aux requêtes complexes. Le modèle de répartition par niveaux est décrit dans guide d’optimisation des coûts.

Paiements depuis l’Espagne et l’Amérique latine

Stripe traite le paiement selon le pays : Pix (Brésil), cartes internationales, Apple Pay, Google Pay et Link. Les prix sont en USD et Stripe peut afficher le montant dans votre devise ; son taux inclut une commission de conversion de 2–4 % à la charge de l’acheteur, que le paiement en USD permet d’éviter (documentation de Stripe Adaptive Pricing, consultée le 2026-10-03). Bizum, PayPal, OXXO et Mercado Pago ne sont pas disponibles, pas plus que Pay by Bank : dans le paiement Kunavo, il est proposé uniquement aux acheteurs du Royaume-Uni, d’Irlande et de Finlande, et en France et en Allemagne Stripe le propose encore en aperçu privé (documentation Pay by Bank de Stripe, consultée le 2026-10-03). Rechargement minimum de $10 USD. Le solde n’expire pas.

Assistance et documentation

Assistance en espagnol à l’adresse contact@kunavo.com sous 24 heures ouvrées. Documentation technique complète sur /docs/quickstart ; guide complet de la mise en cache des prompts dans analyse approfondie de la mise en cache des prompts.

Prêt ? Inscrivez-vous gratuitement, rechargez à partir de $10 et ne payez que ce que vous utilisez pour créer un premier prototype fonctionnel.