【问题标题】:How to work around 100K character limit for the StanfordNLP server?如何解决 StanfordNLP 服务器的 100K 字符限制?
【发布时间】:2017-10-11 09:45:22
【问题描述】:

我正在尝试使用 StanfordNLP 解析书本长度的文本块。 http 请求运行良好,但在 StanfordCoreNLPServer.java 中文本长度 MAX_CHAR_LENGTH 存在不可配置的 100KB 限制。

目前,我在将文本发送到服务器之前将其切碎,但即使我尝试在句子和段落之间进行拆分,这些块之间也会丢失一些有用的共指信息。据推测,我可以解析具有大量重叠的块并将它们链接在一起,但这似乎 (1) 不优雅和 (2) 需要相当多的维护。

是否有更好的方法来配置服务器或请求以删除手动分块或跨块保留信息?

顺便说一句,我正在使用 python requests 模块发布,但我怀疑这会有所不同,除非 corenlp python 包装器以某种方式处理这个问题。

【问题讨论】:

    标签: stanford-nlp


    【解决方案1】:

    您应该能够使用标志-maxCharLength -1 启动服务器,这样就可以摆脱句子长度限制。请注意,这在生产中是不可取的:任意大的文档会消耗任意大量的内存(和时间),尤其是对于 coref 之类的东西。

    服务器的选项列表应该可以通过使用-help 调用服务器来访问,并且是documented in code here

    【讨论】:

    • 啊,我看到了从 8 月开始的提交。我正在使用之前的版本。那我更新一下谢谢!
    • 不是在3.8.0吗?我确实知道它相对较新(即,肯定不在服务器的第一个版本中),但希望至少在最近的版本中。
    • 不,3.8.0 src 仍然有静态的 MAX_CHAR_LENGTH。
    • 次优。好吧,它会在下一个版本中,否则你可以在 GitHub 项目的根目录中使用 ant jar 手动构建 jar。
    • 这里有一些构建最新版本的文档:stanfordnlp.github.io/CoreNLP/download.html
    猜你喜欢
    • 1970-01-01
    • 2012-12-17
    • 2016-06-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-02-28
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多