# Meerdere talen

Oswald behandelt meerdere talen van een chatbot op een unieke manier. Het idee is het volgende: bouw één chatbot en hergebruik het 'skelet' van deze chatbot voor elke taal. Om te taal effectief te implementeren in het 'skelet' van de chatbot, moet je de eigenlijke content wel nog vertalen. Dit biedt twee voordelen:

* Je behoudt de nauwkeurigheid van een chatbot die specifiek getraind is in de taal in kwestie.
* Je bespaart een hoop dubbel werk omdat je het 'skelet' van de chatbot niet opnieuw hoeft de bouwen.

Met 'skelet' bedoelen we het volgende:

* De naam van de intenties
* De naam van de entiteiten, hun waarden en keuze van correctiealgoritme (aan of uit)
* De naam van scenario's, boomstructuren
* De inputconfiguraties, antwoordprioriteit, bookmarks, toestanden
* De namen van variabelen
* De advanced code responses

De volgende zaken zijn uniek per taal en dienen dus vertaald te worden:

* De trainingszinnen
* De invulling van de waarden van entiteiten
* De synoniemen van waarden van entiteiten
* De outputconfiguratie van nodes in een scenario
* De snelle antwoorden
* De "als geen antwoord gevonden"-tekst in een node

Wanneer je in de `Instellingen` een nieuwe taal hebt toegevoegd bij `Ondersteunde talen` kan je overal in de UI rechtsboven switchen tussen deze talen. Je zal telkens zien dat het skelet behouden blijft en de velden die uniek zijn per taal veranderen. Zo kan je op een makkelijke manier meerdere talen managen.

![](https://1621246471-files.gitbook.io/~/files/v0/b/gitbook-legacy-files/o/assets%2F-L_IHdvfaXCVi1CBgkrB%2F-Lo5jOO56TUQ0CqCpd-d%2F-Lo5jYP67YGs3jVQCkP_%2Fmeerdere_talen.png?alt=media\&token=8b6be301-37ed-4252-aa3c-7e2bc4baad30)

### **Tips & tricks**

* De waarden van entiteiten maken deel uit van het 'skelet'. Toch moet je ze nog vertalen in elke taal. De waarde wordt in de nieuwe taal `translate:<originele waarde>`. Zo is er dus wel een 1-op-1-mapping tussen waarden van entiteiten in verschillende talen.
* Je kan in een ene taal meer of minder outputs hebben binnen een node dan in een andere taal. Dit kan handig zijn als je in een bepaalde taal een iets uitgebreider wil uitleggen.
* Op dezelfde manier kan je ook meer of minder snelle antwoorden hebben in één taal dan in een andere taal.
* Wanneer je een nieuwe chatbot aanmaakt, zorg er dan voor dat de `Standaard language` meteen juist staat. Zo vermijd je problemen met systeementiteiten en kan je later meerdere talen toevoegen.
