问题描述
我正在研究一个 NLP 模型来回答 4 个问题,我试图通过增加一个全局变量来跟踪回答的问题。
如果一个问题包含 1 个或多个似是而非的术语,则得到回答。
我正在使用带有下拉菜单的 Jupyter 笔记本小部件,您可以在其中查看问题的释义(用于寻找更好的答案)。有 4 个小部件,每个小部件有 3 个释义。
点击不同的释义将使 NLP 模型再次运行并寻找不同的答案。这就是我失败的地方,因为如果您运行所有 3 个释义,全局变量将增加 3 次。但最多回答的问题应该是 4 个,最少应该是 0 个。
controller_varx = 0 # global var for keeping track
我的问题是,如果问题得到解答,如何停止覆盖全局变量?
我已经为小部件 1 做了它,但我无法找到小部件 2 到 4 的方法。有大量的代码,所以我试图只提供范围失败。
#this will work good every time you chose a different paraphrase
#as it will set the controller_varx to 0 again
#code from within the widget
if term_counter>= 3:
print('\nAI Plausibility score: ',plaus.score(term_counter))
controller_varx = controller_varx + 1
print("Answers: ",controller_varx,"/6")
elif term_counter== 2:
print('\nAI Plausibility score: ',plaus.score(term_counter))
controller_varx = 0
controller_varx = controller_varx + 1
print("Answers: ","/6")
elif term_counter== 1:
print('\nAI Plausibility score: ',"/6")
else:
print('\nNo good terms. Question unanswered.\n')
controller_varx = 0
print("Answers: ","/6")
来自小部件 2 的代码。对于此代码段,每次选择不同的释义时,如果该释义包含合理的术语,它将增加 controller_varx。因此,如果我从释义 1 跳到 3,再跳回 1,依此类推,我最终会得到(任何数字)/4。
if counter >= 3:
print('\nAI Plausibility score: ',plaus.score(term_counter))
print('- - - - - - - - - - - - - - - - - - - -')
controller_varx = controller_varx + 1
print("Answers: ","/6")
elif counter == 2:
print('\nAI Plausibility score: ',"/6")
elif counter == 1:
print('\nAI Plausibility score: ',plaus.score(term_counter))
print('- - - - - - - - - - - - - - - - - - - -')
controller_varx = controller_varx + 1
print("Answers: ","/6")
else:
print('\nNo good terms. Question unanswered.\n')
print('- - - - - - - - - - - - - - - - - - - -')
print("Answers: ","/6")
正在寻找输入!感谢您阅读到这里。
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)