mockup improvement
This commit is contained in:
parent
0de57cc830
commit
d075382862
@ -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
|
||||
|
@ -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
17
main.py
@ -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
|
||||
|
Loading…
Reference in New Issue
Block a user