Sha256: 0a978c45d6e6073b861441b90b5fa0894eeecd7c6971b32c88698e8130bf7a7d

Contents?: true

Size: 904 Bytes

Versions: 2

Compression:

Stored size: 904 Bytes

Contents

require 'rbbt'
require 'rjb'
require 'rbbt/text/segment'
require 'rbbt/ner/NER'
require 'rbbt/util/log'

class ChemicalTagger < NER
  Rbbt.claim Rbbt.software.opt.ChemicalTagger, :install, Rbbt.share.install.software.ChemicalTagger.find

  def self.init
    ENV["CLASSPATH"] = ENV["CLASSPATH"].split(":").reverse * ":"
    Rjb::load(nil, jvmargs = ['-Xms1G','-Xmx2G']) unless Rjb.loaded?
    @@RbbtChemicalTagger ||= Rjb::import('RbbtChemicalTagger')
  end

  def self.match(text,  type = nil, memm =  false)
    self.init

    return [] if text.nil? or text.strip.empty?

    begin
      matches = @@RbbtChemicalTagger.match(text)
    rescue
      Log.exception $!
      return []
    end

    matches.collect do |mention|
      offset = text.index mention
      NamedEntity.setup mention, offset, "Chemical Mention", nil, nil
    end
  end

  def match(*args)
    ChemicalTagger.match(*args)
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
rbbt-text-1.2.0 lib/rbbt/ner/chemical_tagger.rb
rbbt-text-1.1.9 lib/rbbt/ner/chemical_tagger.rb