blob: e0a344b70a7396db269c55e4f7f6e9f962de39eb (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
|
from cdec.sa._sa import make_lattice, decode_lattice, decode_sentence,\
SuffixArray, DataArray, LCP, Precomputation, Alignment, BiLex,\
HieroCachingRuleFactory, Sampler, Scorer
from cdec.sa.extractor import GrammarExtractor
_SA_FEATURES = []
_SA_ANNOTATORS = {}
_SA_CONFIGURE = []
def feature(fn):
_SA_FEATURES.append(fn)
return fn
def annotator(fn):
_SA_ANNOTATORS[fn.__name__] = fn
def annotate(sentence):
meta = {}
for name, fn in _SA_ANNOTATORS.iteritems():
meta[name] = fn(sentence)
return meta
def configure(fn):
_SA_CONFIGURE.append(fn)
|