예제 #1
0
파일: bot.py 프로젝트: cttlfsh/chatbot_lus
def run(serve_forever=True):
    interpreter = RasaNLUInterpreter(CHAT)
    agent = Agent.load(MODEL_DIALOGUE, interpreter=interpreter)

    if serve_forever:
        agent.handle_channel(ConsoleInputChannel())
    return agent
예제 #2
0
파일: bots.py 프로젝트: manigaru/chatbots
def run_bot(serve_forever=True):
    agent = Agent.load('./models/dialogue/default/dialogue_model', RasaNLUInterpreter('./models/nlu/default/nlu_model'))

    if serve_forever:
        agent.handle_channel(ConsoleInputChannel())

    return agent
예제 #3
0
파일: bot.py 프로젝트: cttlfsh/chatbot_lus
def train_dialogue():
    interpreter = RasaNLUInterpreter(CHAT)
    agent = Agent(CONFIG, policies=[MemoizationPolicy(max_history=3), KerasPolicy()], interpreter=interpreter)

    training_data = STORIES ###TODO
    agent.train(
            training_data,
            epochs=500,
            batch_size=100,
            validation_split=0.3
    )
    agent.persist(MODEL_DIALOGUE)

    # input_channel = TelegramInput(
    #     access_token="577522303:AAG6_5NcdBVRq-ndzThybnOh7SHL9I2ylKo", # you get this when setting up a bot
    #     verify="chatmoviedomainbot", # this is your bots username
    #     webhook_url="https://07958fff.ngrok.io" # the url your bot should listen for messages
    # )

    input_channel = ConsoleInputChannel()
    agent.train_online(
                training_data,
                input_channel=input_channel,
                epochs=400,
                batch_size=100
        )
    
    return agent
예제 #4
0
파일: run.py 프로젝트: won21kr/rasa_core
def run_concerts(serve_forever=True):
    agent = Agent.load("examples/concerts/models/policy/init",
                       interpreter=RegexInterpreter())

    if serve_forever:
        agent.handle_channel(ConsoleInputChannel())
    return agent
예제 #5
0
def console(serve_forever=True):
    interpreter = RasaNLUInterpreter("models/current/nlu")
    agent = Agent.load("models/current/dialogues", interpreter=interpreter)

    if serve_forever:
        agent.handle_channel(ConsoleInputChannel())
    return agent
예제 #6
0
def run(server_forver=True):
    interpreter = RasaNLUInterpreter('models/nlu/default/restaurant_finder')
    agent = Agent.load('models/dialogue', interpreter=interpreter)

    if server_forver:
        agent.handle_channel(ConsoleInputChannel())
    return agent
    def run_online_training(self,
                            domain,  # type: Domain
                            interpreter,  # type: NaturalLanguageInterpreter
                            input_channel=None  # type: Optional[InputChannel]
                            ):
        # type: (...) -> None
        # from rasa_core.agent import Agent
        from lib.my_agent import CustomAgent
        if interpreter is None:
            interpreter = RegexInterpreter()

        # domain = Agent._create_domain("domain.yml")
        # tracker_store = RedisTrackerStore(domain, host="redis")
        #host="redis:alpine://redis", port="6379"

        # tracker_store = RedisTrackerStore(domain)
        tracker_store = None
        # tracker = tracker_store.get_or_create_tracker("cliniciansID")

        bot = CustomAgent(domain, self,
                    interpreter=interpreter, tracker_store = tracker_store)
        bot.toggle_memoization(False)

        try:
            bot.handle_channel(
                    input_channel if input_channel else ConsoleInputChannel())
        except TrainingFinishedException:
            pass  # training has finished
예제 #8
0
파일: bot-wj.py 프로젝트: TVect/ui-basenlp
def test_dialog():
    agent = Agent.load(output_path,
                       interpreter=NaturalLanguageInterpreter.create(None))

    agent.handle_channel(ConsoleInputChannel())

    return agent
예제 #9
0
def run_hello_world(max_training_samples=10, serve_forever=True):
    training_data = '../mom/data/stories.md'

    default_domain = TemplateDomain.load("../mom/domain.yml")
    agent = Agent(
        default_domain,
        # policies=[SimplePolicy()],
        policies=[MemoizationPolicy(), KerasPolicy()],
        interpreter=HelloInterpreter(),
        tracker_store=InMemoryTrackerStore(default_domain))
    logger.info("Starting to train policy")
    # agent = Agent(default_domain,
    #               policies=[SimplePolicy()],
    #               interpreter=HelloInterpreter(),
    #               tracker_store=InMemoryTrackerStore(default_domain))

    # if serve_forever:
    #     # Attach the commandline input to the controller to handle all
    #     # incoming messages from that channel
    #     agent.handle_channel(ConsoleInputChannel())

    agent.train_online(training_data,
                       input_channel=ConsoleInputChannel(),
                       epochs=1,
                       max_training_samples=max_training_samples)

    return agent
