示例#1
0
        public IntentViewModel PostIntent()
        {
            IntentViewModel intent = null;

            using (var reader = new StreamReader(Request.Body))
            {
                string body = reader.ReadToEnd();
                intent = JsonConvert.DeserializeObject <IntentViewModel>(body);
            }

            var agent = builder.GetAgentByName(intent.Agent);

            intent.Id = Guid.NewGuid().ToString();
            var domain = agent.Domains.First(x => x.DomainName == intent.Domain);

            domain.Intents.Add(intent.ToObject <IntentModel>());
            builder.SaveAgent(agent);

            return(intent);
        }
示例#2
0
        public async Task <AgentModel> TrainAgent([FromRoute] string agentId)
        {
            var agent = await builder.GetAgentById(agentId);

            var corpus = await builder.ExtractorCorpus(agent);

            await builder.Train(agent, corpus, new BotTrainOptions { });

            agent.Status = "Ready";

            await builder.SaveAgent(agent);

            return(agent);
        }
        public async Task <AgentModel> PostAgent()
        {
            AgentModel agent = null;

            using (var reader = new StreamReader(Request.Body))
            {
                string body = reader.ReadToEnd();
                agent = JsonConvert.DeserializeObject <AgentModel>(body);
            }

            // convert to standard Agent structure
            agent.Id   = new Random().Next(Int32.MaxValue).ToString();
            agent.Name = agent.AgentName;
            await builder.SaveAgent(agent);

            return(agent);
        }
示例#4
0
        public DomainModel PostDomain()
        {
            DomainModel domain = null;

            using (var reader = new StreamReader(Request.Body))
            {
                string body = reader.ReadToEnd();
                domain = JsonConvert.DeserializeObject <DomainModel>(body);
            }

            var agent = builder.GetAgentByName(domain.Agent);

            domain.Id = Guid.NewGuid().ToString();
            (agent as AgentModel).Domains.Add(domain);
            builder.SaveAgent(agent);

            return(domain);
        }
示例#5
0
        public DomainModel PostDomain()
        {
            DomainModel domain = null;

            using (var reader = new StreamReader(Request.Body))
            {
                string body = reader.ReadToEnd();
                domain = JsonConvert.DeserializeObject <DomainModel>(body);
            }

            var builder = new ArticulateAi <AgentStorageInMemory <DomainModel, EntityModel>, AgentModel, DomainModel, EntityModel>();
            var agent   = builder.GetAgentByName(domain.Agent);

            agent.ExtraData = domain;
            builder.SaveAgent(agent);

            return(domain);
        }
示例#6
0
        public EntityModel PostEntity()
        {
            EntityModel entity = null;

            using (var reader = new StreamReader(Request.Body))
            {
                string body = reader.ReadToEnd();
                entity = JsonConvert.DeserializeObject <EntityModel>(body);
            }

            var builder = new ArticulateAi <AgentStorageInMemory <DomainModel, EntityModel>, AgentModel, DomainModel, EntityModel>();
            var agent   = builder.GetAgentByName(entity.Agent);

            agent.Entities.Add(entity);

            builder.SaveAgent(agent);

            return(entity);
        }
        public async Task <EntityModel> PostEntity()
        {
            EntityModel entity = null;

            using (var reader = new StreamReader(Request.Body))
            {
                string body = reader.ReadToEnd();
                entity = JsonConvert.DeserializeObject <EntityModel>(body);
            }

            var agent = await builder.GetAgentByName(entity.Agent);

            entity.Id = Guid.NewGuid().ToString();
            agent.Entities.Add(entity);

            await builder.SaveAgent(agent);

            return(entity);
        }
示例#8
0
        public AgentModel PostAgent()
        {
            AgentModel agent = null;

            using (var reader = new StreamReader(Request.Body))
            {
                string body = reader.ReadToEnd();
                agent = JsonConvert.DeserializeObject <AgentModel>(body);
            }

            // convert to standard Agent structure
            var builder       = new ArticulateAi <AgentStorageInMemory <DomainModel, EntityModel>, AgentModel, DomainModel, EntityModel>();
            var standardAgent = builder.StandardizeAgent(agent);

            builder.SaveAgent(standardAgent);

            agent.Id = standardAgent.Id;

            return(agent);
        }
示例#9
0
        public IntentScenarioViewModel PostIntentScenario()
        {
            IntentScenarioViewModel scenario = null;

            using (var reader = new StreamReader(Request.Body))
            {
                string body = reader.ReadToEnd();
                scenario = JsonConvert.DeserializeObject <IntentScenarioViewModel>(body);
            }

            scenario.Id = Guid.NewGuid().ToString();

            var agent = builder.GetAgentByName(scenario.Agent);

            var domain = agent.Domains.FirstOrDefault(x => x.DomainName == scenario.Domain);
            var intent = domain.Intents.FirstOrDefault(x => x.IntentName == scenario.Intent);

            intent.Scenario = scenario.ToObject <ScenarioModel>();

            builder.SaveAgent(agent);

            return(scenario);
        }