-
- classifier = CRFClassifier.getDefaultClassifier();
- out = classifier.classify(str);
-
- for (List<CoreLabel> labels: out)
- for (CoreLabel l: labels) {
- cat = l.getString(AnswerAnnotation.class);
- w = l.word();
- if (!cat.equals("O") && !entities.contains(w))
+
+ synchronized (classifier) {
+ triples = classifier.get().classifyToCharacterOffsets(str);
+ for (Triple<String, Integer, Integer> t: triples) {
+ w = str.substring(t.second, t.third);
+ if (!entities.contains(w))