예제 #10
0
def run(serve_forever=True):
    agent = Agent.load("models/dialogue",
                       interpreter=RasaNLUInterpreter("models/ivr/demo"))

    if serve_forever:
        agent.handle_channel(ConsoleInputChannel())
    return agent
def run_chatbot(serve_forever=True):
    nlu_interpreter = RasaNLUInterpreter('./models/nlu/default/doctornlu')
    agent = Agent.load('./models/dialogue', interpreter=nlu_interpreter)

    if serve_forever:
        agent.handle_channel(ConsoleInputChannel())
    return agent
예제 #12
0
    def runRasaTrainOnline(self):
        try:
            input_channel = ConsoleInputChannel()
            interpreter = RasaNLUInterpreter(
                os.path.realpath(self.config.get('nluModel',
                                                 'model_location')))
            domain_file = os.path.realpath(
                self.config.get('inputData', 'coreyml'))
            training_data_file = os.path.realpath(
                self.config.get('inputData', 'stories'))
            logger.info(
                "nluModel = %s, domain_file = %s, train_data_file = %s" %
                (str(
                    os.path.realpath(
                        self.config.get('nluModel', 'model_location'))),
                 str(domain_file), str(training_data_file)))
            agent = Agent(domain_file,
                          policies=[MemoizationPolicy(),
                                    KerasPolicy()],
                          interpreter=interpreter)

            agent.train_online(training_data_file,
                               input_channel=input_channel,
                               max_history=2,
                               batch_size=50,
                               epochs=200,
                               max_training_samples=300)

            return agent, "Rasa Train Online completed successfully"
        except Exception as e:
            logger.error("Unable to run Rasa Train Online, exception : %s" %
                         (str(e)))
            raise (e)
예제 #13
0
def train_dialogue_model(domain_file,
                         stories_file,
                         output_path,
                         use_online_learning=False,
                         nlu_model_path=None,
                         max_history=None,
                         kwargs=None):
    if not kwargs:
        kwargs = {}

    agent = Agent(
        domain_file,
        policies=[MemoizationPolicy(max_history=max_history),
                  KerasPolicy()])

    data_load_args, kwargs = utils.extract_args(
        kwargs, {
            "use_story_concatenation", "unique_last_num_states",
            "augmentation_factor", "remove_duplicates", "debug_plots"
        })
    training_data = agent.load_data(stories_file, **data_load_args)

    if use_online_learning:
        if nlu_model_path:
            agent.interpreter = RasaNLUInterpreter(nlu_model_path)
        else:
            agent.interpreter = RegexInterpreter()
        agent.train_online(training_data,
                           input_channel=ConsoleInputChannel(),
                           model_path=output_path,
                           **kwargs)
    else:
        agent.train(training_data, **kwargs)

    agent.persist(output_path)
예제 #14
0
def run(serve_forever=True):
    interpreter = RasaNLUInterpreter(r".\models\NLU\model_20180601-022829")
    agent = Agent.load("models/current/dialogue", interpreter=interpreter)

    if serve_forever:
        agent.handle_channel(ConsoleInputChannel())
    return agent
예제 #15
0
def run_server(serve_forever=True):
    agent = Agent.load("models/policy/current",
                       interpreter=RasaNLUInterpreter(nlu_model_path))

    if serve_forever:
        agent.handle_channel(ConsoleInputChannel())
    return agent
예제 #16
0
def run(serve_forever=True):
    interpreter = RasaNLUInterpreter("models/nlu/default/current")
    agent = Agent.load("models/dialogue", interpreter=interpreter)

    if serve_forever:
        agent.handle_channel(ConsoleInputChannel())
    return agent
예제 #17
0
def train_dialogue_model(domain_file, stories_file, output_path,
                         use_online_learning=False,
                         nlu_model_path=None,
                         max_history=None,
                         kwargs=None):
    if not kwargs:
        kwargs = {}

    agent = Agent(domain_file, policies=[
        MemoizationPolicy(max_history=max_history),
        KerasPolicy()])
    training_data = agent.load_data(stories_file)

    if use_online_learning:
        if nlu_model_path:
            agent.interpreter = RasaNLUInterpreter(nlu_model_path)
        else:
            agent.interpreter = RegexInterpreter()
        agent.train_online(
                training_data,
                input_channel=ConsoleInputChannel(),
                model_path=output_path,
                **kwargs)
    else:
        agent.train(training_data, **kwargs)

    agent.persist(output_path)
