Stanford CoreNLP的网站
http://nlp.stanford.edu/software/corenlp.shtml
列出了几十个像魅力一样工作的注释器。我想使用Annotators的实例来处理多个线程的常见任务(词形还原,标记,解析)。例如,将大量(GB文本)的处理拆分为线程或提供Web服务。
过去有一些讨论引用了LocalThreads,根据我的理解,它使用每个线程的一个Annotator实例(从而避免了线程安全方面的问题)。这是一个选项,但这样所有模型文件和资源也必须加载n次。
Annotators(或其中一些)是否可以使用线程安全?我在讨论,文档或常见问题中找不到任何结论性/官方性的内容。
答案 0 :(得分:9)
是的,注释器旨在是线程安全的。您可以创建一个新的AnnotationPipeline(例如,一个新的StanfordCoreNLP对象),然后许多线程可以将注释传递到此管道中,而无需为每个线程重新加载模型。