def dialogue_manager(stateObject, stateMachine):
    """
    Method called by the bot_telegram.py to retrieve the information to pass to the NLG
    :param stateObject: state object, in which are stores: intent, previous intent, story graph, nodes visited
    :param stateMachine: finate state machine, in which is stored the current state
    :return: string - text
    """
    nlg_model = NLG()
    current_state = stateMachine.state
    if "introduction" in current_state:
        return introduction(stateObject, nlg_model)
    elif "storytelling" in current_state:
        return storytelling(stateObject, nlg_model)
    elif "closing" in current_state:
        return closing(stateObject, nlg_model)
    elif "answering" in current_state:
        return answering(stateObject, nlg_model)
    elif "link_to_survey" in current_state:
        return link_to_survey(stateObject, nlg_model)
    elif "answering_f" in current_state:
        return answering_f(stateObject, nlg_model)
    elif "bert" in current_state:
        answer = ans_bert(stateObject, nlg_model)
        if answer == "next_increment":
            return storytelling(stateObject, nlg_model)
        else:
            return answer
示例#2
0
 def __init__(self):
     # 初始化
     self.nlu = NLU()
     self.nlg = NLG()
     self.dm_w = DM_WEATHER()
     self.dm_c = DM_CLOCK()
     self.global_state_tracker = StateTracker()
     self.episode_over = False
示例#3
0
 def __init__(self):
     self.nlg = NLG(user_name=self.my_name)
     self.speech = Speech(launch_phrase=self.launch_phrase,
                          debugger_enabled=self.debugger_enabled)
     self.actions = Actions(self.location)
     if os.path.isfile('unknown_commands.csv') == False:
         with open('unknown_commands.csv', 'w') as csvfile:
             writer = csv.DictWriter(csvfile,
                                     fieldnames=self.unknown_fieldnames)
             writer.writeheader()
示例#4
0
    def __init__(self):
        self.nlg = NLG(user_name=my_name)
        self.nlg_vn = NLG(user_name=my_name_vn, language='vi')
        self.speech = Speech(launch_phrase=launch_phrase,
                             debugger_enabled=debugger_enabled)
        self.wit_client_vn = Wit(wit_ai_token_vn)
        self.wit_client_en = Wit(wit_ai_token)
        self.knowledge = Knowledge(weather_api_token,
                                   google_cloud_api_key=google_cloud_api_key)
        #self.vision = Vision(camera=camera)
        self.bot_vn = 'ty'

        subprocess.Popen([
            "aplay", "/home/pi/AI-Smart-Mirror/sample-audio-files/Startup.wav"
        ],
                         stdin=subprocess.PIPE,
                         stdout=subprocess.PIPE,
                         stderr=subprocess.PIPE)
        time.sleep(4)
 def __init__(self):
     self.nlg = NLG(user_name=NAME)
     self.remote_data = RemoteData(weather_api_token=DARKSKY_TOKEN)
     self.audio_handler = AudioHandler(debug=True)
     # self.calendar = Calendar()
     self.calendar = None
     self.session_id = uuid.uuid1()
     self.context = {}
     self.prev_ai_message = ""
     self.ai_message = " - "
     self._active_alarms = []
     self.active = False  # When the user has activated Alfred
示例#6
0
 def __init__(self):
     self.nlg = NLG(user_name=my_name)
     self.speech = Speech(launch_phrase=launch_phrase, debugger_enabled=debugger_enabled)
     self.knowledge = Knowledge(weather_api_token)
     self.vision = Vision(camera=camera)
示例#7
0
from flask import Flask
from flask_socketio import SocketIO, emit

from nlu_test import predict
from dst import DST
from dpl import DPL
from nlg import NLG

app = Flask(__name__)
app.config["SECRET_KEY"] = "secret!"
socketio = SocketIO(app)

_dst = DST()
_dpl = DPL()
_nlg = NLG()

last_action, last_state = None, None
Hn = list()

@socketio.on("receive")
def recevie_msg(msg):
    print(msg)
    # get intent & slots
    nlu_result = predict(msg)

    # get state (Gn, Un, Hn)
    state = _dst.get_state(nlu_result, last_action, last_state, Hn)

    # get action
    action, Hn = _dpl.get_action(state)
示例#8
0
 def __init__(self):
     self.nlg = NLG(user_name=my_name)
     self.speech = Speech(
         debugger_enabled=debugger_enabled
     )  #(launch_phrase=launch_phrase, debugger_enabled=debugger_enabled)