[ Skip to the content ]

Institute of Formal and Applied Linguistics Wiki


[ Back to the navigation ]

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Next revision
Previous revision
user:kruza:manatee-howto [2008/05/14 14:43]
kruza vytvořeno
user:kruza:manatee-howto [2008/05/15 07:50] (current)
kruza
Line 1: Line 1:
 +====== Jak na Manatee / Bonito: Tipy pro správce ======
 +//Tento dokument se vztahuje na Manatee verzi 1.49. Nesnažím se zde o úplnost, ale o přehled toho, co jsem seznal užitečným a co mi stačilo.//
 +
 +===== Instalace Manatee =====
 +
 Máme: server na síti Máme: server na síti
 Chceme: připojit se k němu z Bonita a browsit v korpusech Chceme: připojit se k němu z Bonita a browsit v korpusech
  
-//Tento dokument se vztahuje na Manatee verzi 1.49. Nesnažím se zde o úplnost, 
-ale o přehled toho, co jsem seznal užitečným a co mi stačilo.// 
 Dokumentace k Manatee: (v adresáři manatee) Dokumentace k Manatee: (v adresáři manatee)
 README README
Line 28: Line 31:
 se postará admin serveru. se postará admin serveru.
  
 +
 +===== Příprava korpusu =====
 +
 +Máme: korpus v PML (nebo v jiném formátu, který přelouská btred)
 +Chceme: korpus přístupný přes bonito
 +
 +Dokumentace k Manatee: (v adresáři manatee)
 +  * krok 1:   vertical.txt
 +  * krok 2:   corpconf.txt
 +  * krok 3,4: README
 +  * krok 5:   $ ./chuser -help
 +  * krok 6:   bonito/doc/*
 +
 +
 +Kroky:
 +  - Příprava vertikály
 +  - Konfigurace korpusu
 +  - Konverze do formátu Manatee
 +  - Instalace
 +  - Konfigurace uživatelů
 +  - Připojení z Bonita
 +
 +
 +==== 1. Příprava vertikály ====
 +
 +
 +Vertikála je textový formát, ze kterého jediného lze zkonstruovat korpus
 +přístupný pro systém Manatee/Bonito. Je třeba dopředu definovat hodnoty, které
 +se pro tokeny zakódují. Hodnoty každého tokenu jsou pak na zvláštním řádku
 +oddělené tabulátorem.
 +
 +Příklad: Chceme-li v korpusu mít formu, lemma a formu rodiče, mohou věty "//Dnes
 +prší. To nevadí.//" vypadat ve vertikále takto:
 +
 +    Dnes    dnes    prší
 +    prší    pršet   #ROOT
 +    .     #ROOT
 +    
 +    To  to  nevadí
 +    nevadí  vadit   #ROOT
 +    .     #ROOT
 +
 +Věty jsou odděleny prázdným řádkem.
 +Kódování se specifikuje v konfiguráku (viz krok 2). Atributy (sloupce) mohou
 +být vícehodnotové. Např. při nedisambiguované morfologické analýze může být
 +pro každý token více tagů a lemmat. V konfiguráku se nastaví, že atribut je
 +vícehodnotový a jakým znakem jsou hodnoty separovány. Budeme-li sledovat formu
 +a vícehodnotové lemma s oddělovačem mezerou, pak věta "Žena prasata jí." bude
 +mít vertikální zápis:
 +
 +    Žena    žena hnát
 +    prasata prase
 +    jí  ona jíst
 +    .   .
 +
 +Kromě tokenů se ve vertikále mohou vyskytovat i XML tagy. Vertikála však není
 +XML dokument, takže žádný kořenový tag, žádné DTD atd. Každý tag na zvláštním
 +řádku.
 +
 +    <s id="s1">
 +    Dnes    dnes    prší
 +    prší    pršet   #ROOT
 +    .     #ROOT
 +    </s>
 +    
 +    <s id="s2">
 +    To  to  nevadí
 +    nevadí  vadit   #ROOT
 +    .     #ROOT
 +    </s>
 +
 +
 +==== 2. Konfigurace korpusu ====
 +
 +Jméno konfiguračního souboru musí být shodné se jménem korpusu, jak se bude
 +jevit v Bonitu. Cesta k němu (pouze adresář) je dána proměnnou prostředí
 +**MANATEE_REGISTRY**.
 +Konfigurák má formu dvojic jméno_atributu - hodnota. Hodnota buď "uvozena",
 +není-li formy céčkového identifikátoru. Za ní může následovat {blok} a v něm
 +další dvojice jméno-hodnota, které se týkají tohoto atributu.
 +
 +Uvádívám tyto atributy:
 +  * PATH: kam se mají zapsat soubory korpusu (klíďo relativní cesta).
 +  * ENCODING: kódování vertikály. POZOR! latin-2 má tvar "iso8859-2" a žádný jiný!
 +  * VERTICAL: cesta k vertikále.
 +  * STRUCTURE: deklarace XML tagu
 +  * ATTRIBUTE: definice atributu (sloupce ve vertikále); Atributu ATTRIBUTE lze specifikovat atributy LOCALE, MULTIVALUE a MULTISEP (a možná další - viz dokumentaci)
 +
 +Příklad vertikály výše by mohl mít konfigurák:
 +    PATH "korpusy/pokus"
 +    ENCODING "iso8859-2"
 +    VERTICAL "data/pokus/vertikala.txt"
 +    ATTRIBUTE form{
 +        LOCALE "cs_CZ"
 +    }
 +    ATTRIBUTE lemma{
 +        LOCALE "cs_CZ"
 +        MULTIVALUE yes
 +        MULTISEP " "
 +    }
 +    ATTRIBUTE parent
 +    STRUCTURE s
 +
 +Atribut //parent// by měl taky mít uvedené lokále. Vynechal jsem ho, aby bylo
 +patrno, že v definici atributu se blok použít nemusí.
 +
 +
 +==== 3. Konverze do formátu Manatee ====
 +
 +Z vertikály se soubory čitelné programem Manatee udělají pomocí programu
 +**encodevert**, který je v adresáři manatee. Příklad:
 +
 +    export MANATEE_REGISTRY=. #konfigurák je v aktuálním adresáři
 +    /opt/manatee/encodevert -c pokus
 +
 +Toto způsobí, že se v adresáři ./korpusy/pokus objeví soubory našeho korpusu.
 +
 +
 +==== 4. Instalace ====
 +
 +Korpus může být buď na serveru nebo na lokálním počítači. V Bonitu si uživatel
 +vybírá, zda se chce připojit na server nebo spustit manateesrv lokálně.
 +
 +Jest-li korpus na lokální mašině, je nejjednodušší, když je binárka manateesrv
 +v témže adresáři jako bonito a konfigurák korpusu. Cesta k manateesrv jde ale
 +specifikovat v běžícím Bonitu i v jeho konfiguráku (resource).
 +Taktéž umístění konfiguráku korpusu jde specifikovat pomocí nastavení proměnné
 +prostředí **MANATEE_REGISTRY**.
 +
 +Chceme-li mít korpus na serveru a připojovat se po síti, pak je potřeba dát
 +konfigurák korpusu i korpus sám na serveru do správných adresářů. Ty jsou dány
 +na začátku souboru runm.pl, což je wrapper pro manateesrv.
 +
 +
 +==== 5. Konfigurace uživatelů ====
 +
 +V adresáři manatee je soubor users, ve kterém se nastavuje, který uživatel
 +může přistupovat k jakému korpusu, jaké je jeho jeslo atd. V políčku před
 +poslední dvojtečkou je mezerami oddělený seznam jmen korpusů, ke kterým se
 +uživatel může připojit. Tam je potřeba nově instalovaný korpus uvést.
 +
 +Pokud má být instalovaný korpus defaultní, uvede se to v runm.pl (síťová
 +verze) nebo jako argument pro manateesrv v resource (lokální verze).
 +
 +Přidávání uživatelů a rýpání v heslech je nejlépe provádět pomocí skriptu
 +chuser.
 +
 +
 +==== 6. Připojení z Bonita ====
 +
 +Zatím se zdá, že k verzi Manatee 1.49 se lze připojit jakýmkoliv Bonitem (tedy
 +že zpětná kompatibilita je ze strany klienta zachována). Stará TCLková verze
 +vyžaduje TCL/TK na uživatelské mašině. Nová binárková verze zase vyžaduje
 +libstdc++, která je zastaralá a je ji potřeba doinstalovávat.
 +
 +Pro síťové připojení je potřeba mít otevřený port 5016 popř. jiný, na který je
 +manatee na serveru nakonfigurován. Na straně Bonita se port specifikuje v
 +souboru resource jako "*options.serverport: 5016" (s tabem).

[ Back to the navigation ] [ Back to the content ]