跟踪 jupyter-notebook 小部件中的变量

问题描述

我正在研究一个 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 (将#修改为@)