首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >为什么拥抱面挂在输入法的清单上?

为什么拥抱面挂在输入法的清单上?
EN

Stack Overflow用户
提问于 2022-04-18 19:00:02
回答 1查看 80关注 0票数 0

与python 3.10和最新版本的拥抱脸。

对于像这样的简单代码

代码语言:javascript
复制
from transformers import pipeline

input_list = ['How do I test my connection? (Windows)', 'how do I change my payment method?', 'How do I contact customer support?']

classifier = pipeline('sentiment-analysis')
results = classifier(input_list)

程序挂起并返回错误消息:

代码语言:javascript
复制
File ".......env/lib/python3.10/multiprocessing/spawn.py", line 134, in _check_not_importing_main
    raise RuntimeError('''
RuntimeError: 
        An attempt has been made to start a new process before the
        current process has finished its bootstrapping phase.

        This probably means that you are not using fork to start your
        child processes and you have forgotten to use the proper idiom
        in the main module:

            if __name__ == '__main__':
                freeze_support()
                ...

但是用一个字符串替换列表输入,它就能工作了。

代码语言:javascript
复制
from transformers import pipeline
classifier = pipeline('sentiment-analysis')
result = classifier('How do I test my connection? (Windows)')
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2022-04-19 14:28:41

它需要定义一个主函数来运行列表输入所依赖的多任务。以下更新工程

代码语言:javascript
复制
from transformers import pipeline

def main():
    input_list = ['How do I test my connection? (Windows)', 
    'how do I change my payment method?',
    'How do I contact customer support?']

    classifier = pipeline('sentiment-analysis')
    results = classifier(input_list)

if __name__ == '__main__':
    main()

这个问题被简化为where to put freeze_support() in a Python script?

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/71915952

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档