Skip to main content
Back to Blog
•Rafael Gonzalez

Multilingual FAQ chatbot: detect the language, answer from a corpus, stay in it

Website or share link in, GPT-class FAQ out, in English, Hindi, Spanish, French, German, and more. ChatGPT versus Claude, n8n for handoff, and why translation-after-the-fact fails.

Use this stack as a page: the polyglot RAG concierge.

The multilingual FAQ chatbot card is a support loop, not a personality hire. A visitor types on your site or a shared link. You detect the language. A GPT-class model answers from an FAQ. The reply goes out in the same language. English, Hindi, Spanish, French, German, plus a “+20” on the badge. Scheduling questions (“can I book Thursday”) sit next to policy questions.

Instant and accurate are in tension. Instant is a small corpus and a hard “I don’t know.” Accurate is citations to your pages, not a model that studied the internet.

The stack:

  1. Widget / link — your site chat, or a hosted thread. Not a matrix tool.
  2. Language detection — a library or the model’s first classification. Keep it cheap.
  3. ChatGPT or Claude — the FAQ answerer. One.
  4. Corpus — help center, PDF, Notion export. NotebookLM if you want Gemini grounded on those files instead of a general chat.
  5. n8n / Zapier — book a slot, create a ticket, escalate. Calendar is not /tools/google-calendar.

This is not us shipping a chatbot SKU. It is why “GPT FAQ” still needs a router.

Why translate-at-the-end is the wrong architecture

A common hack: answer in English, then ask the model to translate. You get a fluent paragraph that drifted from the policy, plus a polite yes on a refund you do not offer.

Better: store FAQ entries per language when the legal text differs, or store one canonical entry and require the model to quote it, then generate the user-facing sentence in the detected language without adding benefits.

ChatGPT has a free row and paid from $20/month. It is the default “GPT” in every infographic. Claude is the long-context alternative, also $20/month paid, better when the help center is huge and you stuff it in context. See ChatGPT vs Claude for the pairing habit — here the output is a support answer, not a patch.

NotebookLM is Google’s grounded notebook. Use it when the chatbot must not wander off your uploaded sources. It is not a drop-in website widget; n8n still has to sit in front.

Do not invent a /tools/gpt slug. GPT is the model family. The product we track is ChatGPT.

The jobs (and what each must not do)

The widget owns identity, not policy

Know who is chatting (anon vs logged-in), which property, which locale they picked in the UI. If the UI is Spanish and detection says English, trust the UI unless they typed in another language.

Do not train the public model on full ticket dumps with personal data. ChatGPT data controls is the privacy post; read it before you paste CRM exports into a prompt.

Detection owns routing

A dedicated detect step keeps you from answering Hindi in German because the FAQ chunk happened to be German. If detection confidence is low, ask “¿Español or English?” once. Do not guess a legal answer.

The model owns the FAQ, not the calendar write

Give it retrieved chunks (or NotebookLM-style grounding), a refusal template, and a tool: check_availability / create_ticket / handoff. Scheduling is a tool call, same idea as the voice call agent, minus the phone.

Follow-up questions should reuse the thread. That is the “handle follow-ups automatically” loop on the card. Cap the thread. After N turns or a money word (“refund,” “lawsuit”), escalate.

Do not let the model invent opening hours. Do not let it speak for a doctor, a bank, or a hotel rate that is not in the chunk.

n8n owns side effects

n8n ~$22/month cloud. Zapier $19.99/month Professional. Make if that is already the house visual tool.

Ticket in HubSpot/Zendesk, mail in Gmail, slot in Google Calendar — none of those are AI tools on our matrix. The chatbot that “books” without a write is theatre.

Humans own the corpus

Wrong FAQ in twenty languages is twenty times the support load. A native speaker reviews the Spanish and Hindi entries. The model does not get to be the lawyer.

One chat, six steps

  1. Visitor sends a message on the site or link.
  2. Detect language (and honor the site locale).
  3. Retrieve top FAQ chunks in that language or canonical + translation rules.
  4. ChatGPT or Claude answers with a citation or a refusal.
  5. If scheduling: tool call → n8n → calendar. If unknown: ticket.
  6. Follow-up stays in-language until handoff.

What this stack is not

It is not voice mode. That is the phone post.

It is not twenty freelance translators replaced by a badge that says +20. Languages you cannot review, you should not auto-answer for.

It is not unlimited legal coverage. “Accurate” on a card does not bind your counsel.

The page with the four matrix slots is the polyglot RAG concierge. DeepL owns language, Pinecone the corpus, Claude the answer, n8n the booking. NotebookLM is the lighter “only these files” swap when you are not running a vector DB.