예제 #18
0
def run_jarvis(serve_forever=True):
    agent = Agent.load("models/dialogue",
                       interpreter=RegexInterpreter())

    if serve_forever:
        agent.handle_channel(ConsoleInputChannel())
    return agent
예제 #19
0
파일: train.py 프로젝트: yihanxu/rasa_core
def train_dialogue_model(domain_file, stories_file, output_path,
                         use_online_learning=False, nlu_model_path=None,
                         kwargs=None):
    if not kwargs:
        kwargs = {}

    agent = Agent(domain_file, policies=[MemoizationPolicy(), KerasPolicy()])

    if use_online_learning:
        if nlu_model_path:
            agent.interpreter = RasaNLUInterpreter(nlu_model_path)
        else:
            agent.interpreter = RegexInterpreter()
        agent.train_online(
                stories_file,
                input_channel=ConsoleInputChannel(),
                epochs=10,
                model_path=output_path)
    else:
        agent.train(
                stories_file,
                validation_split=0.1,
                **kwargs
        )

    agent.persist(output_path)
예제 #20
0
def run_weather_bot(serve_forever=True):
    interpreter = RasaNLUInterpreter('./models/nlu/default/ABCinsurance')
    agent = Agent.load('./models/dialogue', interpreter=interpreter)

    if serve_forever:
        agent.handle_channel(ConsoleInputChannel())
    return agent
예제 #21
0
def run_faqbot(serve_forever=True):
    interpreter = RasaNLUInterpreter('./models/nlu/default/current')
    agent = Agent.load('models/dialogue', interpreter=interpreter)

    if serve_forever:
        agent.handle_channel(ConsoleInputChannel())
    return agent
예제 #22
0
def run_cricscore_bot(serve_forever=True):
    interpreter = RasaNLUInterpreter('./models/nlu/default/assistantnlu')
    agent = Agent.load('./models/dialogue',interpreter=interpreter)
    
    if serve_forever:
        agent.handle_channel(ConsoleInputChannel())
	
    return agent
def run_customer_bot(serve_forever=True):
	interpreter = RasaNLUInterpreter('C:/Murali/Testing/hackathon2018/customer_bot-master/models/nlu/current/')
	agent = Agent.load('C:/Murali/Testing/hackathon2018/customer_bot-master/models/dialogue/', interpreter = interpreter)

	if serve_forever:
		agent.handle_channel(ConsoleInputChannel())

	return agent
예제 #24
0
def run_sonatel_bot(serve_forever=True):
    interpreter = RasaNLUInterpreter('./models/nlu/default/vocalbot_nlu')
    agent = Agent.load('./models/dialogue', interpreter=interpreter)

    if serve_forever:
        agent.handle_channel(ConsoleInputChannel())

    return agent
예제 #25
0
def run(serve_forever=True):
    print("loading in interpreter")
    interpreter = RasaNLUInterpreter(INTEPRETER_PATH)
    print("loading in agent")
    agent = Agent.load(MODEL_PATH, interpreter=interpreter)
    if serve_forever:
        print("handlling channel")
        agent.handle_channel(ConsoleInputChannel())
예제 #26
0
def run(serve_forever=True):
    agent = Agent.load(
        "./models/dialogue",
        interpreter="./models/current/nlu/default/model_20180911-134739")

    if serve_forever:
        agent.handle_channel(ConsoleInputChannel())
    return agent
예제 #27
0
def run(serve_forever=True):
    interpreter = RasaNLUInterpreter(
        "models/nlu_v13/default/model_20180518-152807")
    agent = Agent.load("models/dialogue", interpreter=interpreter)

    if serve_forever:
        agent.handle_channel(ConsoleInputChannel())
    return agent
예제 #28
0
def run_weather_bot(serve_forever=True):
    interpreter = RasaNLUInterpreter("./models/nlu/default/weathernlu")
    agent = Agent.load("./models/dialogue",interpreter)

    if serve_forever:
        agent.handle_channel(ConsoleInputChannel())

    return agent
def run_restaurant_bot(serve_forever=True):
    interpreter = RasaNLUInterpreter('./models/nlu/default/Restaurant_NPSR')
    agent = Agent.load('./models/dialogue', interpreter=interpreter)

    if serve_forever:
        agent.handle_channel(ConsoleInputChannel())
        logger.debug("return agent")
    return agent
def run_restaurant_bot(serve_forever=True):
    interpreter = RasaNLUInterpreter('./models/nlu/default/restaurantnlu')
    agent = Agent.load('./models/dialogue', interpreter=interpreter)

    if serve_forever:
        agent.handle_channels([ConsoleInputChannel()])

    return agent