Module: NlpToolz

Defined in:
lib/nlp_toolz/parser.rb,
lib/nlp_toolz.rb,
lib/nlp_toolz/home.rb,
lib/nlp_toolz/tokens.rb,
lib/nlp_toolz/version.rb,
lib/nlp_toolz/language.rb,
lib/nlp_toolz/pos_tags.rb,
lib/nlp_toolz/load_jars.rb,
lib/nlp_toolz/sentences.rb

Overview

ToDo 2012-10-24: add train capabilities

Defined Under Namespace

Classes: Language, Parser, PosTags, Sentences, Tokens

Constant Summary collapse

HOME =
Gem::Specification.find_by_name("nlp_toolz").gem_dir
VERSION =
"1.1.1"
CONFIG =
File.join(File.dirname(__FILE__), '..', '..', 'config')
MODELS =
File.join(File.dirname(__FILE__), '..', '..', 'models')
JARS =
File.join(File.dirname(__FILE__), '..', '..', 'jars')
CLASS_PATH =
Dir.glob(File.join(JARS,'*.jar')).join(':')

Class Method Summary collapse

Class Method Details

.check_dependenciesObject



37
38
39
40
41
42
43
44
# File 'lib/nlp_toolz.rb', line 37

def check_dependencies
  unless Dir.exist?(File.join(NlpToolz::HOME,'models')) && Dir.exist?(File.join(NlpToolz::HOME,'jars'))
    $stdout.puts "\n--> models and jars not installed,"
    $stdout.puts "    install it by running:"
    $stdout.puts "--> $ nlp_toolz init\n".green
    exit
  end
end

.get_lang(input) ⇒ Object



46
47
48
# File 'lib/nlp_toolz.rb', line 46

def get_lang(input)
  NlpToolz::Language.get_language(input)
end

.get_sentences(input, lang = nil) ⇒ Object



50
51
52
53
# File 'lib/nlp_toolz.rb', line 50

def get_sentences(input,lang = nil)
  text = NlpToolz::Sentences.new(input,lang)
  text.split_into_sentences if text.has_model?
end

.parse_sentence(input, lang = nil) ⇒ Object



83
84
85
86
87
88
# File 'lib/nlp_toolz.rb', line 83

def parse_sentence(input,lang = nil)
  text = NlpToolz::Parser.new(input,lang)
  text.parse_text

  text.parse_hash
end

.parse_text(input, lang = nil) ⇒ Object



90
91
92
93
94
95
96
97
# File 'lib/nlp_toolz.rb', line 90

def parse_text(input,lang = nil)
  parsed_text = []
  get_sentences(input,lang).each do |sentence|
    parsed_text << parse_sentence(sentence,lang)
  end

  parsed_text
end

.tag_sentence(input, lang = nil) ⇒ Object



69
70
71
72
# File 'lib/nlp_toolz.rb', line 69

def tag_sentence(input,lang = nil)
  sentence = NlpToolz::PosTags.new(input,lang)
  sentence.get_pos_tags if sentence.has_model?
end

.tag_text(input, lang = nil) ⇒ Object



74
75
76
77
78
79
80
81
# File 'lib/nlp_toolz.rb', line 74

def tag_text(input,lang = nil)
  tagged_text = []
  get_sentences(input,lang).each do |sentence|
    tagged_text << tag_sentence(sentence,lang)
  end

  tagged_text
end

.tokenize_sentence(input, lang = nil) ⇒ Object



55
56
57
58
# File 'lib/nlp_toolz.rb', line 55

def tokenize_sentence(input,lang = nil)
  sentence = NlpToolz::Tokens.new(input,lang)
  sentence.tokenize
end

.tokenize_text(input, lang = nil) ⇒ Object



60
61
62
63
64
65
66
67
# File 'lib/nlp_toolz.rb', line 60

def tokenize_text(input,lang = nil)
  tokenized_text = []
  get_sentences(input,lang).each do |sentence|
    tokenized_text << tokenize_sentence(sentence,lang)
  end

  tokenized_text
end