- a szóellenőrző valójában még csak szópárellenőrző, de ezzel már lehetővé vált az olyan elütések elutasítása, mint „*pro és kontra” (helyesen „pró és kontra”, illetve „pro bono”);
- az elütéseket nem fogadja el három vagy több tagból álló szóösszetételnek, l. Helyesírás-ellenőrzés „*perecízebben”;
- a korrektorok számára új lehetőség, hogy a LibreOffice-ban kikapcsolhatóvá vált a szóösszetétel-generálás (külön a kötőjeles összetételekre is), amivel a két szóból álló összetételeket, illetve az annak elfogadott elütéseket is ellenőrizni lehet;
- ha egy helyesírási hibát súlyosnak, illetve tipikusnak ismer fel a Hunspell helyesírás-ellenőrző, akkor egyéb javaslatatot nem is tesz a program: pl. szűzen -> szüzen (nincs már szüzén, szűzén, szűzien, szűzben, szűken, szűzin, szűzen, szűzön), vagy szervíz -> szerviz (nincs szervez, szerváz, szemvíz);
- valamint helyes (és egyetlen) javaslatot tesz a leggyakoribb hibás egybeírásokra (több száz új különírás szótári felvételével), pl. testre szab, Petőfi híd (*Petőfi-híd) stb.
A fejlesztéseket az FSF.hu Alapítvány támogatta. A fejlesztésről részletes beszámoló jelenik meg hamarosan a LibreOffice.hu oldalon.
- A hozzászóláshoz be kell jelentkezni
Hozzászólások
> Van-e értelme a szótári alapú helyesírás-ellenőrzésnek
hat ez egy eredekes kerdes. egyreszt az LLM-ek tanitasahoz eloszurjuk az anyagot, hogy a nagy hulyesegeket ne tanulja meg, es ott pl. en is hasznaltam a hunspellt. meglepoen sok hiba van meg a hirportalok cikkeiben is...
masreszt viszont a transformer LLM-ek (inkabb a BERT-leszarmazottak, mint a decoder-only modelek pl. mint a chatgpt) nagyon jol hasznalhatok nyelvi problemakra, es a nagy elonye hogy nem kell kezzel szotarakat es algoritmusokat gyartani hozza, megtanulja magatol ezeket (unsupervised learning). persze ennek feltetele, hogy a tranitasahoz hasznalt szoveg tobbsegeben helyes legyen...
de hiaba lenne jobb erre egy LLM, nem fogod tudni offline hasznalni, a hatalmas memoria es szamitasi kapacitas igenye miatt...
pedig egy prediktiv (GPT/LLaMA) LLM is hasznos lehetne a LibreOffice-ban, ahogy irod a szoveget folyamatosan felajanlhatna a kovetkezo szot/szavakat (kb mint a google search). es ehhez meg csak nem is kene oriasi model, a kicsik ugyan nem annyira pontosak, de ha az esetek 90%-ban jot ajanl mar az is nagy segitseg lehet...
- A hozzászóláshoz be kell jelentkezni
Csak ezt a prediktív vacakot ne...
- A hozzászóláshoz be kell jelentkezni
Kíváncsian olvastam a tapasztalataidat az LLM-tanítással kapcsolatban, és köszönöm ezt a visszajelzést is! Örülök, hogy a Hunspell segíteni tudott valamit!
Egyetértek, hogy az LLM offline méretkorlátja és az online használatból eredő biztonsági kérdések korlátozzák az LLM-ek jelenlegi felhasználását a LibreOffice-ban (bár az online DeepL fordítót már be lehet kapcsolni a Writerben). Valószínű, hogy a közeljövőben inkább egy LLM segít majd a helyesírási szótár bővítésében, javításában, mintsem fordítva.
A mostani kiadásban van azért már egy kis előremutató automatizálás: a magyar Wikipédia szövegtartalma (egy 4,6 GB-os szövegfájl) feldolgozásra került a következő PageRank-szerű egysorossal:
cat wikipedia.xml | grep -Eo '[[][[](\w|-|[.])*[]][]]' | tr -d '][' | sort | uniq -c | sort -rsn | hunspell -l
Az eredmény a Wikipédia címszavak gyakorisági listája a rájuk való Wikipédia hivatkozások alapján. Így kiderült, hogy érdemes az anime (855 hivatkozás), klád (403 hivatkozás), Triceratops (122 hivatkozás), Higgs (85 hivatkozás) szavak mellett a földimalacot (35 hivatkozás) is felvenni a szótárba. A terv, hogy választható szaknyelvi modulok készülnek a Writerhez, ahol 5-10-20 ezer szaknyelvi szót lehet igény szerint bekapcsolni, amíg ezt nem teszi meg automatikusan a program. Az első kísérleti modul már el is készült, Petőfi összes költeményeinek szókincsével (az eredeti versek, nem amelyeket a ChatGPT írt Petőfi stílusában :). Mindössze 5 ezer szó, amelyet nem ismert fel a magyar szótár, pl.:
aafődön
abbul
Ábelszivek
abeundi
Ábrándaimnak
ábrándim
Absurdum
acélánál
acélgyürű
ácsorga
ád
ada
adá
adál
(Az „aafődön” elütésnek tűnt, de nem, csak a tájnyelvi kiejtést tükröző költői írásmód. Úgyhogy az említett földimalacot már is utolértük: az afrikaansból jött angol aadvarkhoz hasonlóan a magyar nyelvben is van egy tuti szótárkezdő szavunk, az aafőd. :)
A Wikipédia fenti feldolgozásáról, illetve az egyéb friss LibreOffice fejlesztésekről itt található némi plusz információ: MoreFunLibreOffice_Fosdem2023_12.pdf
- A hozzászóláshoz be kell jelentkezni
hat ne is mondd, a regies irasmodok, meg tajnyelvi stb formakkal nekem is meggyult a bajom, pl. a regi konyvek tele vannak ilyesmivel... az AI meg nem tart ott hogy ezeket felfogja, es idoben/terben el tudja helyezni, neki ugyanolyan input szoveg mint a tobbi es csak osszezavarja :)
- A hozzászóláshoz be kell jelentkezni
Gyanúsak is voltak a népmesés tesztpéldák! :)
- A hozzászóláshoz be kell jelentkezni
A szókincs bővítésében és javításában szeretném megköszönni a segítséget a közreműködőknek, többek között Tuna Andrásnak, Pénzes Dávidnak és Úr Balázsnak!
- A hozzászóláshoz be kell jelentkezni
Neked is és másnak is köszönjük szépen mindenkinek a munkáját!!!
- A hozzászóláshoz be kell jelentkezni
Jaj, multkor mar neztem hogy kene egy hunspell 1.7.3 (vagy akarmi is lesz a kovetkezo release) hogy legyen Hunspell_add_with_flags
.
Amugy errol a szoparellenorzorol van barmi leiras? Leszedtem gitbol a legujabb magyar szotarat, command liine hunspell-bol mukodni latszik hogy "hot" invalid, "hot dog" meg igen, de hogy nez ez ki a c api szinten? Mert nekem "hot dog", "hot_dog", "hot-dog"-ra mind azt mondja a Hunspell_spell
hogy invalid.
I hate myself, because I'm not open-source.
- A hozzászóláshoz be kell jelentkezni
mert helyesen: hót dög :)
- A hozzászóláshoz be kell jelentkezni
Hat, a "hod dog"-ra nekem a "hót dog" meg a "hőt dog"-ot javasolja, Ugy latszik a dog az valid magyar szo. "hot_dog"-ra mondjuk "hortyog"-ot mond.
I hate myself, because I'm not open-source.
- A hozzászóláshoz be kell jelentkezni
Dán dog, német dog alapján ismeri fel gondolom.
Laci, van most olyan release, amit FreeBSD alá lehet passzítani? (Frissíteni kéne már a ports-ot ...)
- A hozzászóláshoz be kell jelentkezni
Igen, tényleg csak a dán dog miatt került be a szótárba a dog, úgyhogy érdemes lehet csak szókapcsolattal elfogadni: bodeaux-i dog, dán dog és német dog (és akkor a „dolgodat” elütése, a „dogodat” felismerésre kerülne).
A jelenlegi forrásból előállított állományok innen is letölthetők:
wget https://cgit.freedesktop.org/libreoffice/dictionaries/plain/hu_HU/hu_HU…
wget https://cgit.freedesktop.org/libreoffice/dictionaries/plain/hu_HU/hu_HU…
De készül egy tar.gz kiadás is ezekkel az állományokkal a héten. Jelzem, ha elérhető.
- A hozzászóláshoz be kell jelentkezni
Arra gyanakszom, hogy a C API használatakor rossz szótár kerül betöltésre, mert szóközzel mennie kellene, sőt, a régebbi Hunspell-lel is (mivel már ott is lehetett szópárokat megadni a dic fájlban a javaslatok pontosítására). A szópárellenőrzésnél a fejlesztés az volt, hogy a LibreOffice Writer ICU-n alapuló szövegtördelése nem szavanként, hanem szópárokként is átadja ellenőrzésre hibás szó esetén a Hunspellnek a bekezdés szavait: https://bugs.documentfoundation.org/show_bug.cgi?id=154499.
A folt a leírással: https://git.libreoffice.org/core/+/5619fc438273cd15e78539e78b8af751bca24b1a%5E%21
A Hunspell karaktergrafikus alkalmazásban (pl. hunspell fájl.txt, sőt, hunspell fájl.odt) a szópárellenőrzés nincsen még támogatva, csak parancssorban, de ott is elég fapados módon: a frekvencialisták szűrésére való -1 kapcsolóval lehet a szóközt is megadni:
echo -e 'hot\t\ndog\t\nhot dog\t' | hunspell -1
Hunspell 1.7.2 - Magyar 1.8
& hot 2 3: hót, hőt
*
*
A fenti példában a bemenet 3 soros: a hot, dog és hot dog szavakat, illetve szópárt tartalmazza tabulátorral zárva. A -1 kapcsolónak megfelelően a tabulátorok előtti rész, így a „hot dog” is egy szóként kerül átadásra a spell() (Hunspell_spell) függvénynek. A kimenetben az látszik, hogy az új szótárral a hot már hibás, a dog és a hot dog viszont helyes (csillaggal jelölve). Régi szótárral a hot dog még hibás:
hot dog 2 7: hót dog, hőt dog
Régebbi Hunspell-lel, de új szótárral pedig látható a sok kevésbé jó javaslat is, de a hot dog ugyanúgy jó:
Hunspell 1.7.0 - Magyar 1.8
& hot 14 3: hót, hőt, hit, hoz, holt, hont, hat, hol, hát, hon, hét, bot, hűt, h-t
*
*
Egyébként a szópárellenőrzés annyiban nem újdonság a LibreOffice-ban, hogy a Lightproof mondatellenőrzővel van lehetőség a bekezdések teljes szövegének ellenőrzésére, de ezt csak pár nyelv használja (bár a magyar éppen igen, és jelzi is pár több szóból álló idegen kifejezésnél a hibát, pl. ha az „et” önmagában fordul elő). A szópárellenőrzéssel minden Hunspell szótárat egyszerűen bővíteni lehet anélkül, hogy idegen és egyéb frázisok szavanként legyenek felvéve a szótárba, amelytől a legtöbb szótárfejlesztő joggal ódzkodott. (Pl. a LibreOffice en_US szótárából ezért hiányoznak az angol szövegekben gyakran előforduló latin eredetű kifejezések, kivéve az „etc.” („stb.”) rövidítést. A standard /usr/share/dict/words angol szólista az etc-t sem tartalmazza, pedig az „etc/” a Unix/Linux központi könyvtárának neve is egyben – mondjuk a passwd-ből, és a többi fura rendszerhívásnévből kitűnik, hogy nemcsak a Multics, hanem az angol helyesírás is optimalizálva lett a Unixon. Bár mikor megkérdezték Ken Thompsont, hogy min változtatna a Unixon, ha újratervezhetné az alapoktól, azt mondta, hogy a „creat” rendszerhívást e-vel írná: "I'd spell creat with an e.")
Köszönöm a visszajelzést!
- A hozzászóláshoz be kell jelentkezni
Valami tenyleg a szotarral nem oke, de nalam mar a hunspell cli se jo akkor. A fenti peldad nalam igy nez most ki:
$ echo -e 'hot\t\ndog\t\nhot dog\t' | hunspell -1 -d ./hu_HU_u8_gen_alias
Hunspell 1.7.2 - Magyar 1.8
& hot 14 3: hót, hőt, hit, hoz, holt, hont, hat, hol, hát, hon, hét, bot, hűt, h-t
*
& hot dog 2 7: hót dog, hőt dog
Megprobaltam most letolteni a leforditott szotarakat a libreoffice repobol, de ezzel is ugyan az az eredmeny. Vagy fel kene ezt tenni valami system path-ba? Nem akartam felulirni a disztro csomagjat.
EDIT: ami kicsit gyanus, hogy a forrasban meg ott van a hot_dog (szotar/idegen/ragozatlan.2 meg szotar/idegen/fonev.1), a leforditott dic fajlokban mar sehol. Vagy ez nem gond?
I hate myself, because I'm not open-source.
- A hozzászóláshoz be kell jelentkezni
A letöltött szótárral biztos, hogy nem megy? A fordítás sajnos lehet hibás több okból is, de alap Ubuntu 22.0-vel fordítottam. A kiadásba bekerül még Lendvai Attila következő foltja, amely javít pár potenciális fordítási hibát (explicit bash használata, párhuzamos make futtatás tiltása): https://github.com/laszlonemeth/magyarispell/pull/59
- A hozzászóláshoz be kell jelentkezni
Kitoroltem kozbe mindent (beleertve a gentoo myspell-hu csomagjat) es ujrakezdtem 0-rol az egeszet. Lehet hogy csak beneztem az elobb valamit, mert a letoltott szotar most mar elfogadja a "hot dog"-ot, bar a hot-ra meg mindig rossz javaslatokat ad:
$ echo -e 'hot\t\ndog\t\nhot dog\t' | hunspell -1 -d ./hu_HU
Hunspell 1.7.2 - Magyar 1.8
& hot 14 3: hót, hőt, hit, hoz, holt, hont, hat, hol, hát, hon, hét, bot, hűt, h-t
*
*
Ha en probalom leforditani ugy tovabbra is rossz (az altalad linkelt PR-al egyutt is). Ir ki mondjuk gyanus dolgokat forditas kozben, vannak karakterkodolasi hibak, lehet amiatt tunik el valahol? https://gist.github.com/DirtYiCE/7009bf27e1c96f9e20f4aa50d57a2922
I hate myself, because I'm not open-source.
- A hozzászóláshoz be kell jelentkezni
Lehet, hogy a LANG=hu_HU.UTF-8 beállítás hiányzik, vagy az annak megfelelő locale? Nálam ilyen beállítással nem jelentkezik ez a hiba. Köszönöm szépen a hibajelzést, és a visszajelzést is arról, hogy a libreoffice-os szótárállományok működnek!
- A hozzászóláshoz be kell jelentkezni
Nem, probalkoztam mar LC_ALL=hu_HU.UTF-8
-al, most kiprobaltam a LANG=hu_HU.UTF-8
-at is meg melleveve, nem segitett.
Amugy nemi debuggolas utan, az egyik sor pl amin elszall a recode az ez:
Brooklyn[ph:brúklin,hy:Brook-l·yn]
Ott van egy U+00B7 MIDDLE DOT benne ami nincs ISO-8859-2-ben.
I hate myself, because I'm not open-source.
- A hozzászóláshoz be kell jelentkezni
Én jellemzően angol szövegeket írok. Gyakori, hogy először LO-ban kezdem, aztán ha meg kéne osztani, akkor feldobom OneDrivera és webes Wordben folytatom. Az LO helyesírás ellenőrzője nem sok hibát szokott fogni, inkább csak zavar, mert mindenfélét aláhuzigál, pl. tegnap talán a WebSockets-et kellett a szótárhoz hozzáadnom. Viszont amint Wordben nézem, ömlenek a jogos nyelvhelyességi észrevételek. Vagy csak simán a sok változtatás miatt értelmetlen mondatok keletkeztek, vagy "in such case" -> "in such a case" és hasonló hibákat fog. Szóval a Word nagyságrendileg lépi le a LO-t tapasztalataim szerint.
- A hozzászóláshoz be kell jelentkezni
A brit angol szótár több naprakész szót tartalmaz, mint az amerikai, esetleg azt is érdemes kipróbálni.
Ha lesz magyar szakmai szókincsmodul a Wikipédia címszavak alapján, akkor angol is. (Emlékeztem egy angol kiegészítő szótárra, de most nem találtam, csak egy bölcsészek számára készített tudományos szótárat: https://github.com/emareg/acamedic).
Angol nyelvtani ellenőrzéshez jó lehet még a LanguageTool LibreOffice kiegészítő:
https://languagetool.org/insights/post/product-libreoffice/
de akár a GMail is, amely képes kiszűrni a hasonló angol nyelvhelyességi hibákat (de a magyar nyelv esetében bosszantóan sok helyes szót húz alá pirossal még).
- A hozzászóláshoz be kell jelentkezni
Köszi a tippeket. Sajnos a LanuageTool biztonsági (extension) és főleg adatbiztonsági okokból (eleve felhő alapú) még fizetős változatban sem feltétlenül kerülhet szóba.
- A hozzászóláshoz be kell jelentkezni
Régebben az 1.6.1 verziót használtam macOS-en helyesírás ellenőrzésre sokáig, viszont elég sok alap magyar szó hiányzott belőle sajnos így elég körülményes volt a használata. Akkor döglött projektnek látszott, mert éveken keresztül nem volt belőle új verzió, pedig hát jó lett volna.
Most már a macOS-ben van elég jó helyesírás ellenőrző szótár, amiből csak néha 1-2 szó hiányzik (nem tudom mennyi részt vettek át a hunspellből), így sajnos már nem használom közvetlenül.
- A hozzászóláshoz be kell jelentkezni
A macOS pár éve még biztosan a Hunspell 1.2.8-at tartalmazta beépítetten:
https://opensource.apple.com/source/hunspell/hunspell-11/
Elképzelhető, hogy ez, illetve a Hunspell 1.6.1 sem működött mindenben együtt az újabb magyar szótárakkal.
Hogy mit használ most a macOS, kíváncsi lennék rá, de nem lepődnék meg, ha még mindig ott lenne a Hunspell is, biztos, ami biztos.
- A hozzászóláshoz be kell jelentkezni