diff --git a/system_mockup/analizator_jezyka_naturalnego.py b/system_mockup/analizator_jezyka_naturalnego.py new file mode 100644 index 0000000..0daff3d --- /dev/null +++ b/system_mockup/analizator_jezyka_naturalnego.py @@ -0,0 +1,31 @@ +import re + +def analizator_jezyka_naturalnego(text): + hello = ['dzie[ńn] dobry', 'dobry wiecz[oó]r', 'witam', 'witaj', 'siema', 'elo', 'cze[śs][ćc]'] + request_name = ['imi[eę]', 'nazywasz'] + question = ['\?$'] + + acts = {'hello': [hello], + 'request(name)': [request_name, question]} + text = text_preprocess(text) + frame = act_check(text) + return frame + +def text_preprocess(text): + text = text.lower() + return text + +def act_check(text): + frame = [] + for act, requirements in acts.items(): + req = [check_synonyms(synonyms, text) for synonyms in requirements] + if all(req): + frame.append(act) + return frame + +def check_synonyms(synonyms, text): + for expression in synonyms: + match = re.search(expression, text) + if match: + return True + return False diff --git a/system_mockup/generator_jezyka_nautalnego.py b/system_mockup/generator_jezyka_nautalnego.py new file mode 100644 index 0000000..f3ff2a2 --- /dev/null +++ b/system_mockup/generator_jezyka_nautalnego.py @@ -0,0 +1,2 @@ +def generator_jezyka_nautalnego(): + pass diff --git a/system_mockup/monitor_stanu_dialogowego.py b/system_mockup/monitor_stanu_dialogowego.py new file mode 100644 index 0000000..9946dc0 --- /dev/null +++ b/system_mockup/monitor_stanu_dialogowego.py @@ -0,0 +1,2 @@ +def monitor_stanu_dialogowego(): + pass diff --git a/system_mockup/system_dialogowy.py b/system_mockup/system_dialogowy.py new file mode 100644 index 0000000..07558e1 --- /dev/null +++ b/system_mockup/system_dialogowy.py @@ -0,0 +1,14 @@ +from analizator_jezyka_naturalnego import analizator_jezyka_naturalnego +from monitor_stanu_dialogowego import monitor_stanu_dialogowego +from taktyka_dialogu import taktyka_dialogu +from generator_jezyka_nautalnego import generator_jezyka_nautalnego + +def main(): + text = input('>>>') + frame = analizator_jezyka_naturalnego(text) + monitor_stanu_dialogowego(frame) + taktyka_dialogu() + generator_jezyka_nautalnego() + +if __name__ == '__main__': + main() diff --git a/system_mockup/taktyka_dialogu.py b/system_mockup/taktyka_dialogu.py new file mode 100644 index 0000000..19565cf --- /dev/null +++ b/system_mockup/taktyka_dialogu.py @@ -0,0 +1,2 @@ +def taktyka_dialogu(): + pass