AceUse - delph-in/docs GitHub Wiki

Some common use examples for Ace, illustrated with Jacy:

For the full list of command line options see AceOptions. For some discussions of picking best values for the ERG, see AceErgTuning.

Parsing

Prepare for parsing, outputting only the top best MRS, nicely formatting the output (one EP per line)

$ ace -g grammar.dat -Tf1
$ ηŠ¬γ€€γŒγ€€ε γˆγ‚‹

SENT: ηŠ¬γ€€γŒγ€€ε γˆγ‚‹
[ LTOP: h0
INDEX: e1 [ e TENSE: pres MOOD: indicative PROG: - PERF: - ASPECT: default_aspect PASS: - SF: prop ]
RELS: < [ udef_q_rel<-1:-1> LBL: h3 ARG0: x2 [ x PERS: 3 ] RSTR: h4 BODY: h5 ]
 [ "_inu_n_rel"<-1:-1> LBL: h6 ARG0: x2 ]
 [ "_hoeru_v_1_rel"<-1:-1> LBL: h7 ARG0: e1 [ e TENSE: pres MOOD: indicative PROG: - PERF: - ASPECT: default_aspect PASS: - SF: prop ] ARG1: x2 ] >
HCONS: < h4 qeq h6 > ]

NOTE: 1 readings, added 183 / 63 edges to chart (22 fully instantiated, 26 actives used, 11 passives used)      RAM: 1327k

Batch Parsing

With sensible limits and using tnt for POS tagging (which enables unknown word processing).

cat FILE | ace --max-chart-megabytes=1920 --max-unpack-megabytes=2048 --tnt-model wsj.tnt -g eng.dat -Tf -n 10 

Paraphrasing

Pipe parse output into generation:

$ ace -g grammar.dat -Tf1 | ace -g grammar.dat -e
$ ηŠ¬γ€€γŒγ€€ηŒ«γ€€γ‚’γ€€θΏ½γ†γ€€γ€‚
NOTE: 1 readings, added 323 / 101 edges to chart (31 fully instantiated, 37 actives used, 17 passives used)     RAM: 1996k
犬 が 猫 γ‚’ 追う
猫 γ‚’ 犬 が 追う
NOTE: 85 passive, 431 active edges in final generation chart; built 88 passives total. [2 results]

Compiling the Grammar

This produces the compiled grammar.

$ ace -G grammar.dat -g path-to/config.tdl

When you compile a grammar, ace gives you a brief summary:

2057 types (601 glb), 16751 lexemes, 63 rules, 12 orules, 52 instances, 22622 strings, 168 features

These refer to (FCB thinks):

types number of non-leaf types of which X are created by ace as glbs
lexemes lexical items
rules grammar rules
orules inflectional rules ?both with and without orthographic effect
instances ??? everything else: roots, chart-mapping rules, ???
string distinct strings
features distinct features

YY input mode

The YY input mode (see the corresponding section in PetInput) allows you to pass information such as POS tags.

cat yy.txt | ace -g erg1214.dat -y

where yy.txt contains inputs like:

(42, 0, 1, <0:11>, 1, "Tokenization", 0, "null", "NNP" 0.7677 "NN" 0.2323)
⚠️ **GitHub.com Fallback** ⚠️