mockup improvement

This commit is contained in:
Łukasz Jędyk 2021-04-26 09:57:03 +02:00
parent 0de57cc830
commit d075382862
3 changed files with 27 additions and 14 deletions

View File

@ -4,15 +4,21 @@ from UserAct import UserAct
class DP:
"""
Moduł, który tworzy reprezentację tekstową aktu systemowego wybranego przez taktykę dialogu.
Wejście: Akt systemu (rama)
Wyjście: Tekst
Moduł decydujący o wyborze kolejnego aktu, który ma podjąć system prowadząc rozmowę.
Wejście: Reprezentacja stanu dialogu (rama)
Wyjście: Akt systemu (rama)
"""
def __init__(self):
pass
def chooseTactic(self, frameList=None):
if frameList is not None:
if frameList[-1].getActType() is UserActType.INVALID:
systemAct = [1]
return systemAct
elif frameList[-1].getActType() is UserActType.BYE:
systemAct = [2]
return systemAct
else:
systemAct = [0]
return systemAct

View File

@ -9,7 +9,9 @@ class NLG:
pass
def toText(self, systemAct):
if(systemAct == [0]):
return "Witaj, nazywam się XXX"
if systemAct == [1]:
return "Nie rozumiem o czym mówisz."
if systemAct == [2]:
return "Do widzenia."
else:
return "???"
return "Witaj, nazywam się Janusz."

17
main.py
View File

@ -1,5 +1,5 @@
from NaturalLanguageUnderstanding import NLU
from NaturalLAnguageGeneration import NLG
from NaturalLanguageGeneration import NLG
from DialogueStateTracker import DST
from DialoguePolicy import DP
@ -7,12 +7,17 @@ if __name__ == "__main__":
nlu = NLU()
dst = DST()
nlg = NLG()
dp = DP()
nlg = NLG()
userFrame = nlu.parseUserInput("czesc")
dst.addFrame(userFrame)
systemAct = dp.chooseTactic(dst.getFrames())
text = nlg.toText(systemAct)
while(1):
user_input = input("Wpisz tekst: ")
user_frame = nlu.parseUserInput(user_input)
dst.addFrame(user_frame)
system_act = dp.chooseTactic(dst.getFrames())
text = nlg.toText(system_act)
print(text)
if text == "Do widzenia.":
break