2017-10-11 5 views
0

J'essaye d'analyser des blocs de texte de longueur de livre avec StanfordNLP. Les requêtes http fonctionnent très bien, mais il y a une limite de 100 Ko non configurable à la longueur du texte, MAX_CHAR_LENGTH dans StanfordCoreNLPServer.java. Pour l'instant, je coupe le texte avant de l'envoyer au serveur, mais même si j'essaie de séparer les phrases et les paragraphes, il y a quelques informations de coréférence utiles qui se perdent entre ces morceaux. Vraisemblablement, je pourrais analyser des morceaux avec un grand chevauchement et les lier ensemble, mais cela semble (1) inélégant et (2) comme un peu de maintenance.Comment contourner la limite de caractères de 100 Ko pour le serveur StanfordNLP?

Existe-t-il un meilleur moyen de configurer le serveur ou les demandes de supprimer le découpage manuel ou de conserver les informations sur plusieurs blocs?

BTW, je suis POSTing en utilisant le module de requêtes python, mais je doute que cela fasse une différence à moins qu'un wrapper corenlp python s'occupe de ce problème en quelque sorte.

Répondre

0

Vous devriez être en mesure de démarrer le serveur avec le drapeau -maxCharLength -1 et cela va se débarrasser de la limite de longueur de la phrase. Notez que ceci est déconseillé en production: des documents arbitrairement volumineux peuvent consommer arbitrairement de grandes quantités de mémoire (et de temps), en particulier avec des choses comme coref. La liste des options du serveur doit être accessible en appelant le serveur avec -help et documented in code here.

+0

Ah, je vois le commit, à partir d'août. J'utilise une version d'avant cela. Je vais mettre à jour, alors. Merci! –

+0

N'est-il pas en 3.8.0? Je sais que c'est relativement nouveau (c'est-à-dire, certainement pas dans la première version du serveur), mais j'espère au moins toujours dans une version récente. –

+0

Non, le src 3.8.0 a toujours le MAX_CHAR_LENGTH statique. –