2017-10-11 31 views
0

我想用StanfordNP解析書本長度的文本塊。 http請求的效果很好,但在StanfordCoreNLPServer.java中對文本長度有一個不可配置的100KB限制,MAX_CHAR_LENGTH。如何解決StanfordNLP服務器的100K字符限制?

現在,我在將文本發送給服務器之前先切斷文本,但即使我試圖在句子和段落之間進行拆分,也會在這些塊之間丟失一些有用的聯想信息。據推測,我可以解析大塊重疊的塊,並將它們連接在一起,但這似乎(1)不雅觀和(2)像相當多的維護。

是否有更好的方法來配置服務器或請求來移除手動分塊或跨塊保存信息?

順便說一句,我POST使用python requests模塊,但我懷疑這是否有所作爲,除非corenlp python包裝以某種方式處理這個問題。

回答

0

你應該能夠啓動標誌-maxCharLength -1的服務器,這將擺脫句子長度的限制。請注意,這在生產中是不可取的:任意大的文檔都可以消耗大量的內存(和時間),尤其是對於像coref這樣的東西。

服務器的選項列表應該可以通過-help調用服務器來訪問,並且是documented in code here

+0

啊,我從8月份看到了提交。我正在使用之前的版本。那麼我會更新。謝謝! –

+0

它不在3.8.0中嗎?我知道這是相對較新的(即,當然不是在服務器的第一個版本中),但是希望至少在最近的版本中仍然如此。 –

+0

不,3.8.0 src仍然有靜態MAX_CHAR_LENGTH。 –