防止Stanford Core NLP服务器输出其接收的文本

防止Stanford Core NLP服务器输出其接收的文本,nlp,stanford-nlp,Nlp,Stanford Nlp,我正在运行服务器: 每当它接收到一些文本时,就会在运行它的shell中输出它。如何防止这种情况发生 重要的是,以下是我用来将数据传递到Stanford Core NLP服务器的代码: ''' From https://github.com/smilli/py-corenlp/blob/master/example.py ''' from pycorenlp import StanfordCoreNLP import pprint if __name__ == '__main__':

我正在运行服务器:

每当它接收到一些文本时,就会在运行它的shell中输出它。如何防止这种情况发生


重要的是,以下是我用来将数据传递到Stanford Core NLP服务器的代码:

'''
From https://github.com/smilli/py-corenlp/blob/master/example.py
'''
from pycorenlp import StanfordCoreNLP
import pprint

if __name__ == '__main__':
    nlp = StanfordCoreNLP('http://localhost:9000')
    fp = open("long_text.txt")
    text = fp.read()
    output = nlp.annotate(text, properties={
        'annotators': 'tokenize,ssplit,pos,depparse,parse',
        'outputFormat': 'json'
    })
    pp = pprint.PrettyPrinter(indent=4)
    pp.pprint(output)

目前还没有办法做到这一点,但你是第二个被问到的人。因此,它现在在Github代码中,并将在下一个版本中使用。将来,您应该能够设置
-quiet
标志,服务器将不会写入标准输出。

我询问了,并且可以提供某种解决方法。目前我正在虚拟机中运行服务器。为了暂时防止日志输出,我使用
2&>1>/dev/null
管道参数运行它:

java -mx6g -cp "*" edu.stanford.nlp.pipeline.StanfordCoreNLPServer -prettyPrint false 2&>1 >/dev/null

这将大大提高性能,直到我们等待
3.6.1

我在命令行中添加了“-quiet”,它似乎可以工作,尽管处理很多行仍然需要一些时间。从2020年6月起,Python接口是否添加了此功能来关闭详细输出?@jackson95您指的是哪个Python接口?stanfordnlp(或更新的spacy)?
java -mx6g -cp "*" edu.stanford.nlp.pipeline.StanfordCoreNLPServer -prettyPrint false 2&>1 >/dev/null