SangramMCP
Posts: 57
Joined: Wed Jul 26, 2017 7:41 pm

Using Expressions

Wed Jul 26, 2017 7:58 pm

Hi,
I am a completely newbie to SynBot. I waned to know how expressions work.
Is it that every time, a user will utter a statement, the same has to be in one of the expression?

If yes, so all the probable expressions has to be added prior?
The same question can be asked by different users, in n different ways.
Is it that we have to store n different ways of expression?



Is there any way, we can store the expression in a database, every-time the user types in, and then respond it back appropriately.

Let me know, if i have understood it correctly.

Thanks.

User avatar
Fantom
Help & Support
Posts: 304
Joined: Fri Oct 25, 2013 9:20 pm

Re: Using Expressions

Thu Jul 27, 2017 6:35 am

Expressions are used by Oscova to learn the semantics and syntactics behind a sentence that merge towards a single intent.

Not everything that the user says has to be written in expressions but the more expressions you provide the better Oscova learns and the more confident it becomes about certain user inputs. This is universal in all Machine Learning based NLP systems.

Oscova is part of Syn.Bot Framework which is platform independent and runs on Android, iOS, Windows, Linux and even Microsoft Office. Expressions cannot be stored in Database as Oscova goes through all contextually valid expressions when a user request is created. Each expression has lots of sub components that cannot be serialized into database objects.

To create an abstraction between expressions and coded complex actions you can use SIML Modern to write totally isolated sets of Intents that will map to any action.

Example code-behind in C# Project

CSharp Code

internal class CommonActionsDialog : Dialog
{
	[Action(ID = "comp-name-action")]
	public void OsInformation(Context context, Result result)
	{
		result.SendResponse(Environment.MachineName);
	}
}

SIML Code

<Siml>
  <Dialog Name="MachineDialog">
    
    <Intent Name="comp-name-intent">
      <Expression Value="What is the machine name?" />
      <Expression Value="What is name of this computer?"/>
      <Action ID="comp-name-action" />
    </Intent>
    
  </Dialog>
</Siml>
All SIML Modern projects can be imported to Oscova by calling the Import(XDocument); method.

Return to “General Discussion”

Who is online

Users browsing this forum: No registered users and 1 guest