Class ThreadSafePOSTaggerME

java.lang.Object
opennlp.tools.postag.ThreadSafePOSTaggerME
All Implemented Interfaces:
AutoCloseable, POSTagger

@ThreadSafe public class ThreadSafePOSTaggerME extends Object implements POSTagger, AutoCloseable
A thread-safe version of the POSTaggerME. Using it is completely transparent. You can use it in a single-threaded context as well, it only incurs a minimal overhead.

Note, however, that this implementation uses a ThreadLocal. Although the implementation is lightweight because the model is not duplicated, if you have many long-running threads, you may run into memory problems.

Be careful when using this in a Jakarta EE application, for example.

The user is responsible for clearing the ThreadLocal.
  • Constructor Details

    • ThreadSafePOSTaggerME

      public ThreadSafePOSTaggerME(POSModel model)
  • Method Details

    • tag

      public String[] tag(String[] sentence)
      Description copied from interface: POSTagger
      Assigns the sentence of tokens pos tags.
      Specified by:
      tag in interface POSTagger
      Parameters:
      sentence - The sentence of tokens to be tagged.
      Returns:
      An array of pos tags for each token provided in sentence.
    • tag

      public String[] tag(String[] sentence, Object[] additionaContext)
      Description copied from interface: POSTagger
      Assigns the sentence of tokens pos tags.
      Specified by:
      tag in interface POSTagger
      Parameters:
      sentence - The sentence of tokens to be tagged.
      additionaContext - The context to provide additional information with.
      Returns:
      An array of pos tags for each token provided in sentence.
    • topKSequences

      public Sequence[] topKSequences(String[] sentence)
      Description copied from interface: POSTagger
      Assigns the sentence the top-k sequences.
      Specified by:
      topKSequences in interface POSTagger
      Parameters:
      sentence - The sentence of tokens to be tagged.
      Returns:
      An array of sequences for each token provided in sentence.
    • topKSequences

      public Sequence[] topKSequences(String[] sentence, Object[] additionaContext)
      Description copied from interface: POSTagger
      Assigns the sentence the top-k sequences.
      Specified by:
      topKSequences in interface POSTagger
      Parameters:
      sentence - The sentence of tokens to be tagged.
      additionaContext - The context to provide additional information with.
      Returns:
      An array of sequences for each token provided in sentence.
    • close

      public void close()
      Specified by:
      close in interface AutoCloseable