AI Zone Admin Forum Add your forum

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

Missing output
 
 

Hi,

I encounter a problem, regarding reuse.

Here is an example:

t: Is it really that ^reuse(SYNONYMS.BAD)? ^reuse(SYNONYMS.CAN) you ^reuse(SYNONYMS.TELL) me what happened?


So the output by ChatScript may look like this:

Is it really that bad? Could you tell

So the rest of the sentence is simply missing.

(Please note that in my scripts I nest multiple ^reuse calls, that is, I reuse a responder that might reuse other things and often the output is randomized)


Why do I use these ^reuse(SYNONYMS) statements? Because I am not aware of another way to further randomize in randomized output.

 

 
  [ # 1 ]

1. ^reuse(~SYNONYMS.BAD)
2.  Is it really that [bad][ awful][ disgusting]  ^”” [can][ would][ should] ^”” [tell][ say] me what happened
[] [] [] are random choice.  ^”” is null separator to allow it to detect that the different sections are not all part of same random

 

 
  [ # 2 ]

Thank you very much Bruce. smile

 

 
  [ # 3 ]

Because the problem was not entirely solved I further investigated.

It might happen that there are so many ^reuse statements in an answer that the maximum response size is exceeded.

The solution: in mainSystem.h increase MAX_RESPONSE_SENTENCES

 

 
  [ # 4 ]

Or use ^pick() which can return a random member of a concept.

t: Is it really that ^pick(~SYNONYMS.BAD)? ^pick(~SYNONYMS.CAN) you ^pick(~SYNONYMS.TELL) me what happened?

 

 
  [ # 5 ]

^pick(~tell) is fine, but not naming a rule tag

 

 
  [ # 6 ]

Thanks a lot.
^pick actually does the trick and the scripts look much nicer.

 

 
  login or register to react