diff --git a/BotSharp.Core/Engines/Sebis/AgentImporterInSebis.cs b/BotSharp.Core/Engines/Sebis/AgentImporterInSebis.cs new file mode 100644 index 000000000..2d59476bc --- /dev/null +++ b/BotSharp.Core/Engines/Sebis/AgentImporterInSebis.cs @@ -0,0 +1,162 @@ +using System; +using System.Collections.Generic; +using System.IO; +using System.Linq; +using System.Text; +using BotSharp.Core.Adapters.Dialogflow; +using BotSharp.Core.Adapters.Sebis; +using BotSharp.Core.Agents; +using BotSharp.Core.Entities; +using BotSharp.Core.Intents; +using BotSharp.Core.Models; +using DotNetToolkit; +using Newtonsoft.Json; +using Newtonsoft.Json.Linq; + +namespace BotSharp.Core.Engines +{ + /// + /// Import agent from Dialogflow + /// + public class AgentImporterInSebis : IAgentImporter + { + /// + /// Load agent meta + /// + /// + /// + /// + public Agent LoadAgent(AgentImportHeader agentHeader, string agentDir) + { + // load agent profile + string data = File.ReadAllText(Path.Join(agentDir, "Sebis", $"{agentHeader.Name}{Path.DirectorySeparatorChar}agent.json")); + var agent = JsonConvert.DeserializeObject(data); + agent.Name = agentHeader.Name; + agent.Id = agentHeader.Id; + + var result = agent.ToObject(); + result.ClientAccessToken = agentHeader.ClientAccessToken; + result.DeveloperAccessToken = agentHeader.DeveloperAccessToken; + if(agentHeader.UserId != null) + { + result.UserId = agentHeader.UserId; + } + + return result; + } + + public void LoadCustomEntities(Agent agent, string agentDir) + { + agent.Entities = new List(); + } + + public void LoadIntents(Agent agent, string agentDir) + { + string data = File.ReadAllText(Path.Join(agentDir, "Sebis", $"{agent.Name}{Path.DirectorySeparatorChar}corpus.json")); + var sentences = JsonConvert.DeserializeObject(data).Sentences; + + agent.Intents = sentences.Select(x => x.Name).Distinct().Select(x => new Intent{Name = x}).ToList(); + + agent.Intents.ForEach(intent => { + intent.UserSays = new List(); + + var userSays = sentences.Where(x => x.Name == intent.Name).ToList(); + + userSays.ForEach(say => + { + var expression = new IntentExpression(); + + expression.Data = new List(); + + for(int index = 0; index < say.Entities.Count; index++) + { + + } + + intent.UserSays.Add(expression); + }); + }); + } + + private Intent ImportIntentUserSays(Agent agent, Intent intent, string fileName) + { + // void id confict + intent.Id = Guid.NewGuid().ToString(); + intent.Name = intent.Name.Replace("/", "_"); + // load user expressions + + string expressionFileName = fileName.Replace(intent.Name, $"{intent.Name}_usersays_{agent.Language}"); + if (File.Exists(expressionFileName)) + { + string expressionJson = File.ReadAllText($"{expressionFileName}"); + intent.UserSays = JsonConvert.DeserializeObject>(expressionJson); + } + + return null; + } + + public void LoadBuildinEntities(Agent agent, string agentDir) + { + agent.Intents.ForEach(intent => + { + + if (intent.UserSays != null) + { + intent.UserSays.ForEach(us => + { + us.Data.Where(data => data.Meta != null) + .ToList() + .ForEach(data => + { + LoadBuildinEntityTypePerUserSay(agent, data); + }); + }); + } + + }); + } + + private void LoadBuildinEntityTypePerUserSay(Agent agent, IntentExpressionPart data) + { + var existedEntityType = agent.Entities.FirstOrDefault(x => x.Name == data.Meta); + + if (existedEntityType == null) + { + existedEntityType = new EntityType + { + Name = data.Meta, + Entries = new List(), + IsOverridable = true + }; + + agent.Entities.Add(existedEntityType); + } + + var entries = existedEntityType.Entries.Select(x => x.Value.ToLower()).ToList(); + if (!entries.Contains(data.Text.ToLower())) + { + existedEntityType.Entries.Add(new EntityEntry + { + Value = data.Text, + Synonyms = new List + { + new EntrySynonym + { + Synonym = data.Text + } + } + }); + } + } + } + + public class Sebis + { + public string Name { get; set; } + public string Desc { get; set; } + public string Lang { get; set; } + public List> Sentences { get; set; } + } + + +} diff --git a/BotSharp.Core/Engines/Sebis/SebisAgent.cs b/BotSharp.Core/Engines/Sebis/SebisAgent.cs new file mode 100644 index 000000000..002516c7c --- /dev/null +++ b/BotSharp.Core/Engines/Sebis/SebisAgent.cs @@ -0,0 +1,20 @@ +using System; +using System.Collections.Generic; +using System.Text; +using Newtonsoft.Json; +using Newtonsoft.Json.Linq; + +namespace BotSharp.Core.Adapters.Sebis +{ + public class SebisAgent + { + public String Id { get; set; } + public String Name { get; set; } + [JsonProperty("desc")] + public String Description { get; set; } + [JsonProperty("lang")] + public String Language { get; set; } + + public List Sentences { get; set; } + } +} diff --git a/BotSharp.Core/Engines/Sebis/SebisIntent.cs b/BotSharp.Core/Engines/Sebis/SebisIntent.cs new file mode 100644 index 000000000..3abb8f0ad --- /dev/null +++ b/BotSharp.Core/Engines/Sebis/SebisIntent.cs @@ -0,0 +1,16 @@ +using BotSharp.Core.Intents; +using Newtonsoft.Json; +using System; +using System.Collections.Generic; +using System.Text; + +namespace BotSharp.Core.Adapters.Sebis +{ + public class SebisIntent + { + public string Text { get; set; } + [JsonProperty("intent")] + public string Name { get; set; } + public List Entities { get; set; } + } +} diff --git a/BotSharp.Core/Engines/Sebis/SebisIntentExpression.cs b/BotSharp.Core/Engines/Sebis/SebisIntentExpression.cs new file mode 100644 index 000000000..c8af71651 --- /dev/null +++ b/BotSharp.Core/Engines/Sebis/SebisIntentExpression.cs @@ -0,0 +1,12 @@ +using System; +using System.Collections.Generic; +using System.Text; +using BotSharp.Core.Engines; + +namespace BotSharp.Core.Adapters.Sebis +{ + public class SebisIntentExpression : TrainingIntentExpression + { + + } +} \ No newline at end of file diff --git a/BotSharp.Core/Engines/Sebis/SebisIntentExpressionPart.cs b/BotSharp.Core/Engines/Sebis/SebisIntentExpressionPart.cs new file mode 100644 index 000000000..85c8dfe59 --- /dev/null +++ b/BotSharp.Core/Engines/Sebis/SebisIntentExpressionPart.cs @@ -0,0 +1,16 @@ +using System; +using System.Collections.Generic; +using System.Text; +using BotSharp.Core.Engines; +using Newtonsoft.Json; + +namespace BotSharp.Core.Adapters.Sebis +{ + public class SebisIntentExpressionPart : TrainingIntentExpressionPart + { + [JsonProperty("stop")] + public new int End { get; set; } + [JsonProperty("text")] + public new String Value { get; set; } + } +} \ No newline at end of file diff --git a/BotSharp.RestApi/AgentController.cs b/BotSharp.RestApi/AgentController.cs index 257d0afa6..8e8fa3237 100644 --- a/BotSharp.RestApi/AgentController.cs +++ b/BotSharp.RestApi/AgentController.cs @@ -1,5 +1,6 @@ using BotSharp.Core.Agents; using BotSharp.Core.Engines; +using BotSharp.Core.Engines.BotSharp; using BotSharp.Core.Models; using EntityFrameworkCore.BootKit; using Microsoft.AspNetCore.Mvc; @@ -29,9 +30,9 @@ public ActionResult Restore([FromRoute] String agentId) var botsHeaderFilePath = Path.Join(AppDomain.CurrentDomain.GetData("DataPath").ToString(), $"DbInitializer{Path.DirectorySeparatorChar}Agents{Path.DirectorySeparatorChar}agents.json"); var agents = JsonConvert.DeserializeObject>(System.IO.File.ReadAllText(botsHeaderFilePath)); - var rasa = new RasaAi(); + var rasa = new BotSharpAi(); var agentHeader = agents.First(x => x.Id == agentId); - rasa.RestoreAgent(agentHeader); + rasa.RestoreAgent(agentHeader); return Ok(); } diff --git a/BotSharp.WebHost/App_Data/DbInitializer/Agents/Sebis/Airport/agent.json b/BotSharp.WebHost/App_Data/DbInitializer/Agents/Sebis/Airport/agent.json new file mode 100644 index 000000000..622c13d39 --- /dev/null +++ b/BotSharp.WebHost/App_Data/DbInitializer/Agents/Sebis/Airport/agent.json @@ -0,0 +1,4 @@ +{ + "description": "NLU Evaluation Corpora", + "language": "en" + } \ No newline at end of file diff --git a/BotSharp.WebHost/App_Data/DbInitializer/Agents/Sebis/Airport/corpus.json b/BotSharp.WebHost/App_Data/DbInitializer/Agents/Sebis/Airport/corpus.json new file mode 100644 index 000000000..f9617fbb1 --- /dev/null +++ b/BotSharp.WebHost/App_Data/DbInitializer/Agents/Sebis/Airport/corpus.json @@ -0,0 +1,4243 @@ +{ + "name": "ChatbotCorpus", + "desc": "Visit https://github.com/sebischair/NLU-Evaluation-Corpora for more information", + "lang": "en", + "sentences": [ + { + "text": "i want to go marienplatz", + "intent": "FindConnection", + "entities": [ + { + "entity": "StationDest", + "start": 4, + "stop": 4, + "text": "marienplatz" + } + ] + }, + { + "text": "when is the next train in muncher freiheit?", + "intent": "DepartureTime", + "entities": [ + { + "entity": "Vehicle", + "start": 4, + "stop": 4, + "text": "train" + }, + { + "entity": "Criterion", + "start": 3, + "stop": 3, + "text": "next" + }, + { + "entity": "StationStart", + "start": 6, + "stop": 7, + "text": "muncher freiheit" + } + ] + }, + { + "text": "when does the next u-bahn leaves from garching forschungszentrum?", + "intent": "DepartureTime", + "entities": [ + { + "entity": "Vehicle", + "start": 4, + "stop": 6, + "text": "u-bahn" + }, + { + "entity": "Criterion", + "start": 3, + "stop": 3, + "text": "next" + }, + { + "entity": "StationStart", + "start": 9, + "stop": 10, + "text": "garching forschungszentrum" + } + ] + }, + { + "text": "from olympia einkaufszentrum to hauptbahnhof", + "intent": "FindConnection", + "entities": [ + { + "entity": "StationStart", + "start": 1, + "stop": 2, + "text": "olympia einkaufszentrum" + }, + { + "entity": "StationDest", + "start": 4, + "stop": 4, + "text": "hauptbahnhof" + } + ] + }, + { + "text": "when is the next train from winterstraße 12 to kieferngarten", + "intent": "FindConnection", + "entities": [ + { + "entity": "Vehicle", + "start": 4, + "stop": 4, + "text": "train" + }, + { + "entity": "Criterion", + "start": 3, + "stop": 3, + "text": "next" + }, + { + "entity": "StationStart", + "start": 6, + "stop": 7, + "text": "winterstraße 12" + }, + { + "entity": "StationDest", + "start": 9, + "stop": 9, + "text": "kieferngarten" + } + ] + }, + { + "text": "when is the next rocket from winterstraße 12 to kieferngarte", + "intent": "FindConnection", + "entities": [ + { + "entity": "Vehicle", + "start": 4, + "stop": 4, + "text": "rocket" + }, + { + "entity": "Criterion", + "start": 3, + "stop": 3, + "text": "next" + }, + { + "entity": "StationStart", + "start": 6, + "stop": 7, + "text": "winterstraße 12" + }, + { + "entity": "StationDest", + "start": 9, + "stop": 9, + "text": "kieferngarte" + } + ] + }, + { + "text": "can you find a connection from garching to hauptbahnhof?", + "intent": "FindConnection", + "entities": [ + { + "entity": "StationStart", + "start": 6, + "stop": 6, + "text": "garching" + }, + { + "entity": "StationDest", + "start": 8, + "stop": 8, + "text": "hauptbahnhof" + } + ] + }, + { + "text": "how to get from untere strassäcker 21 to fröttmaning", + "intent": "FindConnection", + "entities": [ + { + "entity": "StationStart", + "start": 4, + "stop": 6, + "text": "untere strassäcker 21" + }, + { + "entity": "StationDest", + "start": 8, + "stop": 8, + "text": "fröttmaning" + } + ] + }, + { + "text": "how i can get from marienplatz to garching", + "intent": "FindConnection", + "entities": [ + { + "entity": "StationStart", + "start": 5, + "stop": 5, + "text": "marienplatz" + }, + { + "entity": "StationDest", + "start": 7, + "stop": 7, + "text": "garching" + } + ] + }, + { + "text": "connection from boltzmannstraße to kieferngarten", + "intent": "FindConnection", + "entities": [ + { + "entity": "StationStart", + "start": 2, + "stop": 2, + "text": "boltzmannstraße" + }, + { + "entity": "StationDest", + "start": 4, + "stop": 4, + "text": "kieferngarten" + } + ] + }, + { + "text": "how to get from bonner platz to freimann?", + "intent": "FindConnection", + "entities": [ + { + "entity": "StationStart", + "start": 4, + "stop": 5, + "text": "bonner platz" + }, + { + "entity": "StationDest", + "start": 7, + "stop": 7, + "text": "freimann" + } + ] + }, + { + "text": "when is the next s-bahn leaving at garching?", + "intent": "DepartureTime", + "entities": [ + { + "entity": "Vehicle", + "start": 4, + "stop": 6, + "text": "s-bahn" + }, + { + "entity": "Criterion", + "start": 3, + "stop": 3, + "text": "next" + }, + { + "entity": "StationStart", + "start": 9, + "stop": 9, + "text": "garching" + } + ] + }, + { + "text": "how do i get from oez to hbf?", + "intent": "FindConnection", + "entities": [ + { + "entity": "StationStart", + "start": 5, + "stop": 5, + "text": "oez" + }, + { + "entity": "StationDest", + "start": 7, + "stop": 7, + "text": "hbf" + } + ] + }, + { + "text": "how to get from winterstrasse 12 to fröttmaning", + "intent": "FindConnection", + "entities": [ + { + "entity": "StationStart", + "start": 4, + "stop": 5, + "text": "winterstrasse 12" + }, + { + "entity": "StationDest", + "start": 7, + "stop": 7, + "text": "fröttmaning" + } + ] + }, + { + "text": "how do i get from garching forschungszentrum to pasing", + "intent": "FindConnection", + "entities": [ + { + "entity": "StationStart", + "start": 5, + "stop": 6, + "text": "garching forschungszentrum" + }, + { + "entity": "StationDest", + "start": 8, + "stop": 8, + "text": "pasing" + } + ] + }, + { + "text": "theresienstraße to assling", + "intent": "FindConnection", + "entities": [ + { + "entity": "StationStart", + "start": 0, + "stop": 0, + "text": "theresienstraße" + }, + { + "entity": "StationDest", + "start": 2, + "stop": 2, + "text": "assling" + } + ] + }, + { + "text": "how can i get from theresienstraße to munich east?", + "intent": "FindConnection", + "entities": [ + { + "entity": "StationStart", + "start": 5, + "stop": 5, + "text": "theresienstraße" + }, + { + "entity": "StationDest", + "start": 7, + "stop": 8, + "text": "munich east" + } + ] + }, + { + "text": "when does the next bus starts from garching?", + "intent": "DepartureTime", + "entities": [ + { + "entity": "Vehicle", + "start": 4, + "stop": 4, + "text": "bus" + }, + { + "entity": "Criterion", + "start": 3, + "stop": 3, + "text": "next" + }, + { + "entity": "StationStart", + "start": 7, + "stop": 7, + "text": "garching" + } + ] + }, + { + "text": "from quiddestraße to garching?", + "intent": "FindConnection", + "entities": [ + { + "entity": "StationStart", + "start": 1, + "stop": 1, + "text": "quiddestraße" + }, + { + "entity": "StationDest", + "start": 3, + "stop": 3, + "text": "garching" + } + ] + }, + { + "text": "can you find a connection from kurt-eisner-straße to garching forschungszentrum?", + "intent": "FindConnection", + "entities": [ + { + "entity": "StationStart", + "start": 6, + "stop": 10, + "text": "kurt-eisner-straße" + }, + { + "entity": "StationDest", + "start": 12, + "stop": 13, + "text": "garching forschungszentrum" + } + ] + }, + { + "text": "can you find a connection from quiddestraße to garching forschungszentrum?", + "intent": "FindConnection", + "entities": [ + { + "entity": "StationStart", + "start": 6, + "stop": 6, + "text": "quiddestraße" + }, + { + "entity": "StationDest", + "start": 8, + "stop": 9, + "text": "garching forschungszentrum" + } + ] + }, + { + "text": "when does the next train leaves at garching?", + "intent": "DepartureTime", + "entities": [ + { + "entity": "Vehicle", + "start": 4, + "stop": 4, + "text": "train" + }, + { + "entity": "Criterion", + "start": 3, + "stop": 3, + "text": "next" + }, + { + "entity": "StationStart", + "start": 7, + "stop": 7, + "text": "garching" + } + ] + }, + { + "text": "from hauptbahnhof to garching?", + "intent": "FindConnection", + "entities": [ + { + "entity": "StationStart", + "start": 1, + "stop": 1, + "text": "hauptbahnhof" + }, + { + "entity": "StationDest", + "start": 3, + "stop": 3, + "text": "garching" + } + ] + }, + { + "text": "how can i get to glockenbachviertel from garching forschungszentrum?", + "intent": "FindConnection", + "entities": [ + { + "entity": "StationStart", + "start": 7, + "stop": 8, + "text": "garching forschungszentrum" + }, + { + "entity": "StationDest", + "start": 5, + "stop": 5, + "text": "glockenbachviertel" + } + ] + }, + { + "text": "how i can get from garching to nordfriedhof", + "intent": "FindConnection", + "entities": [ + { + "entity": "StationStart", + "start": 5, + "stop": 5, + "text": "garching" + }, + { + "entity": "StationDest", + "start": 7, + "stop": 7, + "text": "nordfriedhof" + } + ] + }, + { + "text": "how can i get to glockenbachviertel from garching forschungszentrum?", + "intent": "FindConnection", + "entities": [ + { + "entity": "StationStart", + "start": 7, + "stop": 8, + "text": "garching forschungszentrum" + }, + { + "entity": "StationDest", + "start": 5, + "stop": 5, + "text": "glockenbachviertel" + } + ] + }, + { + "text": "when is the next train leaving in garching forschungszentrum", + "intent": "DepartureTime", + "entities": [ + { + "entity": "Vehicle", + "start": 4, + "stop": 4, + "text": "train" + }, + { + "entity": "Criterion", + "start": 3, + "stop": 3, + "text": "next" + }, + { + "entity": "StationStart", + "start": 7, + "stop": 8, + "text": "garching forschungszentrum" + } + ] + }, + { + "text": "how can i get from moosach to quiddestraße?", + "intent": "FindConnection", + "entities": [ + { + "entity": "StationStart", + "start": 5, + "stop": 5, + "text": "moosach" + }, + { + "entity": "StationDest", + "start": 7, + "stop": 7, + "text": "quiddestraße" + } + ] + }, + { + "text": "how can i get from moosach to poccistraße?", + "intent": "FindConnection", + "entities": [ + { + "entity": "StationStart", + "start": 5, + "stop": 5, + "text": "moosach" + }, + { + "entity": "StationDest", + "start": 7, + "stop": 7, + "text": "poccistraße" + } + ] + }, + { + "text": "how can i get from kurt-eisner-straße to garching forschungszentrum?", + "intent": "FindConnection", + "entities": [ + { + "entity": "StationStart", + "start": 5, + "stop": 9, + "text": "kurt-eisner-straße" + }, + { + "entity": "StationDest", + "start": 11, + "stop": 12, + "text": "garching forschungszentrum" + } + ] + }, + { + "text": "how can i get from moosach to quiddestraße?", + "intent": "FindConnection", + "entities": [ + { + "entity": "StationStart", + "start": 5, + "stop": 5, + "text": "moosach" + }, + { + "entity": "StationDest", + "start": 7, + "stop": 7, + "text": "quiddestraße" + } + ] + }, + { + "text": "how can i get from moosach to odeonsplatz?", + "intent": "FindConnection", + "entities": [ + { + "entity": "StationStart", + "start": 5, + "stop": 5, + "text": "moosach" + }, + { + "entity": "StationDest", + "start": 7, + "stop": 7, + "text": "odeonsplatz" + } + ] + }, + { + "text": "when does the next bus starts at garching?", + "intent": "DepartureTime", + "entities": [ + { + "entity": "Vehicle", + "start": 4, + "stop": 4, + "text": "bus" + }, + { + "entity": "Criterion", + "start": 3, + "stop": 3, + "text": "next" + }, + { + "entity": "StationStart", + "start": 7, + "stop": 7, + "text": "garching" + } + ] + }, + { + "text": "what's the shortest way from quiddestraße to odeonsplatz?", + "intent": "FindConnection", + "entities": [ + { + "entity": "Criterion", + "start": 4, + "stop": 4, + "text": "shortest" + }, + { + "entity": "StationStart", + "start": 7, + "stop": 7, + "text": "quiddestraße" + }, + { + "entity": "StationDest", + "start": 9, + "stop": 9, + "text": "odeonsplatz" + } + ] + }, + { + "text": "when is the next bus from ostbahnhof", + "intent": "DepartureTime", + "entities": [ + { + "entity": "Vehicle", + "start": 4, + "stop": 4, + "text": "bus" + }, + { + "entity": "Criterion", + "start": 3, + "stop": 3, + "text": "next" + }, + { + "entity": "StationStart", + "start": 6, + "stop": 6, + "text": "ostbahnhof" + } + ] + }, + { + "text": "how i can get from garching to neuperlach sued", + "intent": "FindConnection", + "entities": [ + { + "entity": "StationStart", + "start": 5, + "stop": 5, + "text": "garching" + }, + { + "entity": "StationDest", + "start": 7, + "stop": 8, + "text": "neuperlach sued" + } + ] + }, + { + "text": "when is the next train in munchner freiheit?", + "intent": "DepartureTime", + "entities": [ + { + "entity": "Vehicle", + "start": 4, + "stop": 4, + "text": "train" + }, + { + "entity": "Criterion", + "start": 3, + "stop": 3, + "text": "next" + }, + { + "entity": "StationStart", + "start": 6, + "stop": 7, + "text": "munchner freiheit" + } + ] + }, + { + "text": "how i can get from marienplatz to garching?", + "intent": "FindConnection", + "entities": [ + { + "entity": "StationStart", + "start": 5, + "stop": 5, + "text": "marienplatz" + }, + { + "entity": "StationDest", + "start": 7, + "stop": 7, + "text": "garching" + } + ] + }, + { + "text": "how do i get from poccistraße to laim", + "intent": "FindConnection", + "entities": [ + { + "entity": "StationStart", + "start": 5, + "stop": 5, + "text": "poccistraße" + }, + { + "entity": "StationDest", + "start": 7, + "stop": 7, + "text": "laim" + } + ] + }, + { + "text": "i want to go garching from marienplatz", + "intent": "FindConnection", + "entities": [ + { + "entity": "StationStart", + "start": 6, + "stop": 6, + "text": "marienplatz" + }, + { + "entity": "StationDest", + "start": 4, + "stop": 4, + "text": "garching" + } + ] + }, + { + "text": "how i can get from marienplatz to garching?", + "intent": "FindConnection", + "entities": [ + { + "entity": "StationStart", + "start": 5, + "stop": 5, + "text": "marienplatz" + }, + { + "entity": "StationDest", + "start": 7, + "stop": 7, + "text": "garching" + } + ] + }, + { + "text": "how can i get from hauptbahnhof to odeonsplatz", + "intent": "FindConnection", + "entities": [ + { + "entity": "StationStart", + "start": 5, + "stop": 5, + "text": "hauptbahnhof" + }, + { + "entity": "StationDest", + "start": 7, + "stop": 7, + "text": "odeonsplatz" + } + ] + }, + { + "text": "prinzregentenplatz to rotkreuzplatz", + "intent": "FindConnection", + "entities": [ + { + "entity": "StationStart", + "start": 0, + "stop": 0, + "text": "prinzregentenplatz" + }, + { + "entity": "StationDest", + "start": 2, + "stop": 2, + "text": "rotkreuzplatz" + } + ] + }, + { + "text": "i want to go to garching from marienplatz", + "intent": "FindConnection", + "entities": [ + { + "entity": "StationStart", + "start": 7, + "stop": 7, + "text": "marienplatz" + }, + { + "entity": "StationDest", + "start": 5, + "stop": 5, + "text": "garching" + } + ] + }, + { + "text": "next train from garching", + "intent": "DepartureTime", + "entities": [ + { + "entity": "Criterion", + "start": 0, + "stop": 0, + "text": "next" + }, + { + "entity": "Vehicle", + "start": 1, + "stop": 1, + "text": "train" + }, + { + "entity": "StationStart", + "start": 3, + "stop": 3, + "text": "garching" + } + ] + }, + { + "text": "from prinzregentenplatz to rotkreuzplatz", + "intent": "FindConnection", + "entities": [ + { + "entity": "StationStart", + "start": 1, + "stop": 1, + "text": "prinzregentenplatz" + }, + { + "entity": "StationDest", + "start": 3, + "stop": 3, + "text": "rotkreuzplatz" + } + ] + }, + { + "text": "when is the next subway from garching forschungszentrum", + "intent": "DepartureTime", + "entities": [ + { + "entity": "Vehicle", + "start": 4, + "stop": 4, + "text": "subway" + }, + { + "entity": "Criterion", + "start": 3, + "stop": 3, + "text": "next" + }, + { + "entity": "StationStart", + "start": 6, + "stop": 7, + "text": "garching forschungszentrum" + } + ] + }, + { + "text": "from garching to klinikum", + "intent": "FindConnection", + "entities": [ + { + "entity": "StationStart", + "start": 1, + "stop": 1, + "text": "garching" + }, + { + "entity": "StationDest", + "start": 3, + "stop": 3, + "text": "klinikum" + } + ] + }, + { + "text": "from garching foschungszentrum to odeonsplatz", + "intent": "FindConnection", + "entities": [ + { + "entity": "StationStart", + "start": 1, + "stop": 2, + "text": "garching foschungszentrum" + }, + { + "entity": "StationDest", + "start": 4, + "stop": 4, + "text": "odeonsplatz" + } + ] + }, + { + "text": "next bus in garching", + "intent": "DepartureTime", + "entities": [ + { + "entity": "Vehicle", + "start": 1, + "stop": 1, + "text": "bus" + }, + { + "entity": "Criterion", + "start": 0, + "stop": 0, + "text": "next" + }, + { + "entity": "StationStart", + "start": 3, + "stop": 3, + "text": "garching" + } + ] + }, + { + "text": "when does the train leaving in garching forschungszentrum", + "intent": "DepartureTime", + "entities": [ + { + "entity": "Vehicle", + "start": 3, + "stop": 3, + "text": "train" + }, + { + "entity": "StationStart", + "start": 6, + "stop": 7, + "text": "garching forschungszentrum" + } + ] + }, + { + "text": "next subway from garching forschungszentrum", + "intent": "DepartureTime", + "entities": [ + { + "entity": "Criterion", + "start": 0, + "stop": 0, + "text": "next" + }, + { + "entity": "Vehicle", + "start": 1, + "stop": 1, + "text": "subway" + }, + { + "entity": "StationStart", + "start": 3, + "stop": 4, + "text": "garching forschungszentrum" + } + ] + }, + { + "text": "tell me the next bus from garching", + "intent": "DepartureTime", + "entities": [ + { + "entity": "Vehicle", + "start": 4, + "stop": 4, + "text": "bus" + }, + { + "entity": "Criterion", + "start": 3, + "stop": 3, + "text": "next" + }, + { + "entity": "StationStart", + "start": 6, + "stop": 6, + "text": "garching" + } + ] + }, + { + "text": "next bus from garching, please.", + "intent": "DepartureTime", + "entities": [ + { + "entity": "Vehicle", + "start": 1, + "stop": 1, + "text": "bus" + }, + { + "entity": "Criterion", + "start": 0, + "stop": 0, + "text": "next" + }, + { + "entity": "StationStart", + "start": 3, + "stop": 3, + "text": "garching" + } + ] + }, + { + "text": "next bus from garching", + "intent": "DepartureTime", + "entities": [ + { + "entity": "Vehicle", + "start": 1, + "stop": 1, + "text": "bus" + }, + { + "entity": "Criterion", + "start": 0, + "stop": 0, + "text": "next" + }, + { + "entity": "StationStart", + "start": 3, + "stop": 3, + "text": "garching" + } + ] + }, + { + "text": "next bus from central station", + "intent": "DepartureTime", + "entities": [ + { + "entity": "Vehicle", + "start": 1, + "stop": 1, + "text": "bus" + }, + { + "entity": "Criterion", + "start": 0, + "stop": 0, + "text": "next" + }, + { + "entity": "StationStart", + "start": 3, + "stop": 4, + "text": "central station" + } + ] + }, + { + "text": "from garching to marienplatz", + "intent": "FindConnection", + "entities": [ + { + "entity": "StationStart", + "start": 1, + "stop": 1, + "text": "garching" + }, + { + "entity": "StationDest", + "start": 3, + "stop": 3, + "text": "marienplatz" + } + ] + }, + { + "text": "next bus from garching.", + "intent": "DepartureTime", + "entities": [ + { + "entity": "Vehicle", + "start": 1, + "stop": 1, + "text": "bus" + }, + { + "entity": "Criterion", + "start": 0, + "stop": 0, + "text": "next" + }, + { + "entity": "StationStart", + "start": 3, + "stop": 3, + "text": "garching" + } + ] + }, + { + "text": "connection from garching to hauptbahnhof?", + "intent": "FindConnection", + "entities": [ + { + "entity": "StationStart", + "start": 2, + "stop": 2, + "text": "garching" + }, + { + "entity": "StationDest", + "start": 4, + "stop": 4, + "text": "hauptbahnhof" + } + ] + }, + { + "text": "when does the next bus departs from garching?", + "intent": "DepartureTime", + "entities": [ + { + "entity": "Vehicle", + "start": 4, + "stop": 4, + "text": "bus" + }, + { + "entity": "Criterion", + "start": 3, + "stop": 3, + "text": "next" + }, + { + "entity": "StationStart", + "start": 7, + "stop": 7, + "text": "garching" + } + ] + }, + { + "text": "find connection from hauptbahnhof to odeonsplatz", + "intent": "FindConnection", + "entities": [ + { + "entity": "StationStart", + "start": 3, + "stop": 3, + "text": "hauptbahnhof" + }, + { + "entity": "StationDest", + "start": 5, + "stop": 5, + "text": "odeonsplatz" + } + ] + }, + { + "text": "when does the next u-bahn departs at garching forschungszentrum?", + "intent": "DepartureTime", + "entities": [ + { + "entity": "Vehicle", + "start": 4, + "stop": 6, + "text": "u-bahn" + }, + { + "entity": "Criterion", + "start": 3, + "stop": 3, + "text": "next" + }, + { + "entity": "StationStart", + "start": 9, + "stop": 10, + "text": "garching forschungszentrum" + } + ] + }, + { + "text": "when does the next u-bahn departs at garching?", + "intent": "DepartureTime", + "entities": [ + { + "entity": "Vehicle", + "start": 4, + "stop": 6, + "text": "u-bahn" + }, + { + "entity": "Criterion", + "start": 3, + "stop": 3, + "text": "next" + }, + { + "entity": "StationStart", + "start": 9, + "stop": 9, + "text": "garching" + } + ] + }, + { + "text": "when does the next subway departs at garching", + "intent": "DepartureTime", + "entities": [ + { + "entity": "Vehicle", + "start": 4, + "stop": 4, + "text": "subway" + }, + { + "entity": "Criterion", + "start": 3, + "stop": 3, + "text": "next" + }, + { + "entity": "StationStart", + "start": 7, + "stop": 7, + "text": "garching" + } + ] + }, + { + "text": "when is the next train in garching?", + "intent": "DepartureTime", + "entities": [ + { + "entity": "Vehicle", + "start": 4, + "stop": 4, + "text": "train" + }, + { + "entity": "Criterion", + "start": 3, + "stop": 3, + "text": "next" + }, + { + "entity": "StationStart", + "start": 6, + "stop": 6, + "text": "garching" + } + ] + }, + { + "text": "how to get from münchner freiheit to garching ?", + "intent": "FindConnection", + "entities": [ + { + "entity": "StationStart", + "start": 4, + "stop": 5, + "text": "münchner freiheit" + }, + { + "entity": "StationDest", + "start": 7, + "stop": 7, + "text": "garching" + } + ] + }, + { + "text": "implerstraße to ostbahnhof", + "intent": "FindConnection", + "entities": [ + { + "entity": "StationStart", + "start": 0, + "stop": 0, + "text": "implerstraße" + }, + { + "entity": "StationDest", + "start": 2, + "stop": 2, + "text": "ostbahnhof" + } + ] + }, + { + "text": "how can i get from hauptbahnhof to odeonsplatz?", + "intent": "FindConnection", + "entities": [ + { + "entity": "StationStart", + "start": 5, + "stop": 5, + "text": "hauptbahnhof" + }, + { + "entity": "StationDest", + "start": 7, + "stop": 7, + "text": "odeonsplatz" + } + ] + }, + { + "text": "how can i go from garching forschungszentrum to prinzregentenplatz", + "intent": "FindConnection", + "entities": [ + { + "entity": "StationStart", + "start": 5, + "stop": 6, + "text": "garching forschungszentrum" + }, + { + "entity": "StationDest", + "start": 8, + "stop": 8, + "text": "prinzregentenplatz" + } + ] + }, + { + "text": "how can i get from mangfallplatz to garching", + "intent": "FindConnection", + "entities": [ + { + "entity": "StationStart", + "start": 5, + "stop": 5, + "text": "mangfallplatz" + }, + { + "entity": "StationDest", + "start": 7, + "stop": 7, + "text": "garching" + } + ] + }, + { + "text": "how can i get to hohenlindenerstraße", + "intent": "FindConnection", + "entities": [ + { + "entity": "StationDest", + "start": 5, + "stop": 5, + "text": "hohenlindenerstraße" + } + ] + }, + { + "text": "harthaus to hackerbrücke", + "intent": "FindConnection", + "entities": [ + { + "entity": "StationStart", + "start": 0, + "stop": 0, + "text": "harthaus" + }, + { + "entity": "StationDest", + "start": 2, + "stop": 2, + "text": "hackerbrücke" + } + ] + }, + { + "text": "how can i get from feldmoching to garching forschungszentrum?", + "intent": "FindConnection", + "entities": [ + { + "entity": "StationStart", + "start": 5, + "stop": 5, + "text": "feldmoching" + }, + { + "entity": "StationDest", + "start": 7, + "stop": 8, + "text": "garching forschungszentrum" + } + ] + }, + { + "text": "from marienplatz to petershausen", + "intent": "FindConnection", + "entities": [ + { + "entity": "StationStart", + "start": 1, + "stop": 1, + "text": "marienplatz" + }, + { + "entity": "StationDest", + "start": 3, + "stop": 3, + "text": "petershausen" + } + ] + }, + { + "text": "when is the train from garching to marienplatz", + "intent": "FindConnection", + "entities": [ + { + "entity": "Vehicle", + "start": 3, + "stop": 3, + "text": "train" + }, + { + "entity": "StationStart", + "start": 5, + "stop": 5, + "text": "garching" + }, + { + "entity": "StationDest", + "start": 7, + "stop": 7, + "text": "marienplatz" + } + ] + }, + { + "text": "neufahrn to garching", + "intent": "FindConnection", + "entities": [ + { + "entity": "StationStart", + "start": 0, + "stop": 0, + "text": "neufahrn" + }, + { + "entity": "StationDest", + "start": 2, + "stop": 2, + "text": "garching" + } + ] + }, + { + "text": "how can i get from mangfallplatz to garching", + "intent": "FindConnection", + "entities": [ + { + "entity": "StationStart", + "start": 5, + "stop": 5, + "text": "mangfallplatz" + }, + { + "entity": "StationDest", + "start": 7, + "stop": 7, + "text": "garching" + } + ] + }, + { + "text": "how can i get to hohenlindenerstr", + "intent": "FindConnection", + "entities": [ + { + "entity": "StationDest", + "start": 5, + "stop": 5, + "text": "hohenlindenerstr" + } + ] + }, + { + "text": "when is the next bus from garching forschungzentrum", + "intent": "DepartureTime", + "entities": [ + { + "entity": "Vehicle", + "start": 4, + "stop": 4, + "text": "bus" + }, + { + "entity": "Criterion", + "start": 3, + "stop": 3, + "text": "next" + }, + { + "entity": "StationStart", + "start": 6, + "stop": 7, + "text": "garching forschungzentrum" + } + ] + }, + { + "text": "how do i get from spitzingplatz to poccistraße?", + "intent": "FindConnection", + "entities": [ + { + "entity": "StationStart", + "start": 5, + "stop": 5, + "text": "spitzingplatz" + }, + { + "entity": "StationDest", + "start": 7, + "stop": 7, + "text": "poccistraße" + } + ] + }, + { + "text": "how can i get from garching forschungszentrum to marienplatz", + "intent": "FindConnection", + "entities": [ + { + "entity": "StationStart", + "start": 5, + "stop": 6, + "text": "garching forschungszentrum" + }, + { + "entity": "StationDest", + "start": 8, + "stop": 8, + "text": "marienplatz" + } + ] + }, + { + "text": "how can i get from klinkum to marienplatz?", + "intent": "FindConnection", + "entities": [ + { + "entity": "StationStart", + "start": 5, + "stop": 5, + "text": "klinkum" + }, + { + "entity": "StationDest", + "start": 7, + "stop": 7, + "text": "marienplatz" + } + ] + }, + { + "text": "how to get from alte heide to marienplatz", + "intent": "FindConnection", + "entities": [ + { + "entity": "StationStart", + "start": 4, + "stop": 5, + "text": "alte heide" + }, + { + "entity": "StationDest", + "start": 7, + "stop": 7, + "text": "marienplatz" + } + ] + }, + { + "text": "next train from muenchen freicheit", + "intent": "DepartureTime", + "entities": [ + { + "entity": "Vehicle", + "start": 1, + "stop": 1, + "text": "train" + }, + { + "entity": "Criterion", + "start": 0, + "stop": 0, + "text": "next" + }, + { + "entity": "StationStart", + "start": 3, + "stop": 4, + "text": "muenchen freicheit" + } + ] + }, + { + "text": "depart in garching, i assume", + "intent": "DepartureTime", + "entities": [ + { + "entity": "StationStart", + "start": 2, + "stop": 2, + "text": "garching" + } + ] + }, + { + "text": "when does the next u-bahn depart at garching?", + "intent": "DepartureTime", + "entities": [ + { + "entity": "Vehicle", + "start": 4, + "stop": 6, + "text": "u-bahn" + }, + { + "entity": "Criterion", + "start": 3, + "stop": 3, + "text": "next" + }, + { + "entity": "StationStart", + "start": 9, + "stop": 9, + "text": "garching" + } + ] + }, + { + "text": "the next bus from garching forschungzentrum", + "intent": "DepartureTime", + "entities": [ + { + "entity": "Vehicle", + "start": 2, + "stop": 2, + "text": "bus" + }, + { + "entity": "Criterion", + "start": 1, + "stop": 1, + "text": "next" + }, + { + "entity": "StationStart", + "start": 4, + "stop": 5, + "text": "garching forschungzentrum" + } + ] + }, + { + "text": "when is the next train in alte heide?", + "intent": "DepartureTime", + "entities": [ + { + "entity": "Vehicle", + "start": 4, + "stop": 4, + "text": "train" + }, + { + "entity": "Criterion", + "start": 3, + "stop": 3, + "text": "next" + }, + { + "entity": "StationStart", + "start": 6, + "stop": 7, + "text": "alte heide" + } + ] + }, + { + "text": "or depart from garching", + "intent": "DepartureTime", + "entities": [ + { + "entity": "StationStart", + "start": 3, + "stop": 3, + "text": "garching" + } + ] + }, + { + "text": "hello munich city bot! how do i get from münchner freiheit to scheidplatz?", + "intent": "FindConnection", + "entities": [ + { + "entity": "StationStart", + "start": 10, + "stop": 11, + "text": "münchner freiheit" + }, + { + "entity": "StationDest", + "start": 13, + "stop": 13, + "text": "scheidplatz" + } + ] + }, + { + "text": "how can i get from garching forschungszentrum to prinzregentenplatz", + "intent": "FindConnection", + "entities": [ + { + "entity": "StationStart", + "start": 5, + "stop": 6, + "text": "garching forschungszentrum" + }, + { + "entity": "StationDest", + "start": 8, + "stop": 8, + "text": "prinzregentenplatz" + } + ] + }, + { + "text": "how can i get from neufahrn to garching", + "intent": "FindConnection", + "entities": [ + { + "entity": "StationStart", + "start": 5, + "stop": 5, + "text": "neufahrn" + }, + { + "entity": "StationDest", + "start": 7, + "stop": 7, + "text": "garching" + } + ] + }, + { + "text": "take me to the airport", + "intent": "FindConnection", + "entities": [ + { + "entity": "StationDest", + "start": 4, + "stop": 4, + "text": "airport" + } + ] + }, + { + "text": "when does the next u6 leave from garching forschungszentrum", + "intent": "DepartureTime", + "entities": [ + { + "entity": "Line", + "start": 4, + "stop": 4, + "text": "u6" + }, + { + "entity": "Criterion", + "start": 3, + "stop": 3, + "text": "next" + }, + { + "entity": "StationStart", + "start": 7, + "stop": 8, + "text": "garching forschungszentrum" + } + ] + }, + { + "text": "how i can get from munchner freiheit to nordfriedhof?", + "intent": "FindConnection", + "entities": [ + { + "entity": "StationStart", + "start": 5, + "stop": 6, + "text": "munchner freiheit" + }, + { + "entity": "StationDest", + "start": 8, + "stop": 8, + "text": "nordfriedhof" + } + ] + }, + { + "text": "from harthaus to hackerbrücke", + "intent": "FindConnection", + "entities": [ + { + "entity": "StationStart", + "start": 1, + "stop": 1, + "text": "harthaus" + }, + { + "entity": "StationDest", + "start": 3, + "stop": 3, + "text": "hackerbrücke" + } + ] + }, + { + "text": "when is the train from garching", + "intent": "DepartureTime", + "entities": [ + { + "entity": "Vehicle", + "start": 3, + "stop": 3, + "text": "train" + }, + { + "entity": "StationStart", + "start": 5, + "stop": 5, + "text": "garching" + } + ] + }, + { + "text": "what is the next train from münchner freiheit", + "intent": "DepartureTime", + "entities": [ + { + "entity": "Vehicle", + "start": 4, + "stop": 4, + "text": "train" + }, + { + "entity": "Criterion", + "start": 3, + "stop": 3, + "text": "next" + }, + { + "entity": "StationStart", + "start": 6, + "stop": 7, + "text": "münchner freiheit" + } + ] + }, + { + "text": "how can i get from theresienstrasse to garching forschungszentrum", + "intent": "FindConnection", + "entities": [ + { + "entity": "StationStart", + "start": 5, + "stop": 5, + "text": "theresienstrasse" + }, + { + "entity": "StationDest", + "start": 7, + "stop": 8, + "text": "garching forschungszentrum" + } + ] + }, + { + "text": "how can i get from münchner freiheit to odeonsplatz", + "intent": "FindConnection", + "entities": [ + { + "entity": "StationStart", + "start": 5, + "stop": 6, + "text": "münchner freiheit" + }, + { + "entity": "StationDest", + "start": 8, + "stop": 8, + "text": "odeonsplatz" + } + ] + }, + { + "text": "from garching to hauptbahnhof", + "intent": "FindConnection", + "entities": [ + { + "entity": "StationStart", + "start": 1, + "stop": 1, + "text": "garching" + }, + { + "entity": "StationDest", + "start": 3, + "stop": 3, + "text": "hauptbahnhof" + } + ] + }, + { + "text": "how can i get from garching to odeonsplatz", + "intent": "FindConnection", + "entities": [ + { + "entity": "StationStart", + "start": 5, + "stop": 5, + "text": "garching" + }, + { + "entity": "StationDest", + "start": 7, + "stop": 7, + "text": "odeonsplatz" + } + ] + }, + { + "text": "start: neufahrn end:garching", + "intent": "FindConnection", + "entities": [ + { + "entity": "StationStart", + "start": 2, + "stop": 2, + "text": "neufahrn" + }, + { + "entity": "StationDest", + "start": 5, + "stop": 5, + "text": "garching" + } + ] + }, + { + "text": "how can i get from studentenstadt to garching", + "intent": "FindConnection", + "entities": [ + { + "entity": "StationStart", + "start": 5, + "stop": 5, + "text": "studentenstadt" + }, + { + "entity": "StationDest", + "start": 7, + "stop": 7, + "text": "garching" + } + ] + }, + { + "text": "when is the next bus from garching", + "intent": "DepartureTime", + "entities": [ + { + "entity": "Vehicle", + "start": 4, + "stop": 4, + "text": "bus" + }, + { + "entity": "Criterion", + "start": 3, + "stop": 3, + "text": "next" + }, + { + "entity": "StationStart", + "start": 6, + "stop": 6, + "text": "garching" + } + ] + }, + { + "text": "take me from hauptbahnhof to odeonsplatz", + "intent": "FindConnection", + "entities": [ + { + "entity": "StationStart", + "start": 3, + "stop": 3, + "text": "hauptbahnhof" + }, + { + "entity": "StationDest", + "start": 5, + "stop": 5, + "text": "odeonsplatz" + } + ] + }, + { + "text": "what's the shortest connection between quiddestraße and odeonsplatz?", + "intent": "FindConnection", + "entities": [ + { + "entity": "Criterion", + "start": 4, + "stop": 4, + "text": "shortest" + }, + { + "entity": "StationStart", + "start": 7, + "stop": 7, + "text": "quiddestraße" + }, + { + "entity": "StationDest", + "start": 9, + "stop": 9, + "text": "odeonsplatz" + } + ] + }, + { + "text": "what is the cheapest connection between quiddestraße and hauptbahnhof?", + "intent": "FindConnection", + "entities": [ + { + "entity": "Criterion", + "start": 3, + "stop": 3, + "text": "cheapest" + }, + { + "entity": "StationStart", + "start": 6, + "stop": 6, + "text": "quiddestraße" + }, + { + "entity": "StationDest", + "start": 8, + "stop": 8, + "text": "hauptbahnhof" + } + ] + }, + { + "text": "what's the shortest way between hauptbahnhof and odeonsplatz?", + "intent": "FindConnection", + "entities": [ + { + "entity": "Criterion", + "start": 4, + "stop": 4, + "text": "shortest" + }, + { + "entity": "StationStart", + "start": 7, + "stop": 7, + "text": "hauptbahnhof" + }, + { + "entity": "StationDest", + "start": 9, + "stop": 9, + "text": "odeonsplatz" + } + ] + }, + { + "text": "how can i get from garching to münchner freiheit as fast as possible?", + "intent": "FindConnection", + "entities": [ + { + "entity": "Criterion", + "start": 10, + "stop": 10, + "text": "fast" + }, + { + "entity": "StationStart", + "start": 5, + "stop": 5, + "text": "garching" + }, + { + "entity": "StationDest", + "start": 7, + "stop": 8, + "text": "münchner freiheit" + } + ] + }, + { + "text": "what's the cheapest way from neuperlach süd to lehel?", + "intent": "FindConnection", + "entities": [ + { + "entity": "Criterion", + "start": 4, + "stop": 4, + "text": "cheapest" + }, + { + "entity": "StationStart", + "start": 7, + "stop": 8, + "text": "neuperlach süd" + }, + { + "entity": "StationDest", + "start": 10, + "stop": 10, + "text": "lehel" + } + ] + }, + { + "text": "how can i get from neuperlach zentrum to karlsplatz as fast as possible?", + "intent": "FindConnection", + "entities": [ + { + "entity": "Criterion", + "start": 10, + "stop": 10, + "text": "fast" + }, + { + "entity": "StationStart", + "start": 5, + "stop": 6, + "text": "neuperlach zentrum" + }, + { + "entity": "StationDest", + "start": 8, + "stop": 8, + "text": "karlsplatz" + } + ] + }, + { + "text": "could you give me the fastest connection between brudermühlstraße and alte heide?", + "intent": "FindConnection", + "entities": [ + { + "entity": "Criterion", + "start": 5, + "stop": 5, + "text": "fastest" + }, + { + "entity": "StationStart", + "start": 8, + "stop": 8, + "text": "brudermühlstraße" + }, + { + "entity": "StationDest", + "start": 10, + "stop": 11, + "text": "alte heide" + } + ] + }, + { + "text": "is there a train from neuperlach zentrum to garching at 3 pm?", + "intent": "FindConnection", + "entities": [ + { + "entity": "TimeStartTime", + "start": 10, + "stop": 11, + "text": "3 pm" + }, + { + "entity": "StationStart", + "start": 5, + "stop": 6, + "text": "neuperlach zentrum" + }, + { + "entity": "StationDest", + "start": 8, + "stop": 8, + "text": "garching" + } + ] + }, + { + "text": "can you find a connection from olympiazentrum to lehel at 2 pm?", + "intent": "FindConnection", + "entities": [ + { + "entity": "TimeStartTime", + "start": 10, + "stop": 11, + "text": "2 pm" + }, + { + "entity": "StationStart", + "start": 6, + "stop": 6, + "text": "olympiazentrum" + }, + { + "entity": "StationDest", + "start": 8, + "stop": 8, + "text": "lehel" + } + ] + }, + { + "text": "i need a connection from harras to karl-preis-platz at 8 am.", + "intent": "FindConnection", + "entities": [ + { + "entity": "TimeStartTime", + "start": 13, + "stop": 14, + "text": "8 am" + }, + { + "entity": "StationStart", + "start": 5, + "stop": 5, + "text": "harras" + }, + { + "entity": "StationDest", + "start": 7, + "stop": 11, + "text": "karl-preis-platz" + } + ] + }, + { + "text": "in need to be at hauptbahnhof at 1 pm, can you search a connection from garching forschungszentrum?", + "intent": "FindConnection", + "entities": [ + { + "entity": "TimeEndTime", + "start": 7, + "stop": 8, + "text": "1 pm" + }, + { + "entity": "StationStart", + "start": 16, + "stop": 17, + "text": "garching forschungszentrum" + }, + { + "entity": "StationDest", + "start": 5, + "stop": 5, + "text": "hauptbahnhof" + } + ] + }, + { + "text": "i need to be in garching at 9", + "intent": "FindConnection", + "entities": [ + { + "entity": "TimeEndTime", + "start": 7, + "stop": 7, + "text": "9" + }, + { + "entity": "StationDest", + "start": 5, + "stop": 5, + "text": "garching" + } + ] + }, + { + "text": "can i take a bus from quiddestraße to hauptbahnhof?", + "intent": "FindConnection", + "entities": [ + { + "entity": "Vehicle", + "start": 4, + "stop": 4, + "text": "bus" + }, + { + "entity": "StationStart", + "start": 6, + "stop": 6, + "text": "quiddestraße" + }, + { + "entity": "StationDest", + "start": 8, + "stop": 8, + "text": "hauptbahnhof" + } + ] + }, + { + "text": "can you find the shortest way from moosfeld to milbertshofen?", + "intent": "FindConnection", + "entities": [ + { + "entity": "Criterion", + "start": 4, + "stop": 4, + "text": "shortest" + }, + { + "entity": "StationStart", + "start": 7, + "stop": 7, + "text": "moosfeld" + }, + { + "entity": "StationDest", + "start": 9, + "stop": 9, + "text": "milbertshofen" + } + ] + }, + { + "text": "how can i get to neuperlach süd from garching forschungszentrum?", + "intent": "FindConnection", + "entities": [ + { + "entity": "StationStart", + "start": 8, + "stop": 9, + "text": "garching forschungszentrum" + }, + { + "entity": "StationDest", + "start": 5, + "stop": 6, + "text": "neuperlach süd" + } + ] + }, + { + "text": "can you find a bus from quiddestraße to lehel?", + "intent": "FindConnection", + "entities": [ + { + "entity": "Vehicle", + "start": 4, + "stop": 4, + "text": "bus" + }, + { + "entity": "StationStart", + "start": 6, + "stop": 6, + "text": "quiddestraße" + }, + { + "entity": "StationDest", + "start": 8, + "stop": 8, + "text": "lehel" + } + ] + }, + { + "text": "is there a tram from karlsplatz to lehel?", + "intent": "FindConnection", + "entities": [ + { + "entity": "Vehicle", + "start": 3, + "stop": 3, + "text": "tram" + }, + { + "entity": "StationStart", + "start": 5, + "stop": 5, + "text": "karlsplatz" + }, + { + "entity": "StationDest", + "start": 7, + "stop": 7, + "text": "lehel" + } + ] + }, + { + "text": "is there a bus from garching to moosach at around 5?", + "intent": "FindConnection", + "entities": [ + { + "entity": "Vehicle", + "start": 3, + "stop": 3, + "text": "bus" + }, + { + "entity": "TimeStartTime", + "start": 10, + "stop": 10, + "text": "5" + }, + { + "entity": "StationStart", + "start": 5, + "stop": 5, + "text": "garching" + }, + { + "entity": "StationDest", + "start": 7, + "stop": 7, + "text": "moosach" + } + ] + }, + { + "text": "is there a bus from odeonsplatz to hauptbahnhof at 3 pm?", + "intent": "FindConnection", + "entities": [ + { + "entity": "Vehicle", + "start": 3, + "stop": 3, + "text": "bus" + }, + { + "entity": "TimeStartTime", + "start": 9, + "stop": 10, + "text": "3 pm" + }, + { + "entity": "StationStart", + "start": 5, + "stop": 5, + "text": "odeonsplatz" + }, + { + "entity": "StationDest", + "start": 7, + "stop": 7, + "text": "hauptbahnhof" + } + ] + }, + { + "text": "can you tell me the cheapest way from garching forschungszentrum to quiddestraße?", + "intent": "FindConnection", + "entities": [ + { + "entity": "Criterion", + "start": 5, + "stop": 5, + "text": "cheapest" + }, + { + "entity": "StationStart", + "start": 8, + "stop": 9, + "text": "garching forschungszentrum" + }, + { + "entity": "StationDest", + "start": 11, + "stop": 11, + "text": "quiddestraße" + } + ] + }, + { + "text": "how can i get to quiddestraße?", + "intent": "FindConnection", + "entities": [ + { + "entity": "StationDest", + "start": 5, + "stop": 5, + "text": "quiddestraße" + } + ] + }, + { + "text": "when does the next bus leaves from hauptbahnhof?", + "intent": "DepartureTime", + "entities": [ + { + "entity": "Vehicle", + "start": 4, + "stop": 4, + "text": "bus" + }, + { + "entity": "Criterion", + "start": 3, + "stop": 3, + "text": "next" + }, + { + "entity": "StationStart", + "start": 7, + "stop": 7, + "text": "hauptbahnhof" + } + ] + }, + { + "text": "how can i get from garching to hauptbahnhof?", + "intent": "FindConnection", + "entities": [ + { + "entity": "StationStart", + "start": 5, + "stop": 5, + "text": "garching" + }, + { + "entity": "StationDest", + "start": 7, + "stop": 7, + "text": "hauptbahnhof" + } + ] + }, + { + "text": "how can i get from kurt-eisner-straße to garching?", + "intent": "FindConnection", + "entities": [ + { + "entity": "StationStart", + "start": 5, + "stop": 9, + "text": "kurt-eisner-straße" + }, + { + "entity": "StationDest", + "start": 11, + "stop": 11, + "text": "garching" + } + ] + }, + { + "text": "when the next train in garching,forschungszentrum is leaving?", + "intent": "DepartureTime", + "entities": [ + { + "entity": "Vehicle", + "start": 3, + "stop": 3, + "text": "train" + }, + { + "entity": "Criterion", + "start": 2, + "stop": 2, + "text": "next" + }, + { + "entity": "StationStart", + "start": 5, + "stop": 7, + "text": "garching,forschungszentrum" + } + ] + }, + { + "text": "what is the next connection from garching forschungszentrum to odeonsplatz?", + "intent": "FindConnection", + "entities": [ + { + "entity": "Criterion", + "start": 3, + "stop": 3, + "text": "next" + }, + { + "entity": "StationStart", + "start": 6, + "stop": 7, + "text": "garching forschungszentrum" + }, + { + "entity": "StationDest", + "start": 9, + "stop": 9, + "text": "odeonsplatz" + } + ] + }, + { + "text": "how can i get from mossach to garching forschungszentrum?", + "intent": "FindConnection", + "entities": [ + { + "entity": "StationStart", + "start": 5, + "stop": 5, + "text": "mossach" + }, + { + "entity": "StationDest", + "start": 7, + "stop": 8, + "text": "garching forschungszentrum" + } + ] + }, + { + "text": "how can i get from garching forschungszentrum to odeonsplatz?", + "intent": "FindConnection", + "entities": [ + { + "entity": "StationStart", + "start": 5, + "stop": 6, + "text": "garching forschungszentrum" + }, + { + "entity": "StationDest", + "start": 8, + "stop": 8, + "text": "odeonsplatz" + } + ] + }, + { + "text": "how can i get from garching, forschungszentrum to odeonsplatz?", + "intent": "FindConnection", + "entities": [ + { + "entity": "StationStart", + "start": 5, + "stop": 7, + "text": "garching, forschungszentrum" + }, + { + "entity": "StationDest", + "start": 9, + "stop": 9, + "text": "odeonsplatz" + } + ] + }, + { + "text": "how can i get from garching forschungszentrum to kurt-eisner-straße?", + "intent": "FindConnection", + "entities": [ + { + "entity": "StationStart", + "start": 5, + "stop": 6, + "text": "garching forschungszentrum" + }, + { + "entity": "StationDest", + "start": 8, + "stop": 12, + "text": "kurt-eisner-straße" + } + ] + }, + { + "text": "how can i get to boltzmannstraße from quiddestraße?", + "intent": "FindConnection", + "entities": [ + { + "entity": "StationStart", + "start": 7, + "stop": 7, + "text": "quiddestraße" + }, + { + "entity": "StationDest", + "start": 5, + "stop": 5, + "text": "boltzmannstraße" + } + ] + }, + { + "text": "when does the next train departs from quiddestraße?", + "intent": "DepartureTime", + "entities": [ + { + "entity": "Vehicle", + "start": 4, + "stop": 4, + "text": "train" + }, + { + "entity": "Criterion", + "start": 3, + "stop": 3, + "text": "next" + }, + { + "entity": "StationStart", + "start": 7, + "stop": 7, + "text": "quiddestraße" + } + ] + }, + { + "text": "when the next train in garching forschungszentrum is leaving?", + "intent": "DepartureTime", + "entities": [ + { + "entity": "Vehicle", + "start": 3, + "stop": 3, + "text": "train" + }, + { + "entity": "Criterion", + "start": 2, + "stop": 2, + "text": "next" + }, + { + "entity": "StationStart", + "start": 5, + "stop": 6, + "text": "garching forschungszentrum" + } + ] + }, + { + "text": "when is the next u6 leaving from garching?", + "intent": "DepartureTime", + "entities": [ + { + "entity": "Line", + "start": 4, + "stop": 4, + "text": "u6" + }, + { + "entity": "StationStart", + "start": 7, + "stop": 7, + "text": "garching" + } + ] + }, + { + "text": "when does the next train leave from garching forschungszentrum", + "intent": "DepartureTime", + "entities": [ + { + "entity": "Vehicle", + "start": 4, + "stop": 4, + "text": "train" + }, + { + "entity": "Criterion", + "start": 3, + "stop": 3, + "text": "next" + }, + { + "entity": "StationStart", + "start": 7, + "stop": 8, + "text": "garching forschungszentrum" + } + ] + }, + { + "text": "when is the next u6?", + "intent": "DepartureTime", + "entities": [ + { + "entity": "Line", + "start": 4, + "stop": 4, + "text": "u6" + }, + { + "entity": "Criterion", + "start": 3, + "stop": 3, + "text": "next" + } + ] + }, + { + "text": "when is the next subway leaving from garching?", + "intent": "DepartureTime", + "entities": [ + { + "entity": "Vehicle", + "start": 4, + "stop": 4, + "text": "subway" + }, + { + "entity": "Criterion", + "start": 3, + "stop": 3, + "text": "next" + }, + { + "entity": "StationStart", + "start": 7, + "stop": 7, + "text": "garching" + } + ] + }, + { + "text": "when the next train in garching is leaving?", + "intent": "DepartureTime", + "entities": [ + { + "entity": "Vehicle", + "start": 3, + "stop": 3, + "text": "train" + }, + { + "entity": "Criterion", + "start": 2, + "stop": 2, + "text": "next" + }, + { + "entity": "StationStart", + "start": 5, + "stop": 5, + "text": "garching" + } + ] + }, + { + "text": "when is the next train leaving in garching", + "intent": "DepartureTime", + "entities": [ + { + "entity": "Vehicle", + "start": 4, + "stop": 4, + "text": "train" + }, + { + "entity": "Criterion", + "start": 3, + "stop": 3, + "text": "next" + }, + { + "entity": "StationStart", + "start": 7, + "stop": 7, + "text": "garching" + } + ] + }, + { + "text": "when does the next train leaves from odeonsplatz?", + "intent": "DepartureTime", + "entities": [ + { + "entity": "Vehicle", + "start": 4, + "stop": 4, + "text": "train" + }, + { + "entity": "Criterion", + "start": 3, + "stop": 3, + "text": "next" + }, + { + "entity": "StationStart", + "start": 7, + "stop": 7, + "text": "odeonsplatz" + } + ] + }, + { + "text": "when does the next train leaves from quiddestraße?", + "intent": "DepartureTime", + "entities": [ + { + "entity": "Vehicle", + "start": 4, + "stop": 4, + "text": "train" + }, + { + "entity": "Criterion", + "start": 3, + "stop": 3, + "text": "next" + }, + { + "entity": "StationStart", + "start": 7, + "stop": 7, + "text": "quiddestraße" + } + ] + }, + { + "text": "when is the next train", + "intent": "DepartureTime", + "entities": [ + { + "entity": "Vehicle", + "start": 4, + "stop": 4, + "text": "train" + }, + { + "entity": "Criterion", + "start": 3, + "stop": 3, + "text": "next" + } + ] + }, + { + "text": "when does the next bus leaves at garching forschungszentrum?", + "intent": "DepartureTime", + "entities": [ + { + "entity": "Vehicle", + "start": 4, + "stop": 4, + "text": "bus" + }, + { + "entity": "Criterion", + "start": 3, + "stop": 3, + "text": "next" + }, + { + "entity": "StationStart", + "start": 7, + "stop": 8, + "text": "garching forschungszentrum" + } + ] + }, + { + "text": "when does the next train leaves?", + "intent": "DepartureTime", + "entities": [ + { + "entity": "Vehicle", + "start": 4, + "stop": 4, + "text": "train" + } + ] + }, + { + "text": "when does the next bus leave in garching?", + "intent": "DepartureTime", + "entities": [ + { + "entity": "Vehicle", + "start": 4, + "stop": 4, + "text": "bus" + }, + { + "entity": "Criterion", + "start": 3, + "stop": 3, + "text": "next" + }, + { + "entity": "StationStart", + "start": 7, + "stop": 7, + "text": "garching" + } + ] + }, + { + "text": "when does the next s-bahn leaves from hauptbahnhof?", + "intent": "DepartureTime", + "entities": [ + { + "entity": "Vehicle", + "start": 4, + "stop": 6, + "text": "s-bahn" + }, + { + "entity": "Criterion", + "start": 3, + "stop": 3, + "text": "next" + }, + { + "entity": "StationStart", + "start": 9, + "stop": 9, + "text": "hauptbahnhof" + } + ] + }, + { + "text": "when does the next subway departes from odeonsplatz?", + "intent": "DepartureTime", + "entities": [ + { + "entity": "Vehicle", + "start": 4, + "stop": 4, + "text": "subway" + }, + { + "entity": "Criterion", + "start": 3, + "stop": 3, + "text": "next" + }, + { + "entity": "StationStart", + "start": 7, + "stop": 7, + "text": "odeonsplatz" + } + ] + }, + { + "text": "show me the next bus from garching!", + "intent": "DepartureTime", + "entities": [ + { + "entity": "Vehicle", + "start": 4, + "stop": 4, + "text": "bus" + }, + { + "entity": "Criterion", + "start": 3, + "stop": 3, + "text": "next" + }, + { + "entity": "StationStart", + "start": 6, + "stop": 6, + "text": "garching" + } + ] + }, + { + "text": "when does the next tram starts from hauptbahnhof?", + "intent": "DepartureTime", + "entities": [ + { + "entity": "Vehicle", + "start": 4, + "stop": 4, + "text": "tram" + }, + { + "entity": "Criterion", + "start": 3, + "stop": 3, + "text": "next" + }, + { + "entity": "StationStart", + "start": 7, + "stop": 7, + "text": "hauptbahnhof" + } + ] + }, + { + "text": "when will the next u-bahn depart from garching forschungszentrum?", + "intent": "DepartureTime", + "entities": [ + { + "entity": "Vehicle", + "start": 4, + "stop": 6, + "text": "u-bahn" + }, + { + "entity": "Criterion", + "start": 3, + "stop": 3, + "text": "next" + }, + { + "entity": "StationStart", + "start": 9, + "stop": 10, + "text": "garching forschungszentrum" + } + ] + }, + { + "text": "show me the next bus from michaelibad.", + "intent": "DepartureTime", + "entities": [ + { + "entity": "Vehicle", + "start": 4, + "stop": 4, + "text": "bus" + }, + { + "entity": "Criterion", + "start": 3, + "stop": 3, + "text": "next" + }, + { + "entity": "StationStart", + "start": 6, + "stop": 6, + "text": "michaelibad" + } + ] + }, + { + "text": "when does the next train starts at sendlinger tor?", + "intent": "DepartureTime", + "entities": [ + { + "entity": "Vehicle", + "start": 4, + "stop": 4, + "text": "train" + }, + { + "entity": "Criterion", + "start": 3, + "stop": 3, + "text": "next" + }, + { + "entity": "StationStart", + "start": 7, + "stop": 8, + "text": "sendlinger tor" + } + ] + }, + { + "text": "hey bot, when does the next bus starts at garching?", + "intent": "DepartureTime", + "entities": [ + { + "entity": "Vehicle", + "start": 7, + "stop": 7, + "text": "bus" + }, + { + "entity": "Criterion", + "start": 6, + "stop": 6, + "text": "next" + }, + { + "entity": "StationStart", + "start": 10, + "stop": 10, + "text": "garching" + } + ] + }, + { + "text": "when does the next bus leaves at garching?", + "intent": "DepartureTime", + "entities": [ + { + "entity": "Vehicle", + "start": 4, + "stop": 4, + "text": "bus" + }, + { + "entity": "Criterion", + "start": 3, + "stop": 3, + "text": "next" + }, + { + "entity": "StationStart", + "start": 7, + "stop": 7, + "text": "garching" + } + ] + }, + { + "text": "when is the bus from quiddestraße?", + "intent": "DepartureTime", + "entities": [ + { + "entity": "Vehicle", + "start": 3, + "stop": 3, + "text": "bus" + }, + { + "entity": "StationStart", + "start": 5, + "stop": 5, + "text": "quiddestraße" + } + ] + }, + { + "text": "when can i get a bus at mariahilfplatz?", + "intent": "DepartureTime", + "entities": [ + { + "entity": "Vehicle", + "start": 5, + "stop": 5, + "text": "bus" + }, + { + "entity": "StationStart", + "start": 7, + "stop": 7, + "text": "mariahilfplatz" + } + ] + }, + { + "text": "when does the next bus leaves at romanplatz?", + "intent": "DepartureTime", + "entities": [ + { + "entity": "Vehicle", + "start": 4, + "stop": 4, + "text": "bus" + }, + { + "entity": "Criterion", + "start": 3, + "stop": 3, + "text": "next" + }, + { + "entity": "StationStart", + "start": 7, + "stop": 7, + "text": "romanplatz" + } + ] + }, + { + "text": "when does the bus to röblingweg starts?", + "intent": "DepartureTime", + "entities": [ + { + "entity": "Vehicle", + "start": 3, + "stop": 3, + "text": "bus" + }, + { + "entity": "StationStart", + "start": 5, + "stop": 5, + "text": "röblingweg" + } + ] + }, + { + "text": "next bus from quiddestraße?", + "intent": "DepartureTime", + "entities": [ + { + "entity": "Vehicle", + "start": 1, + "stop": 1, + "text": "bus" + }, + { + "entity": "Criterion", + "start": 0, + "stop": 0, + "text": "next" + }, + { + "entity": "StationStart", + "start": 3, + "stop": 3, + "text": "quiddestraße" + } + ] + }, + { + "text": "when is the next bus leaving from garching?", + "intent": "DepartureTime", + "entities": [ + { + "entity": "Vehicle", + "start": 4, + "stop": 4, + "text": "bus" + }, + { + "entity": "Criterion", + "start": 3, + "stop": 3, + "text": "next" + }, + { + "entity": "StationStart", + "start": 7, + "stop": 7, + "text": "garching" + } + ] + }, + { + "text": "when is the train leaving in garching", + "intent": "DepartureTime", + "entities": [ + { + "entity": "Vehicle", + "start": 3, + "stop": 3, + "text": "train" + }, + { + "entity": "StationStart", + "start": 6, + "stop": 6, + "text": "garching" + } + ] + }, + { + "text": "when is the train leaving in garching?", + "intent": "DepartureTime", + "entities": [ + { + "entity": "Vehicle", + "start": 3, + "stop": 3, + "text": "train" + }, + { + "entity": "StationStart", + "start": 6, + "stop": 6, + "text": "garching" + } + ] + }, + { + "text": "how can i get from garching to odeonsplatz?", + "intent": "FindConnection", + "entities": [ + { + "entity": "StationStart", + "start": 5, + "stop": 5, + "text": "garching" + }, + { + "entity": "StationDest", + "start": 7, + "stop": 7, + "text": "odeonsplatz" + } + ] + }, + { + "text": "when is adrians next subway leaving at garching forschungszentrum?", + "intent": "DepartureTime", + "entities": [ + { + "entity": "Vehicle", + "start": 4, + "stop": 4, + "text": "subway" + }, + { + "entity": "Criterion", + "start": 3, + "stop": 3, + "text": "next" + }, + { + "entity": "StationStart", + "start": 7, + "stop": 8, + "text": "garching forschungszentrum" + } + ] + }, + { + "text": "how can i get from olympiazentrum to hauptbahnhof?", + "intent": "FindConnection", + "entities": [ + { + "entity": "StationStart", + "start": 5, + "stop": 5, + "text": "olympiazentrum" + }, + { + "entity": "StationDest", + "start": 7, + "stop": 7, + "text": "hauptbahnhof" + } + ] + }, + { + "text": "how can i get from quiddestraße to boltzmannstraße?", + "intent": "FindConnection", + "entities": [ + { + "entity": "StationStart", + "start": 5, + "stop": 5, + "text": "quiddestraße" + }, + { + "entity": "StationDest", + "start": 7, + "stop": 7, + "text": "boltzmannstraße" + } + ] + }, + { + "text": "how can i get from moosach to garching forschungszentrum?", + "intent": "FindConnection", + "entities": [ + { + "entity": "StationStart", + "start": 5, + "stop": 5, + "text": "moosach" + }, + { + "entity": "StationDest", + "start": 7, + "stop": 8, + "text": "garching forschungszentrum" + } + ] + }, + { + "text": "can you give me a connection from garching to odeonsplatz?", + "intent": "FindConnection", + "entities": [ + { + "entity": "StationStart", + "start": 7, + "stop": 7, + "text": "garching" + }, + { + "entity": "StationDest", + "start": 9, + "stop": 9, + "text": "odeonsplatz" + } + ] + }, + { + "text": "when is the next train from garching", + "intent": "DepartureTime", + "entities": [ + { + "entity": "Vehicle", + "start": 4, + "stop": 4, + "text": "train" + }, + { + "entity": "Criterion", + "start": 3, + "stop": 3, + "text": "next" + }, + { + "entity": "StationStart", + "start": 6, + "stop": 6, + "text": "garching" + } + ] + }, + { + "text": "when comes the next train", + "intent": "DepartureTime", + "entities": [ + { + "entity": "Vehicle", + "start": 4, + "stop": 4, + "text": "train" + }, + { + "entity": "Criterion", + "start": 3, + "stop": 3, + "text": "next" + } + ] + }, + { + "text": "when is the next train in nordfriedhof", + "intent": "DepartureTime", + "entities": [ + { + "entity": "Vehicle", + "start": 4, + "stop": 4, + "text": "train" + }, + { + "entity": "Criterion", + "start": 3, + "stop": 3, + "text": "next" + }, + { + "entity": "StationStart", + "start": 6, + "stop": 6, + "text": "nordfriedhof" + } + ] + }, + { + "text": "when does the next train come at garching forschungszentrum", + "intent": "DepartureTime", + "entities": [ + { + "entity": "Vehicle", + "start": 4, + "stop": 4, + "text": "train" + }, + { + "entity": "Criterion", + "start": 3, + "stop": 3, + "text": "next" + }, + { + "entity": "StationStart", + "start": 7, + "stop": 8, + "text": "garching forschungszentrum" + } + ] + }, + { + "text": "when is the next train from nordfriedhof to garching forschungszentrum", + "intent": "FindConnection", + "entities": [ + { + "entity": "Vehicle", + "start": 4, + "stop": 4, + "text": "train" + }, + { + "entity": "Criterion", + "start": 3, + "stop": 3, + "text": "next" + }, + { + "entity": "StationStart", + "start": 6, + "stop": 6, + "text": "nordfriedhof" + }, + { + "entity": "StationDest", + "start": 8, + "stop": 9, + "text": "garching forschungszentrum" + } + ] + }, + { + "text": "i want to travel from garching to odeonsplatz?", + "intent": "FindConnection", + "entities": [ + { + "entity": "StationStart", + "start": 5, + "stop": 5, + "text": "garching" + }, + { + "entity": "StationDest", + "start": 7, + "stop": 7, + "text": "odeonsplatz" + } + ] + }, + { + "text": "how can i get to sendlinger tor?", + "intent": "FindConnection", + "entities": [ + { + "entity": "StationDest", + "start": 5, + "stop": 6, + "text": "sendlinger tor" + } + ] + }, + { + "text": "how do i get to untere straussäcker?", + "intent": "FindConnection", + "entities": [ + { + "entity": "StationDest", + "start": 5, + "stop": 6, + "text": "untere straussäcker" + } + ] + }, + { + "text": "how can i get from garching to garching?", + "intent": "FindConnection", + "entities": [ + { + "entity": "StationStart", + "start": 5, + "stop": 5, + "text": "garching" + }, + { + "entity": "StationDest", + "start": 7, + "stop": 7, + "text": "garching" + } + ] + }, + { + "text": "how can i get from garching to sendlinger tor?", + "intent": "FindConnection", + "entities": [ + { + "entity": "StationStart", + "start": 5, + "stop": 5, + "text": "garching" + }, + { + "entity": "StationDest", + "start": 7, + "stop": 8, + "text": "sendlinger tor" + } + ] + }, + { + "text": "how can i get from garchingto garching?", + "intent": "FindConnection", + "entities": [ + { + "entity": "StationStart", + "start": 5, + "stop": 5, + "text": "garchingto" + }, + { + "entity": "StationDest", + "start": 6, + "stop": 6, + "text": "garching" + } + ] + }, + { + "text": "when is the next train from garching", + "intent": "DepartureTime", + "entities": [ + { + "entity": "Vehicle", + "start": 4, + "stop": 4, + "text": "train" + }, + { + "entity": "Criterion", + "start": 3, + "stop": 3, + "text": "next" + }, + { + "entity": "StationStart", + "start": 6, + "stop": 6, + "text": "garching" + } + ] + }, + { + "text": "how do i get from marienplatz zu garching", + "intent": "FindConnection", + "entities": [ + { + "entity": "StationStart", + "start": 5, + "stop": 5, + "text": "marienplatz" + }, + { + "entity": "StationDest", + "start": 7, + "stop": 7, + "text": "garching" + } + ] + }, + { + "text": "how can i get to milbertshofen from garching?", + "intent": "FindConnection", + "entities": [ + { + "entity": "StationStart", + "start": 7, + "stop": 7, + "text": "garching" + }, + { + "entity": "StationDest", + "start": 5, + "stop": 5, + "text": "milbertshofen" + } + ] + }, + { + "text": "when is the next train to garching", + "intent": "FindConnection", + "entities": [ + { + "entity": "Criterion", + "start": 3, + "stop": 3, + "text": "next" + }, + { + "entity": "Vehicle", + "start": 4, + "stop": 4, + "text": "train" + }, + { + "entity": "StationDest", + "start": 6, + "stop": 6, + "text": "garching" + } + ] + }, + { + "text": "how can i get from garching to milbertshofen?", + "intent": "FindConnection", + "entities": [ + { + "entity": "StationStart", + "start": 5, + "stop": 5, + "text": "garching" + }, + { + "entity": "StationDest", + "start": 7, + "stop": 7, + "text": "milbertshofen" + } + ] + }, + { + "text": "when does the next rocket leaves from garching forschungszentrum?", + "intent": "DepartureTime", + "entities": [ + { + "entity": "Criterion", + "start": 3, + "stop": 3, + "text": "next" + }, + { + "entity": "Vehicle", + "start": 4, + "stop": 4, + "text": "rocket" + }, + { + "entity": "StationStart", + "start": 7, + "stop": 8, + "text": "garching forschungszentrum" + } + ] + }, + { + "text": "connection from untere straßäcker 21 to kieferngarten", + "intent": "FindConnection", + "entities": [ + { + "entity": "StationStart", + "start": 2, + "stop": 4, + "text": "untere straßäcker 21" + }, + { + "entity": "StationDest", + "start": 6, + "stop": 6, + "text": "kieferngarten" + } + ] + }, + { + "text": "how to get from untere strassäcker 21 to frötmaning", + "intent": "FindConnection", + "entities": [ + { + "entity": "StationStart", + "start": 4, + "stop": 6, + "text": "untere strassäcker 21" + }, + { + "entity": "StationDest", + "start": 8, + "stop": 8, + "text": "frötmaning" + } + ] + }, + { + "text": "how to get from untere strassaecker 21 to frötmaning", + "intent": "FindConnection", + "entities": [ + { + "entity": "StationStart", + "start": 4, + "stop": 6, + "text": "untere strassaecker 21" + }, + { + "entity": "StationDest", + "start": 8, + "stop": 8, + "text": "frötmaning" + } + ] + }, + { + "text": "when is the next train from untere straßaecker 21 to kieferngarten", + "intent": "FindConnection", + "entities": [ + { + "entity": "Vehicle", + "start": 4, + "stop": 4, + "text": "train" + }, + { + "entity": "Criterion", + "start": 3, + "stop": 3, + "text": "next" + }, + { + "entity": "StationStart", + "start": 6, + "stop": 8, + "text": "untere straßaecker 21" + }, + { + "entity": "StationDest", + "start": 10, + "stop": 10, + "text": "kieferngarten" + } + ] + }, + { + "text": "when is the next train from untere straßaecker 21, garching to kieferngarten", + "intent": "FindConnection", + "entities": [ + { + "entity": "Vehicle", + "start": 4, + "stop": 4, + "text": "train" + }, + { + "entity": "Criterion", + "start": 3, + "stop": 3, + "text": "next" + }, + { + "entity": "StationStart", + "start": 7, + "stop": 10, + "text": "straßaecker 21, garching" + }, + { + "entity": "StationDest", + "start": 12, + "stop": 12, + "text": "kieferngarten" + } + ] + }, + { + "text": "from garching to perlach", + "intent": "FindConnection", + "entities": [ + { + "entity": "StationStart", + "start": 1, + "stop": 1, + "text": "garching" + }, + { + "entity": "StationDest", + "start": 3, + "stop": 3, + "text": "perlach" + } + ] + }, + { + "text": "how to get from garching to perlach?", + "intent": "FindConnection", + "entities": [ + { + "entity": "StationStart", + "start": 4, + "stop": 4, + "text": "garching" + }, + { + "entity": "StationDest", + "start": 6, + "stop": 6, + "text": "perlach" + } + ] + }, + { + "text": "how to get from bonnerplatz to freimann", + "intent": "FindConnection", + "entities": [ + { + "entity": "StationStart", + "start": 4, + "stop": 4, + "text": "bonnerplatz" + }, + { + "entity": "StationDest", + "start": 6, + "stop": 6, + "text": "freimann" + } + ] + }, + { + "text": "when is the next train in nordfriedhof?", + "intent": "DepartureTime", + "entities": [ + { + "entity": "Vehicle", + "start": 4, + "stop": 4, + "text": "train" + }, + { + "entity": "Criterion", + "start": 3, + "stop": 3, + "text": "next" + }, + { + "entity": "StationStart", + "start": 6, + "stop": 6, + "text": "nordfriedhof" + } + ] + }, + { + "text": "when is the next train in münchner freiheit?", + "intent": "DepartureTime", + "entities": [ + { + "entity": "Vehicle", + "start": 4, + "stop": 4, + "text": "train" + }, + { + "entity": "Criterion", + "start": 3, + "stop": 3, + "text": "next" + }, + { + "entity": "StationStart", + "start": 6, + "stop": 7, + "text": "münchner freiheit" + } + ] + }, + { + "text": "connection from hauptbahnhof to odeonsplatz?", + "intent": "FindConnection", + "entities": [ + { + "entity": "StationStart", + "start": 2, + "stop": 2, + "text": "hauptbahnhof" + }, + { + "entity": "StationDest", + "start": 4, + "stop": 4, + "text": "odeonsplatz" + } + ] + }, + { + "text": "how do i get from olympia einkaufszentrum to hauptbahnhof?", + "intent": "FindConnection", + "entities": [ + { + "entity": "StationStart", + "start": 5, + "stop": 6, + "text": "olympia einkaufszentrum" + }, + { + "entity": "StationDest", + "start": 8, + "stop": 8, + "text": "hauptbahnhof" + } + ] + }, + { + "text": "when is the next bus in garching forschungszentrum", + "intent": "DepartureTime", + "entities": [ + { + "entity": "Vehicle", + "start": 4, + "stop": 4, + "text": "bus" + }, + { + "entity": "Criterion", + "start": 3, + "stop": 3, + "text": "next" + }, + { + "entity": "StationStart", + "start": 6, + "stop": 7, + "text": "garching forschungszentrum" + } + ] + }, + { + "text": "how can i get from garching to marienplatz", + "intent": "FindConnection", + "entities": [ + { + "entity": "StationStart", + "start": 5, + "stop": 5, + "text": "garching" + }, + { + "entity": "StationDest", + "start": 7, + "stop": 7, + "text": "marienplatz" + } + ] + }, + { + "text": "from garching to studentenstadt", + "intent": "FindConnection", + "entities": [ + { + "entity": "StationStart", + "start": 1, + "stop": 1, + "text": "garching" + }, + { + "entity": "StationDest", + "start": 3, + "stop": 3, + "text": "studentenstadt" + } + ] + } + ] +} diff --git a/BotSharp.WebHost/App_Data/DbInitializer/Agents/agents.json b/BotSharp.WebHost/App_Data/DbInitializer/Agents/agents.json index 2f4556652..34f854ad7 100644 --- a/BotSharp.WebHost/App_Data/DbInitializer/Agents/agents.json +++ b/BotSharp.WebHost/App_Data/DbInitializer/Agents/agents.json @@ -13,5 +13,13 @@ "AccessToken": "EAAJym8gGQFMBAPnsxTw6rZBE2WVfYtCJeGkCQ2NZC3VbQd45SyUlXjjgUf1gAkCOWq7v0blxTb1xLZAeMAXYhQj3btcMlMO9YbG7StMyx8ussz5TnD1tjjIZCye5u66PZAuFxSyIPXtTCin8GPiJ19cYB8ZCyH3rr5sro7OxUSyAZDZD" } ] + }, + { + "Id": "bff7605c-3db5-44dc-9ba7-1c9be2832318", + "Name": "Airport", + "UserId": "8da9e1e0-42dc-420a-8016-79b04c1297d0", + "ClientAccessToken": "6ba8a06865944f14981ce18d229283f5", + "DeveloperAccessToken": "f12fbdb0da5a4616b18fa7582d32f6e3", + "Integrations": [] } ] \ No newline at end of file diff --git a/BotSharp.WebHost/Startup.cs b/BotSharp.WebHost/Startup.cs index 8c3f91d23..140496dab 100644 --- a/BotSharp.WebHost/Startup.cs +++ b/BotSharp.WebHost/Startup.cs @@ -14,6 +14,8 @@ using Newtonsoft.Json.Serialization; using Swashbuckle.AspNetCore.Swagger; using BotSharp.Core.Engines.BotSharp; +using System.Collections.Generic; +using Newtonsoft.Json; namespace BotSharp.WebHost { @@ -114,7 +116,6 @@ public void Configure(IApplicationBuilder app, IHostingEnvironment env) loader.Load(); /*Runcmd(); - var ai = new BotSharpAi(); ai.LoadAgent("6a9fd374-c43d-447a-97f2-f37540d0c725"); ai.Train();*/ @@ -160,4 +161,4 @@ public void Runcmd () Console.WriteLine(output); } } -} +} \ No newline at end of file