diff --git a/.gitignore b/.gitignore index cae01f15..6c9e8cd6 100644 --- a/.gitignore +++ b/.gitignore @@ -294,3 +294,6 @@ __pycache__/ /BotSharp.UnitTest/App_Data/BotSharp.db /BotSharp.WebHost/App_Data/BotSharp.db /BotSharp.UI +/BotSharp.WebHost/App_Data/TrainingFiles/bff7605c-3db5-44dc-9ba7-1c9be2832318.parsed.txt +/BotSharp.WebHost/App_Data/TrainingFiles/bff7605c-3db5-44dc-9ba7-1c9be2832318.model +/BotSharp.WebHost/App_Data/TrainingFiles/bff7605c-3db5-44dc-9ba7-1c9be2832318.corpus.txt diff --git a/BotSharp.Core/Abstractions/INlpPipeline.cs b/BotSharp.Core/Abstractions/INlpPipeline.cs index 774be45e..f1e7a2e4 100644 --- a/BotSharp.Core/Abstractions/INlpPipeline.cs +++ b/BotSharp.Core/Abstractions/INlpPipeline.cs @@ -14,6 +14,6 @@ namespace BotSharp.Core.Abstractions { IConfiguration Configuration { get; set; } - bool Process(Agent agent, JObject data); + bool ProcessAsync(Agent agent, JObject data); } } diff --git a/BotSharp.Core/Engines/BotTrainer.cs b/BotSharp.Core/Engines/BotTrainer.cs index 9065a3f2..3461c9fb 100644 --- a/BotSharp.Core/Engines/BotTrainer.cs +++ b/BotSharp.Core/Engines/BotTrainer.cs @@ -47,7 +47,7 @@ namespace BotSharp.Core.Engines string providerName = config.GetSection($"{platform}:Provider").Value; var provider = TypeHelper.GetInstance(providerName, assemblies) as INlpPipeline; provider.Configuration = config.GetSection(platform); - provider.Process(agent, data); + provider.ProcessAsync(agent, data); //var corpus = agent.GrabCorpus(dc); @@ -61,7 +61,7 @@ namespace BotSharp.Core.Engines { var pipe = TypeHelper.GetInstance(pipeName, assemblies) as INlpPipeline; pipe.Configuration = provider.Configuration; - pipe.Process(agent, data); + pipe.ProcessAsync(agent, data); }); diff --git a/BotSharp.Core/Engines/CRFsuite/CRFsuiteEntityRecognizer.cs b/BotSharp.Core/Engines/CRFsuite/CRFsuiteEntityRecognizer.cs index d601eb33..874ead41 100644 --- a/BotSharp.Core/Engines/CRFsuite/CRFsuiteEntityRecognizer.cs +++ b/BotSharp.Core/Engines/CRFsuite/CRFsuiteEntityRecognizer.cs @@ -8,10 +8,12 @@ using Newtonsoft.Json.Linq; using System; using System.Collections; using System.Collections.Generic; +using System.Diagnostics; using System.IO; using System.Text; using System.Text.RegularExpressions; using System.Threading; +using System.Threading.Tasks; namespace BotSharp.Core.Engines.CRFsuite { @@ -19,73 +21,98 @@ namespace BotSharp.Core.Engines.CRFsuite { public IConfiguration Configuration { get; set; } - public bool Process(Agent agent, JObject data) + public bool ProcessAsync(Agent agent, JObject data) { var dc = new DefaultDataContextLoader().GetDefaultDc(); var corpus = agent.Corpus; - - List> tags = data["Tags"].ToObject>>(); + List> tokens = data["Tokens"].ToObject>>(); List> userSays = corpus.UserSays; List> list = new List>(); var dir = Path.Join(AppDomain.CurrentDomain.GetData("DataPath").ToString(), "TrainingFiles"); - FileStream fs = new FileStream(Path.Join(dir, "rawTrain.txt"), FileMode.Create); - StreamWriter sw = new StreamWriter(fs); + string rawTrainingDataFileName = Path.Join(dir, $"{agent.Id}.corpus.txt"); + string parsedTrainingDataFileName = Path.Join(dir, $"{agent.Id}.parsed.txt"); + string modelFileName = Path.Join(dir, $"{agent.Id}.model"); + string logFileName = Path.Join(dir, $"{agent.Id}.log.txt"); - for (int i = 0 ; i < tags.Count; i++) + using (FileStream fs = new FileStream(rawTrainingDataFileName, FileMode.Create)) { - List curLine = Merge(tokens[i], tags[i], userSays[i].Entities); - list.Add(curLine); - curLine.ForEach(trainingData =>{ - string[] wordParams = {trainingData.Entity, trainingData.Token, trainingData.Tag, trainingData.Chunk}; - string wordStr = string.Join(" ", wordParams); - sw.Write(wordStr + "\n"); - }); - sw.Write("\n"); - } - sw.Flush(); - sw.Close(); - fs.Close(); - - new MachineLearning.CRFsuite.Ner().NerStart(); - - Runcmd(); + using (StreamWriter sw = new StreamWriter(fs)) + { + for (int i = 0; i < tokens.Count; i++) + { + List curLine = Merge(tokens[i], userSays[i].Entities); + curLine.ForEach(trainingData => + { + string[] wordParams = { trainingData.Entity, trainingData.Token, trainingData.Pos, trainingData.Chunk }; + string wordStr = string.Join(" ", wordParams); + sw.Write(wordStr + "\n"); + }); + list.Add(curLine); + sw.Write("\n"); + } + sw.Flush(); + } + } + + + var uniFeatures = Configuration.GetValue($"CRFsuiteEntityRecognizer:uniFeatures").Split(" "); + var biFeatures = Configuration.GetValue($"CRFsuiteEntityRecognizer:biFeatures").Split(" "); + + new MachineLearning.CRFsuite.Ner() + .NerStart(rawTrainingDataFileName, parsedTrainingDataFileName, uniFeatures, biFeatures); + + var algorithmDir = Path.Join(AppDomain.CurrentDomain.GetData("ContentRootPath").ToString(), "Algorithms"); + + CallCommandLine(Path.Join(algorithmDir, "crfsuite"), $"learn -m {modelFileName} {parsedTrainingDataFileName}"); // --split=3 -x + + Console.WriteLine($"Saved model to {modelFileName}"); return true; } - public void Runcmd () + public void CallCommandLine(string fileName, string arguments) { - var algorithmDir = Path.Join(AppDomain.CurrentDomain.GetData("ContentRootPath").ToString(), "Algorithms"); - var dataDir = Path.Join(AppDomain.CurrentDomain.GetData("DataPath").ToString(), "TrainingFiles"); + Console.WriteLine($"{fileName} {arguments}"); - string cmd = $"{algorithmDir}/crfsuite learn -m {dataDir}/crfsuite/bolo.model {dataDir}/crfsuite/1.txt"; - System.Diagnostics.Process p = new System.Diagnostics.Process(); - p.StartInfo.FileName = "sh"; - p.StartInfo.UseShellExecute = false; - p.StartInfo.RedirectStandardInput = true; - p.StartInfo.RedirectStandardOutput = true; - p.StartInfo.RedirectStandardError = true; - p.StartInfo.CreateNoWindow = false; - p.Start(); + ProcessStartInfo procStartInfo = new ProcessStartInfo(fileName); + procStartInfo.Arguments = arguments; + // The following commands are needed to redirect the standard output. + // This means that it will be redirected to the Process.StandardOutput StreamReader. + procStartInfo.RedirectStandardOutput = true; + procStartInfo.UseShellExecute = false; + // Do not create the black window. + procStartInfo.CreateNoWindow = true; + if (procStartInfo.EnvironmentVariables["OS"] == "Windows_NT") + { + procStartInfo.FileName = fileName; + } + else + { + procStartInfo.FileName = "sh"; + } - p.StandardInput.WriteLine(cmd + "&exit"); - p.StandardInput.AutoFlush = false; + Process proc = new Process(); + proc.StartInfo = procStartInfo; + proc.Start(); - string output = p.StandardOutput.ReadToEnd(); - - p.WaitForExit();//等待程序执行完退出进程 - p.Close(); - Console.WriteLine(output); + string output = String.Empty; + while (!proc.HasExited) + { + Thread.Sleep(1); + output = proc.StandardOutput.ReadLine(); + Console.WriteLine(output); + } } - public List Merge(List sentence, List tags, List entities) + + public List Merge(List tokens, List entities) { List trainingTuple = new List(); HashSet entityWordBag = new HashSet(); int wordCandidateCount = 0; - for (int i = 0; i < sentence.Count; i++) + for (int i = 0; i < tokens.Count; i++) { TrainingIntentExpressionPart curEntity = null; if (entities != null) @@ -97,7 +124,7 @@ namespace BotSharp.Core.Engines.CRFsuite string[] words = entity.Value.Split(" "); for (int j = 0; j < words.Length; j++) { - if (sentence[i + j].Text == words[j]) + if (tokens[i + j].Text == words[j]) { wordCandidateCount++; if (j == words.Length - 1) @@ -116,7 +143,7 @@ namespace BotSharp.Core.Engines.CRFsuite String entityName = curEntity.Entity.Contains(":")? curEntity.Entity.Substring(curEntity.Entity.IndexOf(":") + 1): curEntity.Entity; foreach(string s in words) { - trainingTuple.Add(new TrainingData(entityName, s, tags[i], "I")); + trainingTuple.Add(new TrainingData(entityName, s, tokens[i].Pos, "I")); } entityFinded = true; } @@ -125,7 +152,7 @@ namespace BotSharp.Core.Engines.CRFsuite } if (wordCandidateCount == 0) { - trainingTuple.Add(new TrainingData("O", sentence[i].Text, tags[i], "O")); + trainingTuple.Add(new TrainingData("O", tokens[i].Text, tokens[i].Pos, "O")); } else { @@ -141,33 +168,15 @@ namespace BotSharp.Core.Engines.CRFsuite { public String Token { get; set; } public String Entity { get; set; } - public String Tag { get; set; } + public String Pos { get; set; } public String Chunk { get; set; } - public TrainingData(string entity, string token, string tag, string chunk) + public TrainingData(string entity, string token, string pos, string chunk) { this.Token = token; this.Entity = entity; - this.Tag = tag; + this.Pos = pos; this.Chunk = chunk; } } - - - public class Token - { - public String Text { get; set; } - public int Offset { get; set; } - public int End { get; set; } - } - - public class Entity - { - public String EntityName { get; set; } - public String Value { get; set; } - public int Start { get; set; } - public int End { get; set; } - } - - } diff --git a/BotSharp.Core/Engines/SpaCy/SpaCyEntitizer.cs b/BotSharp.Core/Engines/SpaCy/SpaCyEntitizer.cs index 23a596fe..f2dc390c 100644 --- a/BotSharp.Core/Engines/SpaCy/SpaCyEntitizer.cs +++ b/BotSharp.Core/Engines/SpaCy/SpaCyEntitizer.cs @@ -15,7 +15,7 @@ namespace BotSharp.Core.Engines.SpaCy { public IConfiguration Configuration { get; set; } - public bool Process(Agent agent, JObject data) + public bool ProcessAsync(Agent agent, JObject data) { var client = new RestClient(Configuration.GetSection("SpaCyProvider:Url").Value); var request = new RestRequest("entitize", Method.GET); diff --git a/BotSharp.Core/Engines/SpaCy/SpaCyEntityRecognizer.cs b/BotSharp.Core/Engines/SpaCy/SpaCyEntityRecognizer.cs index d0338412..4aa38442 100644 --- a/BotSharp.Core/Engines/SpaCy/SpaCyEntityRecognizer.cs +++ b/BotSharp.Core/Engines/SpaCy/SpaCyEntityRecognizer.cs @@ -17,7 +17,7 @@ namespace BotSharp.Core.Engines.SpaCy List entitiesInTrainingSet = new List(); public IConfiguration Configuration { get; set; } - public bool Process(Agent agent, JObject data) + public bool ProcessAsync(Agent agent, JObject data) { String modelPath = "./entity_rec_output"; String newModelName = "test"; diff --git a/BotSharp.Core/Engines/SpaCy/SpaCyProvider.cs b/BotSharp.Core/Engines/SpaCy/SpaCyProvider.cs index 2d214b92..18ede571 100644 --- a/BotSharp.Core/Engines/SpaCy/SpaCyProvider.cs +++ b/BotSharp.Core/Engines/SpaCy/SpaCyProvider.cs @@ -14,7 +14,7 @@ namespace BotSharp.Core.Engines.SpaCy { public IConfiguration Configuration { get; set; } - public bool Process(Agent agent, JObject data) + public bool ProcessAsync(Agent agent, JObject data) { var client = new RestClient(Configuration.GetSection("SpaCyProvider:Url").Value); var request = new RestRequest("load", Method.GET); diff --git a/BotSharp.Core/Engines/SpaCy/SpaCyTagger.cs b/BotSharp.Core/Engines/SpaCy/SpaCyTagger.cs index 46305e6f..307802fb 100644 --- a/BotSharp.Core/Engines/SpaCy/SpaCyTagger.cs +++ b/BotSharp.Core/Engines/SpaCy/SpaCyTagger.cs @@ -16,7 +16,7 @@ namespace BotSharp.Core.Engines.SpaCy public IConfiguration Configuration { get; set; } - public bool Process(Agent agent, JObject data) + public bool ProcessAsync(Agent agent, JObject data) { var client = new RestClient(Configuration.GetSection("SpaCyProvider:Url").Value); var request = new RestRequest("tagger", Method.GET); diff --git a/BotSharp.Core/Engines/SpaCy/SpaCyTextCategorizer.cs b/BotSharp.Core/Engines/SpaCy/SpaCyTextCategorizer.cs index dc95802a..e2e13830 100644 --- a/BotSharp.Core/Engines/SpaCy/SpaCyTextCategorizer.cs +++ b/BotSharp.Core/Engines/SpaCy/SpaCyTextCategorizer.cs @@ -16,7 +16,7 @@ namespace BotSharp.Core.Engines.SpaCy { public IConfiguration Configuration { get; set; } - public bool Process(Agent agent, JObject data) + public bool ProcessAsync(Agent agent, JObject data) { //var input = new List>(); diff --git a/BotSharp.Core/Engines/SpaCy/SpaCyTokenizer.cs b/BotSharp.Core/Engines/SpaCy/SpaCyTokenizer.cs index 8835b7f0..17e2b672 100644 --- a/BotSharp.Core/Engines/SpaCy/SpaCyTokenizer.cs +++ b/BotSharp.Core/Engines/SpaCy/SpaCyTokenizer.cs @@ -17,25 +17,26 @@ namespace BotSharp.Core.Engines.SpaCy { public IConfiguration Configuration { get; set; } - public bool Process(Agent agent, JObject data) + public bool ProcessAsync(Agent agent, JObject data) { var client = new RestClient(Configuration.GetSection("SpaCyProvider:Url").Value); - var request = new RestRequest("tokenize", Method.GET); + var request = new RestRequest("tokenizer", Method.GET); List> tokens = new List>(); Boolean res = true; var dc = new DefaultDataContextLoader().GetDefaultDc(); var corpus = agent.Corpus; corpus.UserSays.ForEach(usersay => { + Console.WriteLine(usersay.Text); request.AddParameter("text", usersay.Text); var response = client.Execute(request); + tokens.Add(response.Data.Tokens); + res = res && response.IsSuccessful; + }); - - - data.Add("Tokens", JToken.FromObject(tokens)); return res; diff --git a/BotSharp.Core/Engines/SpaCy/SpacyFeaturizer.cs b/BotSharp.Core/Engines/SpaCy/SpacyFeaturizer.cs index f456b8a2..cd44837d 100644 --- a/BotSharp.Core/Engines/SpaCy/SpacyFeaturizer.cs +++ b/BotSharp.Core/Engines/SpaCy/SpacyFeaturizer.cs @@ -14,7 +14,7 @@ namespace BotSharp.Core.Engines.SpaCy { public IConfiguration Configuration { get; set; } - public bool Process(Agent agent, JObject data) + public bool ProcessAsync(Agent agent, JObject data) { var client = new RestClient(Configuration.GetSection("SpaCyProvider:Url").Value); var request = new RestRequest("featurize", Method.GET); diff --git a/BotSharp.MachineLearning/CRFsuite/Crfutils.cs b/BotSharp.MachineLearning/CRFsuite/Crfutils.cs index c3db9e11..f725ef1d 100644 --- a/BotSharp.MachineLearning/CRFsuite/Crfutils.cs +++ b/BotSharp.MachineLearning/CRFsuite/Crfutils.cs @@ -135,16 +135,19 @@ namespace BotSharp.MachineLearning.CRFsuite /// an extractor which to do the feature extracting work /// attributes name seperated by space /// string whihch seperated by - public void CRFFileGenerator (System.Action>> FeatureExtractor, string fields, string sep= " ") + public void CRFFileGenerator (System.Action>> FeatureExtractor, string fields, string rawFile, string parsedName, string sep= " ") { - String fiPath = "/home/bolo/Desktop/BotSharp/TrainingFiles/rawTrain.txt"; - FileStream fs = new FileStream("/home/bolo/Desktop/BotSharp/TrainingFiles/1.txt", FileMode.Create); + FileStream fs = new FileStream(parsedName, FileMode.Create); StreamWriter sw = new StreamWriter(fs); List F = fields.Split(" ").ToList(); - List>> Xs = Readiter(fiPath, F, " "); + List>> Xs = Readiter(rawFile, F, " "); foreach (List> X in Xs) { + if (X.Any(x => x["w"].ToString() == "")) + { + + } FeatureExtractor(X); OutputFeatures(sw, X, "y"); } diff --git a/BotSharp.MachineLearning/CRFsuite/Ner.cs b/BotSharp.MachineLearning/CRFsuite/Ner.cs index 904fe423..ec4b9222 100644 --- a/BotSharp.MachineLearning/CRFsuite/Ner.cs +++ b/BotSharp.MachineLearning/CRFsuite/Ner.cs @@ -469,15 +469,9 @@ namespace BotSharp.MachineLearning.CRFsuite } } - string[] Uique = new string[]{"w", "wl", "pos", "chk", "shape", "shaped", "type", - "p1", "p2", "p3", "p4","s1", "s2", "s3", "s4", - "2d", "4d", "d&a", "d&-", "d&/", "d&,", "d&.", "up", - "iu", "au", "al", "ad", "ao", "cu", "cl", "ca", "cd", "cs"}; - string[] Bi = new string[]{"w", "pos", "chk", "shaped", "type"}; - - public void InitialTemplate () + public void InitialTemplate (string[] uniFeatures, string[] biFeatures) { - foreach (string name in Uique) + foreach (string name in uniFeatures) { for (int i = -2 ; i < 3; i++) { @@ -487,7 +481,7 @@ namespace BotSharp.MachineLearning.CRFsuite } } - foreach (string name in Bi) + foreach (string name in biFeatures) { for (int i = -2 ; i < 2; i++) { @@ -509,7 +503,6 @@ namespace BotSharp.MachineLearning.CRFsuite // Apply the feature templates. new Crfutils().ApplyTemplates(X, templates); - // Append disjunctive features. for (int t = 0; t < X.Count ; t++) { DisJunctive(X, t, "w", -4, -1); @@ -522,10 +515,10 @@ namespace BotSharp.MachineLearning.CRFsuite } } - public void NerStart () + public void NerStart (string rawFile, string parsedName, string[] uniFeatures, string[] biFeatures) { - InitialTemplate(); - new Crfutils().CRFFileGenerator(FeatureExtractor, fields, separator); + InitialTemplate(uniFeatures, biFeatures); + new Crfutils().CRFFileGenerator(FeatureExtractor, fields, rawFile, parsedName, separator); } diff --git a/BotSharp.MachineLearning/NLP/NlpToken.cs b/BotSharp.MachineLearning/NLP/NlpToken.cs index fdd3613f..e6cb34b8 100644 --- a/BotSharp.MachineLearning/NLP/NlpToken.cs +++ b/BotSharp.MachineLearning/NLP/NlpToken.cs @@ -8,6 +8,9 @@ namespace BotSharp.MachineLearning.NLP { public string Text { get; set; } public int Offset { get; set; } + public string Pos { get; set; } + public string Tag { get; set; } + public string Lemma { get; set; } public int End { get diff --git a/BotSharp.MachineLearning/SpaCy/server.py b/BotSharp.MachineLearning/SpaCy/server.py index 37d47bcf..467b3c0f 100644 --- a/BotSharp.MachineLearning/SpaCy/server.py +++ b/BotSharp.MachineLearning/SpaCy/server.py @@ -1,25 +1,35 @@ from bottle import route, run, request -from spacy.tokenizer import Tokenizer from spacy.pipeline import EntityRecognizer from spacy.pipeline import TextCategorizer +from spacy.gold import GoldParse +#import plac +import random import spacy nlp = spacy.load('en') -tokenizer = Tokenizer(nlp.vocab) ner = EntityRecognizer(nlp.vocab) @route('/load') def load(): pass -@route('/tokenize') +@route('/tokenizer') def tokenize(): - tokens = tokenizer(request.query.text) + doc = nlp(request.query.text) + tokens = [] + for token in doc: + tokens.append({'text': token.text, 'offset': token.idx, 'pos': token.pos_, 'tag': token.tag_, 'lemma': token.lemma_}) + return {'tokens': tokens} + + +@route('/tagger') +def tagger(): + doc = nlp(request.query.text) list = [] - for token in tokens: - print(token) - list.append({'text': token.text, 'offset': token.idx}) - return {'tokens': list} + for token in doc: + list.append(token.tag_) + return {'tags': list} + @route('/featurize') def tokenize(): @@ -46,13 +56,16 @@ def textcategorizer(): texts = request.json["Texts"] golds = request.json["Golds"] labels = request.json["Labels"] - print(labels) + i = 1 train_data = [] for index in range(len(texts)): tuple =(texts[index], golds[index]) train_data.append(tuple) - - print("training data body is: {0}".format(train_data)) + ''' + for tup in train_data: + print("cur tuple {0}, training data body: {1}".format(i, train_data)) + i = i + 1 + ''' textcat = nlp.create_pipe('textcat') nlp.add_pipe(textcat, last=True) for label in labels: @@ -68,8 +81,8 @@ def textcategorizer(): return {'ModelName':'textcat_try'} -@route('/predict') -def predict(): +@route('/textcategorizerpredict') +def textcategorizerpredict(): textcat = TextCategorizer(nlp.vocab) textcat.from_disk('./textcat_try') @@ -78,15 +91,114 @@ def predict(): doc = nlp(request.query.text) #scores = textcat.predict([request.query.text]) - #print(scores) + print(doc.cats) list = [] - for label, confidence in doc.cats: - print(label) - list.append({'Label': label, 'Confidence': confidence}) + for key in doc.cats: + print(key) + list.append({'Label': key, 'Confidence': doc.cats[key]}) print (list) return {'Labels': list} -run(host='0.0.0.0', port=5005, debug=True) +@route('/entityrecognizer', method='POST') +def entityrecognizer(): + model = request.json["ModelPath"] + new_model_name = request.json["NewModelName"] + output_dir = request.json["OutputDir"] + n_iter = request.json["IterTimes"] + raw_data = request.json["TrainingData"] + # generate training_data from raw_data + training_data = [] + for node in raw_data: + labels = [] + for entity in node['Labels']: + label = (entity['Start'], entity['End'], entity['Name']) + labels.append(label) + tup = (node['Text'], labels) + training_data.append(tup) + print(training_data) + + if model is not None: + nlp = spacy.load(model) # load existing spaCy model + print("Loaded model '%s'" % model) + else: + nlp = spacy.blank('en') # create blank Language class + print("Created blank 'en' model") + + # Add entity recognizer to model if it's not in the pipeline + # nlp.create_pipe works for built-ins that are registered with spaCy + if 'ner' not in nlp.pipe_names: + ner = nlp.create_pipe('ner') + nlp.add_pipe(ner) + print("ner created succeed!") + # otherwise, get it, so we can add labels to it + else: + ner = nlp.get_pipe('ner') + print("ner loaded succeed!") + + # check whether there are new labels + entities_in_training_set = request.json["EntitiesInTrainingSet"] + en_labels = ["PERSON","NORP","FAC","ORG","GPE","LOC","PRODUCT",\ + "EVENT","WORK_OF_ART","LAW","LANGUAGE","DATE","TIME","PERCENT",\ + "MONEY","QUANTITY","ORDINAL","CARDINAL"] + + extra_labels = nlp.entity.cfg[u'extra_labels'] \ + if ('extra_labels' in nlp.entity.cfg) else [] + + labels = [] + for entity in entities_in_training_set: + if (entity in en_labels or entity in extra_labels): + continue + labels.append(entity) + + for label in labels: + ner.add_label(label) # add new entity label to entity recognizer + print("label added succeed!") + + if model is None: + optimizer = nlp.begin_training() + else: + # Note that 'begin_training' initializes the models, so it'll zero out + # existing entity types. + optimizer = nlp.entity.create_optimizer() + + # get names of other pipes to disable them during training + other_pipes = [pipe for pipe in nlp.pipe_names if pipe != 'ner'] + with nlp.disable_pipes(*other_pipes): # only train NER + for itn in range(n_iter): + random.shuffle(training_data) + losses = {} + for text, annotations in training_data: + print(text) + print(annotations) + # + doc = nlp.make_doc(text) + gold = GoldParse(doc, entities=annotations) + # + nlp.update([doc], [gold], sgd=optimizer, drop=0.35)#,losses=losses) + #print(losses) + + # save model to output directory + if output_dir is not None: + output_dir = Path(output_dir) + if not output_dir.exists(): + output_dir.mkdir() + nlp.meta['name'] = new_model_name # rename model + nlp.to_disk(output_dir) + print("Saved model to", output_dir) + return True + +@route('/entityrecognizerpredict') +def entityrecognizerpredict(): + + print("Loading from", './entity_rec_output') + nlp2 = spacy.load('./entity_rec_output') + doc2 = nlp2(request.query.text) + for ent in doc2.ents: + print(ent.label_, ent.text) + + + +run(host='0.0.0.0', port=5005, debug=True) \ No newline at end of file diff --git a/BotSharp.WebHost/Algorithms/crfsuite.exe b/BotSharp.WebHost/Algorithms/crfsuite.exe new file mode 100644 index 00000000..0a3843bd Binary files /dev/null and b/BotSharp.WebHost/Algorithms/crfsuite.exe differ diff --git a/BotSharp.WebHost/App_Data/DbInitializer/Agents/Sebis/Airport/agent.json b/BotSharp.WebHost/App_Data/DbInitializer/Agents/Sebis/Chatbot/agent.json similarity index 100% rename from BotSharp.WebHost/App_Data/DbInitializer/Agents/Sebis/Airport/agent.json rename to BotSharp.WebHost/App_Data/DbInitializer/Agents/Sebis/Chatbot/agent.json diff --git a/BotSharp.WebHost/App_Data/DbInitializer/Agents/Sebis/Airport/corpus.json b/BotSharp.WebHost/App_Data/DbInitializer/Agents/Sebis/Chatbot/corpus.json similarity index 94% rename from BotSharp.WebHost/App_Data/DbInitializer/Agents/Sebis/Airport/corpus.json rename to BotSharp.WebHost/App_Data/DbInitializer/Agents/Sebis/Chatbot/corpus.json index 5f605388..6475d44c 100644 --- a/BotSharp.WebHost/App_Data/DbInitializer/Agents/Sebis/Airport/corpus.json +++ b/BotSharp.WebHost/App_Data/DbInitializer/Agents/Sebis/Chatbot/corpus.json @@ -1,4243 +1,4201 @@ -{ - "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": 8, - "text": "kurt-eisner-straße" - }, - { - "entity": "StationDest", - "start": 10, - "stop": 11, - "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": 5, - "text": "kurt-eisner-straße" - }, - { - "entity": "StationDest", - "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 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" - } - ] - } - ] -} +{ + "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": 8, + "text": "kurt-eisner-straße" + }, + { + "entity": "StationDest", + "start": 10, + "stop": 11, + "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": 5, + "text": "kurt-eisner-straße" + }, + { + "entity": "StationDest", + "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 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": "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": "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": "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": "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": "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": "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": "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 34f854ad..4a3e46f4 100644 --- a/BotSharp.WebHost/App_Data/DbInitializer/Agents/agents.json +++ b/BotSharp.WebHost/App_Data/DbInitializer/Agents/agents.json @@ -16,7 +16,7 @@ }, { "Id": "bff7605c-3db5-44dc-9ba7-1c9be2832318", - "Name": "Airport", + "Name": "Chatbot", "UserId": "8da9e1e0-42dc-420a-8016-79b04c1297d0", "ClientAccessToken": "6ba8a06865944f14981ce18d229283f5", "DeveloperAccessToken": "f12fbdb0da5a4616b18fa7582d32f6e3", diff --git a/BotSharp.WebHost/BotSharp.WebHost.csproj b/BotSharp.WebHost/BotSharp.WebHost.csproj index 757b271d..c467e00c 100644 --- a/BotSharp.WebHost/BotSharp.WebHost.csproj +++ b/BotSharp.WebHost/BotSharp.WebHost.csproj @@ -5,6 +5,13 @@ Portable;win10-x64;centos.7-x64 + + + + + + + diff --git a/BotSharp.WebHost/Settings/bot.json b/BotSharp.WebHost/Settings/bot.json index b6924bd2..c6c3d52f 100644 --- a/BotSharp.WebHost/Settings/bot.json +++ b/BotSharp.WebHost/Settings/bot.json @@ -9,6 +9,10 @@ "SpaCyProvider": { "Url": "http://10.2.21.200:5005" }, - "Pipe": "SpaCyTokenizer, SpaCyTagger, CRFsuiteEntityRecognizer" + "Pipe": "SpaCyTokenizer, CRFsuiteEntityRecognizer", + "CRFsuiteEntityRecognizer": { + "uniFeatures": "w wl pos chk shape shaped type p1 p2 p3 p4 s1 s2 s3 s4 2d 4d d&a d&- d&/ d&, d&. up iu au al ad ao cu cl ca cd cs", + "biFeatures": "w pos chk shaped type" + } } }