AI Zone Admin Forum Add your forum

NEWS: survey on 3000 US and UK consumers shows it is time for chatbot integration in customer service!read more..

other language than english


I read some topics about Chatscript that seems to be an amazing chatbot tool.
But it’s not clear for me how to use it in another langage.
I understood that if you language is not already in chatscprit there are lots of works to do.

But I’m interesting in french and I saw many files and directories containing frenc things. But is it enough to use french language directly ? Are there particular things to do ? I believed understand that POS-tagger is under licence, is that a problem for me ?

I tried to start Chatscript language=french but it’s not working.

Do I need to write my topic files in french ?

thx all,



  [ # 1 ]

All that setting language=french does is tell CS to use the french dictionary and not to pos-tag/parse in english. And that really means the only thing it does is spellchecking and detection of number values and dates in french.

Your patterns need to be written in french, your output needs to be written in french.  Most chatbots dont use pos-tagging, but if you needed it one can license one.


  [ # 2 ]

Thanks a lot for the answer. I will try that without POS-tagging for now. I’m doing a POC I will see later for licence.

Thanks again Bruce.


  [ # 3 ]

So I wrote a script. My script is about device diagnosis. I added comment in english to translate.
Unfortunately, I stuck on a problem : some of my rules contains verb because the user gonna write the diagnosis like “My device does’n't work” so I put the verb (cononical form in french) and it’doesn’t work if I put “My device doesn’t work”.
But if I well understood CS calls pos-tagging that I don’t have (licence). So I have the feeling that I need pos-tagger for french but I can’t pay 1000e for my POC.

topic: ~introductions repeat keep []

# START ()  Do you have any problem or question ?
t: DEBUT ()  vous avez un probleme ou une question ?

#  ( phone )  Which problem do you have with your phone ?
u: ( telephone )  Vous avez un probleme avec votre phone mais lequel ?

  #  (screen ) We must change the sreen
  a: ( écran ) Il faut changer l’ecran.
  # ( work ) We must do some tests
  a: (  marcher ) Il faut faire quelques tests.
  #  ( charge ) We must change the batterie
  a: (  charger )Il faut changer la batterie.

Is there another solution ?




  [ # 4 ]

I found a solution for my specific problem : I added all the verb form that I need in the canonical file. It does the job.

But I have another problem the ‘yes’ answer (‘oui’ in french) is not caught. In the example below, my input was “mon PDA ne s’allume pas” and I got the answer “Avez-vous appuyé su…” so I entered “oui” to the question and I have no answer.

The script:

topic: ~introductions repeat keep []

t: DEBUT ()  vous avez un probleme ou une question ?

u: (* PDA * allume pas ) Avez-vous appuyé sur le bouton en haut à gauche, pour… ?
  #  ( yes ) We msut change the batterie
  a: ( oui ) Il faut changer le PDA.

It sounds like “oui” is not translate by “yes”, I tried (~oui), no success.




  [ # 5 ]

That’s so fun my intuition guide me to the solution.
I used (~yes) instead of (~oui) and I answered in french. in CS concept like “yes” is translated ?
Maybe I can do my own concept “yes” in french ?

Thx all and have a good end a year !



  [ # 6 ]

Is there another solution ? (to pos tagging) —- depends. while you wont be able to distinguish a word used as a verb from its same use as a noun, you can create concepts listing all conjugations of your verb and use that in your pattern. I assume your problem is you used the root form of the verb in the pattern but a different form in input.

Also, pos tagging is not a universal panacea since even under the best of circumstances it is generally only 97% accurate, and conversational chat with users is not the best of circumstances.


  [ # 7 ]

Oui, when language=french in LIVEDATA/FRENCH the SUBSTITUTIONS/interjections.txt file translates oui to ~yes.
You can, of course in script (or in that livedata file), create your own concept ~oui.  I’d advise against doing it in the actual livedata file since then you may have work to integrate later cs versions that improve that.  You can just as easily
do it in a script file useing replace: oui ~oui


  [ # 8 ]

OK for the pos-tagging, I’m still working without it.

About “OUI/yes”  concept, I was surprised because I saw “OUI” in the file interjections.txt (french) so I thought that the translation work fine (if I put ~OUI).  But “OUI” or “~OUI” doesn’t work if I use in my script I must use ~yes.

It only works if I put “~yes”  instead of “~oui” :

t: DEBUT ()  vous avez un probleme ou une question ?

u: (* PDA * allume pas ) Avez-vous appuyé sur le bouton en haut à gauche, pour… ?
  #  ( yes ) We msut change the batterie
  a: ( ~yes ) Il faut changer le PDA.

I hope I was clear ?


  [ # 9 ]

The translations of interjections all use the english concept name, so that people converting scripts from one language to another do not have to edit all the concept names.  But you can easily do a global edit to the file, to change ~yes to ~oui and ~no to ~non.

The file is clear,  you see the word and you see the interjection name after it, so you should not have been surprised when you found oui that it went to ~yes


  login or register to react