HowTo : Initialize entity values in the AI provider

Official Content
This documentation is valid for:

In order to create and initialize Chatbot Entity values (and their synonyms) in the AI provider, using the Chatbot generator, you just need to execute the following steps.

  1. Create a Data Provider or procedure which loads into an Structured Data Type (SDT) object the list of values for the entity you want to load in the AI provider.
  2. Call the "SendEntitiyValues" procedure (this procedure is an entry point which belongs to the Chatbot external module). In the Kb, you can see it under References - Chatbot/Entities module.


Its signature is as follows:

parm(in:&ChatbotInstance, in:&EntityValues, in:&Entity, out:&Messages);


  • &ChatbotInstance is varchar(256). The name of the Conversational Flows object.
  • &EntityValues is of EntityValues data type. Here load all the entity values and it synonyms.



Take a look at the example shown in HowTo: Build a chatbot using GeneXus, and open the "InitializeEntityValuesPrc" procedure.

In this example, you are sending values to the AI provider to load the "Social_Event_Type" entity and some synonyms for each of the values (the synonyms are not mandatory).

&SDTEntitiesValuesValue.value = !"Art"

&SDTEntitiesValuesValue = new()
&SDTEntitiesValuesValue.value = !"Culture"

&SDTEntitiesValuesValue = new()
&SDTEntitiesValuesValue.value = !"Nature"
&SDTEntitiesValuesValue.synonyms.Add(!"Fresh air")

&InstanceName = !"CitizenServiceSD"
do "ProcessErrors"

After executing this procedure, consider that the AI takes a time to train the information.

Note: The entities are created in the Provider if they do not exist.

See also

Chatbots in GeneXus