<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>AI |</title><link>https://clementgodbarge.com/pl/tag/ai/</link><atom:link href="https://clementgodbarge.com/pl/tag/ai/index.xml" rel="self" type="application/rss+xml"/><description>AI</description><generator>HugoBlox Kit (https://hugoblox.com)</generator><language>pl-pl</language><lastBuildDate>Sun, 06 Sep 2026 00:00:00 +0000</lastBuildDate><image><url>https://clementgodbarge.com/media/icon_hu_64a6c3bec25b3d7b.png</url><title>AI</title><link>https://clementgodbarge.com/pl/tag/ai/</link></image><item><title>Płot, nie stos</title><link>https://clementgodbarge.com/pl/post/fence-not-fire/</link><pubDate>Sun, 06 Sep 2026 00:00:00 +0000</pubDate><guid>https://clementgodbarge.com/pl/post/fence-not-fire/</guid><description>&lt;p&gt;W magazynie w North Las Vegas Amazon uruchomił maszynę, która odcina grzbiety używanym książkom. Luźne kartki przechodzą przez skaner, a potem papier idzie na przemiał. Niszczenie książek, by karmić AI: historia miała wszystko, czego trzeba, by stać się skandalem kulturalnym.
porównał ten proceder do współczesnego palenia książek, nie szczędząc przy tym frazesów: aluzje do Savonaroli, zdjęcia z banku obrazów przedstawiające rzekomo białe kruki i, rzecz jasna, berliński stos. Jak można się było spodziewać, poważniejsze gazety zachowały chłodniejszy ton, ale to samo porównanie zawisło w powietrzu. Przy całym swoim oburzeniu artykuły te puściły jednak branży AI płazem zadziwiająco wiele. Los papieru zajmuje środek sceny; kwestia własności powstających w ten sposób bibliotek cyfrowych ledwie się pojawia. Kto ma kontrolować skanowaną wiedzę? To pytanie musi poczekać, aż uprzątniemy bzdury o paleniu książek.&lt;/p&gt;
&lt;h2 id="skaner-to-nie-stos"&gt;Skaner to nie stos&lt;/h2&gt;
&lt;p&gt;Analogia ze stosami Savonaroli czy nazistowskim paleniem książek jest niedorzeczna: zniszczyć egzemplarz to nie to samo, co stłumić tekst. Stosy były publicznymi aktami wyparcia się. Ten biedny mnich Savonarola, przywoływany przy każdej awanturze o palenie książek, wzywał ludzi, by w ramach publicznej pokuty poświęcili część swojego dobytku. Nazistowskie stosy inscenizowały inny rodzaj wyparcia: publiczne spalenie książek obwieszczało, że ich autorzy nie mają miejsca w niemieckim życiu kulturalnym. W obu przypadkach, jakkolwiek przykrych, niszczenie było performatywne. Skanowanie destrukcyjne, szeroko stosowana metoda digitalizacji, służy czemu innemu: egzemplarz idzie pod gilotynę, aby zachować jego treść. Książka zostaje zniszczona; tekst – zdematerializowany. Ci, którzy sięgają po &lt;em&gt;Fahrenheit 451&lt;/em&gt;, mogliby sobie przypomnieć jego główną naukę: tekst to nie papier, na którym go wydrukowano.&lt;/p&gt;
&lt;p&gt;Ostrzejszy od Daily Mail, ale nie mniej nieporadny,
dolał oliwy do ognia, umieszczając w nagłówku „rzadkie książki”. Tymczasem księgarz cytowany w jego własnym śledztwie powiedział, że te hurtowe zamówienia
, co wskazuje w przeważającej mierze na wydania opublikowane po wprowadzeniu ISBN około 1970 r. To towar z wyprzedaży garażowych i sklepów charytatywnych, często o jedne wiosenne porządki od śmietnika. Zanim ogłosi się katastrofę kulturalną, warto by zajrzeć do katalogu bibliotecznego. To dokładnie te publikacje, do których zachowania istnieją biblioteki z egzemplarzem obowiązkowym. Owszem, ISBN nie gwarantuje, że egzemplarz obowiązkowy przetrwał, ale i rzadkość na rynku antykwarycznym nie dowodzi, że tekst zniknął.&lt;/p&gt;
&lt;p&gt;Książki mają oczywiście swoją historię materialną. Egzemplarze, którym adnotacje, dedykacje czy proweniencja nadają znaczenie historyczne, zasługują na to, by je zidentyfikować i zachować. Antykwariusze mają tu swoją rolę do odegrania: rozpoznanie takiego egzemplarza powinno być powodem, by nie trafił do partii przeznaczonej na przemiał. Możemy też nadal martwić się kurczącą się podażą fizycznych egzemplarzy tytułów wyczerpanych. W takim razie powinniśmy jednak zapytać także, dlaczego posiadacze praw ani ich nie wznawiają, ani nie zezwalają na dostęp do istniejących faksymiliów cyfrowych. Badacze znają tę frustrację: Google Books znajduje potrzebny fragment, po czym podsuwa urywek książki, której nie można ani kupić nowej, ani przeczytać online. Są więc tu straty warte dyskusji, ale nie zamieniają one skanera w nazistowski stos.&lt;/p&gt;
&lt;p&gt;Tymczasem branża księgarska od dawna rutynowo oddaje na przemiał niesprzedane książki. W samej Francji w 2023 r.
, czyli mniej więcej 60 procent tonażu zwróconego dystrybutorom jako niesprzedany. Nazywa się to zarządzaniem zapasami. Nadwyżki egzemplarzy i rzadkie tytuły antykwaryczne stawiają różne pytania o dostęp, ale niszczenie papieru samo w sobie nie jest ani cenzurą, ani tyranią.&lt;/p&gt;
&lt;h2 id="więcej-książek-lepsza-ai"&gt;Więcej książek, lepsza AI?&lt;/h2&gt;
&lt;p&gt;To, że firmy AI kupują i skanują książki, jest w gruncie rzeczy dobrą wiadomością. Technologia rutynowo krytykowana za płytkie rozumienie ludzkiej kultury przyswaja jej sobie więcej – można by się spodziewać, że badacze przyjmą ten wysiłek z zadowoleniem.&lt;/p&gt;
&lt;p&gt;Sieć jest marnym substytutem nagromadzonego dorobku danego języka. Znaczna część zapisanego życia języka – od powieści i pamiętników po popularne piosenki i spisane rozmowy – nigdy nie przeszła z druku do sieci. Wiele z tych książek przeżyło swoich wydawców. Włączenie ich do danych treningowych ma największe znaczenie tam, gdzie niewiele innego jest dostępne. Kilka książek więcej po angielsku może przynieść jakąś marginalną poprawę. W języku słabo reprezentowanym te kilka książek może jednak zdecydować o tym, czy system będzie użyteczny, czy bezużyteczny. Czy narzędzia te mają miejsce w naszych usługach publicznych i codziennym życiu – to kwestia do debaty publicznej. Ale gdziekolwiek zdecydujemy się ich używać, powinniśmy móc to robić we własnym języku.&lt;/p&gt;
&lt;p&gt;Zamówienia, o których donoszono z Hiszpanii i Holandii, konkretyzują stawkę językową. W maju
opisało księgarza z Badalony, który otrzymywał powtarzające się zamówienia, głównie na katalońską literaturę faktu: książki historyczne, podręczniki techniczne i stare materiały konferencyjne. W sierpniu prasa holenderska opisała zapytanie skierowane do De Slegte o
. Język książek zasługuje na co najmniej tyle samo uwagi, co los ich opraw. Może to zbyt wiele, by wymagać od Daily Mail. Ale i poważniejsze gazety miały niewiele do powiedzenia o językach, o które tu chodzi.&lt;/p&gt;
&lt;p&gt;Umowy licencyjne z dużymi wydawcami również mogą dostarczyć cennego materiału, ale ich katalogi cyfrowe obejmują tylko ułamek tego, co ukazało się drukiem. Książki nigdy niezdigitalizowane albo takie, do których wydawca nie ma już praw, pozostają poza ofertą. Nawet hojna umowa licencyjna nie zastąpi historii wydawnictw, a tym bardziej historii kultury. Kupowanie używanych egzemplarzy to sposób na sięgnięcie poza te komercyjne granice.&lt;/p&gt;
&lt;h2 id="kradzież-to-nie-argument"&gt;„Kradzież” to nie argument&lt;/h2&gt;
&lt;p&gt;Nazywanie tego „kradzieżą” też nic nie daje. W czerwcu 2025 r. dwa amerykańskie sądy okręgowe orzekły, że w rozpatrywanych sprawach wykorzystanie książek do trenowania modeli językowych mieściło się w granicach dozwolonego użytku (fair use). W sprawie
sąd podkreślił transformatywny charakter treningu: książki posłużyły do zbudowania systemu zdolnego tworzyć nową ekspresję. Modele potrafią zapamiętywać fragmenty, ale użycie książki do treningu nie sprawia, że cały tekst staje się dostępny na żądanie. Brak dosłownego odtworzenia nie rozstrzyga też wszystkich zastrzeżeń. W sprawie
sędzia ostrzegł, że utwory generowane przez AI mogłyby zalać rynek i że dowód takiej szkody mógłby obalić obronę opartą na dozwolonym użytku. Ci powodowie nie przedstawili jednak istotnych dowodów takiej szkody dla własnych utworów. Żadne z tych orzeczeń nie daje firmom AI nieograniczonego przyzwolenia ani nie zamyka sporu etycznego. Wymagają one od nas rozróżnienia, jak książki są nabywane, jak przechowuje się kopie i co robi z nimi trening. Nazywanie tego wszystkiego „kradzieżą” pozostawia te pytania bez odpowiedzi.&lt;/p&gt;
&lt;p&gt;Nawiasem mówiąc, orzeczenie w sprawie Anthropic dostarcza uzasadnienia dla gilotyny. Sąd podtrzymał legalność digitalizacji zakupionych egzemplarzy, a odrzucił gromadzenie pirackich książek w stałej bibliotece – za które firma później
. Digitalizacja przeszła po części dlatego, że każdy egzemplarz drukowany niszczono w trakcie konwersji: kopia cyfrowa go zastępowała i nie była udostępniana poza firmą. Niszczenie, które tak niektórych bulwersuje, pomogło Anthropic wykazać, że jej program digitalizacji mieścił się w dozwolonym użytku. Kupić, zeskanować, wyrzucić – w tym przypadku była to droga zgodna z prawem. Gilotyna jest tu narzędziem zgodności z przepisami.&lt;/p&gt;
&lt;p&gt;Są dobre powody, by chcieć, żeby AI czerpała z większej liczby języków, z większego dorobku naukowego i z większej części świata, który istniał przed internetem. Powody te nie znikają dlatego, że nielubiana przez nas firma dostrzegła w tym okazję komercyjną.&lt;/p&gt;
&lt;h2 id="pożyczone-oburzenie"&gt;Pożyczone oburzenie&lt;/h2&gt;
&lt;p&gt;Wróćmy zatem do Daily Mail. Jego artykuł jest częścią
, kampanii właścicieli gazet i wydawców zabiegających o
dla AI. Robotę odwalają dwa wygodne podstawienia: Big Tech staje za AI, a posiadacze praw – za „brytyjską kreatywnością”. Czytelników zaprasza się do obrony kultury, podczas gdy wydawcy negocjują warunki jej sprzedaży. Badacze udostępniający tę historię mogliby zapytać, czyjej sprawie służy ich oburzenie.&lt;/p&gt;
&lt;p&gt;Big Tech i
kłócą się o czynsz, ale żadne z nich nie ma nic przeciwko płotowi. Opowieść o samotnym autorze okradzionym przez technologicznego giganta przesłania to, co kosztowne umowy licencyjne oferują obu korporacyjnym obozom: wydawcy dostają pieniądze, a Big Tech – rynek, na którym mniejszych rywali nie stać na konkurowanie. Peter Thiel ujął preferencję Doliny Krzemowej dosadniej:
.&lt;/p&gt;
&lt;p&gt;Licencjonowanie nie musi prowadzić do takiego rezultatu. Przystępny, niewyłączny dostęp mógłby pomóc mniejszym deweloperom. Ale system, który każe każdemu nowemu graczowi negocjować kosztowne umowy z głównymi posiadaczami praw, czyni z siły nabywczej warunek wejścia. Opłata przedstawiana jako ustępstwo wobec przemysłów kultury kończy jako zakup ochrony przed przyszłymi rywalami.&lt;/p&gt;
&lt;h2 id="ai-nie-należy-do-big-techu"&gt;AI nie należy do Big Techu&lt;/h2&gt;
&lt;p&gt;Jest jeszcze głębszy problem. Zbyt wiele krytyki AI bierze jej największych komercyjnych dostawców za całą dziedzinę. Produkty dominują w nagłówkach; badania i rozwój poza tymi firmami znikają z pola widzenia. Big Tech nie mógłby sobie wymarzyć użyteczniejszego nieporozumienia. Jego ambicja zawładnięcia dziedziną staje się przesłanką krytyki wymierzonej przeciw niemu. Monopol nie jest jeszcze przesądzony. Traktowanie go jako faktu dokonanego to ogromna przysługa dla tych firm. Odwraca też uwagę od open source: od jego potrzeb, od jego szans na istnienie, od jego interesów, od jego prawomocności jako alternatywy.&lt;/p&gt;
&lt;p&gt;AI open source pozwala ludziom budować i dostosowywać systemy odzwierciedlające większą różnorodność języków, kultur i form ekspresji. Dla krajów Europy, Afryki, Ameryki Łacińskiej i Azji to praktyczna podstawa suwerenności technologicznej i kulturowej: zdolność decydowania, jak systemy działają, jakim językom służą i gdzie są używane. To, czy używać AI i do jakich celów, powinno pozostać wyborem publicznym, a nie decyzją podyktowaną zależnością od zagranicznego oligopolu.&lt;/p&gt;
&lt;p&gt;Ale wolność modyfikowania systemu niewiele znaczy bez środków, by to robić. Niezależna praca wymaga wiedzy eksperckiej, infrastruktury obliczeniowej i dostępu do materiału treningowego. I tu wracamy do książek. Jeśli każdy zespół badawczy czy instytucja publiczna będzie musiała negocjować własne umowy wydawnicze albo montować własną prywatną bibliotekę, niezależność stanie się nieosiągalna finansowo nawet dla niektórych zamożnych krajów.&lt;/p&gt;
&lt;h2 id="książki-już-tu-są"&gt;Książki już tu są&lt;/h2&gt;
&lt;p&gt;Biblioteki i archiwa od pokoleń gromadzą materiał, którego te systemy potrzebują. Ich zbiory istnieją dlatego, że dostęp do wiedzy powinien przetrwać komercyjny interes w jej sprzedawaniu. Wiele już zeskanowano:
przechowuje około dziewiętnastu milionów zdigitalizowanych woluminów z bibliotek naukowych, w tym wiele wciąż objętych prawem autorskim. Biblioteka skanuje książkę i ją zachowuje. Nikt tam nie potrzebuje gilotyny. HathiTrust
, ale ogłosił też
, projekt mający zapewnić dostęp do korpusu na potrzeby niekomercyjnych badań i rozwoju AI. Dostęp na takich warunkach nadal zostawiłby niektórych niezależnych deweloperów za drzwiami.&lt;/p&gt;
&lt;p&gt;Posiadanie książek nie daje jednak bibliotece prawa do rozpowszechniania ich chronionej treści jako korpusu treningowego.
pozwala instytucjom badawczym i bibliotekom eksplorować legalnie dostępne utwory na potrzeby badań naukowych i dopuszcza szerszą eksplorację tam, gdzie posiadacze praw nie zastrzegli swoich praw.
: jej wyjątek eksploracyjny obejmuje badania niekomercyjne i ogranicza przekazywanie kopii. Żadne z tych ram nie daje bibliotekom ogólnego prawa do udostępniania chronionych zbiorów, by inni mogli na nich budować.&lt;/p&gt;
&lt;p&gt;Możemy też przemyśleć, jak długo posiadacze praw powinni kontrolować obliczeniowe użycie książek. Patenty farmaceutyczne ucieleśniają pewien układ: tymczasowa wyłączność nagradza innowację, a potem wynalazek staje się dostępny dla innych. Ich zwykły dwudziestoletni okres jest znacznie krótszy niż ochrona prawnoautorska na czas życia autora i siedemdziesiąt lat po jego śmierci. Czemu nie zastosować podobnej zasady do obliczeniowych zastosowań książek? Po, powiedzmy, dwudziestu latach od pierwszego wydania książka mogłaby stać się dostępna do eksploracji tekstów i danych bez opłat licencyjnych, podczas gdy prawa do wznowień i sprzedaży pozostawałyby chronione. Autorzy mogliby nadal zarabiać na swoich książkach, a kolejne pokolenia badaczy nie musiałyby negocjować zgody na ich analizowanie.&lt;/p&gt;
&lt;p&gt;Dwa lata temu dowodziłem w
, że dane dziedzictwa kulturowego należy traktować jako dobro publiczne. Rządy powinny finansować bibliotekom i archiwom digitalizację, transkrypcję i dokumentowanie zbiorów oraz dać im prawne upoważnienie do udostępniania powstałych korpusów, by inni mogli na nich budować. Big Tech mógłby dołożyć się do rachunku poprzez specjalną daninę.&lt;/p&gt;
&lt;p&gt;Finansowanie publiczne powinno iść w parze z jawną polityką gromadzenia zbiorów i zasadami dostępu, obejmującymi pracę akademicką i komercyjną, bez umów na wyłączność i uprzywilejowanego dostępu dla darczyńców. Dostęp do celów treningowych nie musi oznaczać nieograniczonej redystrybucji chronionych książek. Autorzy powinni współtworzyć ten publiczny system, w tym sposób, w jaki podchodzi on do zgody, wynagrodzenia i konkurencji z ich twórczością. Darmowy dostęp dla użytkowników nie musi wykluczać finansowanego ze środków publicznych wynagrodzenia dla autorów.
– brytyjski system, który wypłaca autorom wynagrodzenie z funduszy publicznych za wypożyczenia ich książek – stanowi jeden z precedensów. Stos nigdy nie był tematem. Tematem jest płot.&lt;/p&gt;</description></item><item><title>Drodzy redaktorzy: jeśli chcecie mojego głosu, oddajcie mi mój język</title><link>https://clementgodbarge.com/pl/post/dear-editors/</link><pubDate>Thu, 27 Aug 2026 00:00:00 +0000</pubDate><guid>https://clementgodbarge.com/pl/post/dear-editors/</guid><description>&lt;p&gt;Nie ma dnia, żeby jakieś czasopismo nie obwieściło z fanfarami swojej polityki wobec AI. Tym razem padło na &lt;em&gt;Progress in Human Geography&lt;/em&gt;, którego redaktorzy opublikowali
ostrzegające, że posługiwanie się AI zamiast własnej lektury, własnego myślenia i własnego pisania jest „naruszeniem etyki akademickiej pokrewnym plagiatowi”. Artykuły, którym dowiedzie się takiego naruszenia, „mogą zostać wycofane”; w najlepszym razie zostaną poprawione, a czasopismo wydrukuje stosowną notę. Autorzy, dodają redaktorzy, powinni „starannie rozważyć, czy chcą, by ich nazwiska kojarzono z wycofaniami i notami korygującymi”.&lt;/p&gt;
&lt;p&gt;Zatrzymajmy się na chwilę przy tym zdaniu. Wycofanie artykułu to najwyższy stopień w hierarchii sankcji wydawnictw naukowych – kara zarezerwowana normalnie dla fabrykowania danych i oszustwa. Tu przypisano ją wykroczeniu, którego ten sam artykuł redakcyjny nie potrafi zdefiniować. Istnieją, przyznają redaktorzy, „prawdziwe szare strefy” i „nie ma wyraźnych linii wyznaczających strefę «nieodpowiedzialności»”. Egzekwowanie oprze się na „ocenach uznaniowych, które mogą zirytować niektórych autorów, twierdzących, że nie nadużyli AI” – innymi słowy, własne oświadczenie autora może zostać unieważnione. Rada, jaka po tym następuje, brzmi: pozostać „bezpiecznie w strefie «odpowiedzialności»”; a bezpieczeństwo zaleca się tylko tam, gdzie grozi niebezpieczeństwo. Karanie ludzi za przekroczenie linii, której – jak się samemu przyznaje – nie umie się wytyczyć, ma sens tylko wtedy, gdy celem jest rządzenie strachem. Zachowajmy tę myśl na później.&lt;/p&gt;
&lt;h2 id="pretekst-głosu"&gt;Pretekst głosu&lt;/h2&gt;
&lt;p&gt;Jak wygląda odpowiedzialne użycie? Autorom mówi się: „należy dołożyć wielkiej staranności&amp;hellip; by zachować własny głos”. Nadużyciem jest sięganie po AI, „by pisać w języku, którym autorzy sami normalnie nigdy by się nie posłużyli”. Dla rodzimego użytkownika języka to ma sens: nie udawaj kogoś, kim nie jesteś. Ale dla cudzoziemców, którzy muszą pisać w nie swoim języku, ten nakaz sam sobie przeczy. Głos, który polityka ta chroni, jest właśnie tym, czego własne reguły czasopisma nam odmawiają.&lt;/p&gt;
&lt;p&gt;Weźmy mnie jako przypadek testowy. Angielski to mój czwarty język – dokładnie taki, którym „normalnie” nigdy bym się nie posłużył. Anglojęzyczne uniwersytety wyćwiczyły mnie w pisaniu po angielsku krótko, z drogowskazami, niemal mechanicznie: zdanie tematyczne na początku, asekuracyjne zastrzeżenia w przepisowych miejscach, spójniki z zatwierdzonej listy. Trening zadziałał: w mojej angielszczyźnie nigdy nie było żadnego głosu do ochrony; głos był pierwszą rzeczą, którą trzeba było wyrugować. Wedle definicji samych redaktorów wszystko, co kiedykolwiek napisałem po angielsku, byłoby użyciem niewłaściwym – z maszyną czy bez.&lt;/p&gt;
&lt;h2 id="między-młotem-a-kowadłem"&gt;Między młotem a kowadłem&lt;/h2&gt;
&lt;p&gt;Redaktorzy zapewniają, że o nas pomyśleli: polityka uznaje, że osoby, dla których angielski nie jest językiem ojczystym, korzystają na tym, że AI sprawdza ich angielski, a nawet na jej „usługach translatorskich, pisarskich i redakcyjnych”. A jednak udział AI w pisaniu „powinien się sprowadzać co najwyżej do pomocy w redakcji i korekcie” i nie może sięgać „dużych fragmentów tekstu napisanego przez AI”. Artykuł przetłumaczony maszynowo jest napisany przez AI od pierwszego do ostatniego słowa; to nic innego jak takie fragmenty. Ustępstwo ostaje się więc tylko pod warunkiem, że tłumaczenie nie jest pisaniem. Gdzie przebiega ta granica? Już nam powiedzieli: „nie ma wyraźnych linii”.&lt;/p&gt;
&lt;p&gt;Gorzej: to podejrzenie jest nie tylko nie do obalenia. Ono gra znaczonymi kartami. W 2023 r. zespół ze Stanfordu przetestował siedem powszechnie używanych detektorów AI na esejach napisanych przez ludzi: detektory oznaczyły średnio 61% esejów TOEFL autorstwa osób nierodzimych jako wygenerowane maszynowo, niemal bezbłędnie klasyfikując zarazem eseje rodzimych użytkowników; jeden z detektorów oznaczył 97,8% zestawu TOEFL (
). Powód jest pouczający. Detektory mierzą przewidywalność, a angielszczyzna drugiego języka, trenowana ku średniej, jest przewidywalna z założenia: najbardziej prawdopodobne słowo w najbardziej prawdopodobnym porządku. To samo badanie wykryło ów sygnał w prawdziwej nauce – mniejszą zmienność językową w referatach konferencyjnych, których pierwsi autorzy nie są rodzimymi użytkownikami angielskiego. Cechy stylistyczne, które czyta się jako „AI”, to cechy kompetentnej angielszczyzny drugiego języka, a ludzka ocena uznaniowa odczytuje te same sygnały co maszyna. Młot i kowadło są na miejscu: piszę własną angielszczyzną i wyglądam na maszynę; sięgam po maszynę i łamię ich regułę.&lt;/p&gt;
&lt;h2 id="podatek-językowy"&gt;Podatek językowy&lt;/h2&gt;
&lt;p&gt;Paradoks byłby niegroźny, gdyby nie towarzyszyły mu groźby. Groźby te odsłaniają jednak głębszy, starszy problem, którego polityka nigdy nie nazywa po imieniu: jednojęzyczność.
proszą o „możliwie najszerszy zasięg międzynarodowy”, podczas gdy na tej samej stronie czytamy, że „językiem czasopisma jest angielski”.&lt;/p&gt;
&lt;p&gt;Koszt tego układu nie jest hipotetyczny. Ankietując 908 badaczy środowiska, Amano i współpracownicy ustalili, że osoby, dla których angielski nie jest językiem ojczystym, poświęcają na napisanie artykułu do 51% więcej czasu, 2,5 razy częściej doświadczają jego odrzucenia i 12,5 razy częściej są proszone o poprawki – wyłącznie z powodów językowych (
). Ten podatek pobiera się, zanim jakakolwiek polityka AI wejdzie w życie; formularz oświadczenia i towarzyszące mu groźby to audyt dołożony na wierzch.&lt;/p&gt;
&lt;h2 id="fin-dempire"&gt;Fin d’empire&lt;/h2&gt;
&lt;p&gt;Jednojęzyczność to aksjomat, o którym nikt nie dyskutuje. To spadek po imperium, który z czasem zyskał praktyczne uzasadnienie: tłumaczenie było powolne i kosztowne, a żadna redakcja nie mogła ocenić tego, czego nie umiała przeczytać. Nic z tego nie przetrwa jednak postępów tłumaczenia maszynowego. Najnowsze systemy tłumaczenia maszynowego mogą posłużyć za niezawodną warstwę pośredniczącą między autorami a redaktorami.&lt;/p&gt;
&lt;p&gt;Idealne wyjście jest ludzkie: badacze powinni czytać w więcej niż jednym języku. Tymczasem anglojęzyczne uniwersytety wolą zamykać instytuty języków nowożytnych. Zauważmy, że te zamknięcia to zjawisko angloamerykańskie: badacze gdzie indziej nigdy nie mogli sobie pozwolić na luksus jednojęzyczności. I zauważmy moment. Zamknąć instytut języków to postawić zakład: że angielski wygrał na dobre i że nic wartego lektury nie zostanie już nigdy napisane w żadnym innym języku. Zakład ten stawia się w najgorszym możliwym momencie – i to z dwóch powodów. Po pierwsze dlatego, że tłumaczenie maszynowe po raz pierwszy pozwala obejść się bez lingua franca w ogóle; po drugie dlatego, że porządek, który uczynił angielski domyślnym, cofa się: anglosfera zwraca się do wewnątrz, globalizacja odpływa, wolny handel jest kwestionowany w samych swoich ojczyznach, a kształtuje się świat wielobiegunowy, w którym języków wartych czytania będzie przybywać. Uniwersytety produkują badaczy czytających wyłącznie po angielsku – na potrzeby świata, w którym angielski nie wystarczy. Redakcje czasopism odziedziczą tę stratę jako pierwsze.&lt;/p&gt;
&lt;h2 id="test-dla-redaktorów"&gt;Test dla redaktorów&lt;/h2&gt;
&lt;p&gt;Kiedy redakcja ubolewa, że nie słyszy własnego głosu swoich autorów, być może część problemu leży po stronie samej redakcji.&lt;/p&gt;
&lt;p&gt;To poważny zarzut i idzie z nim w parze poważny test. Czy &lt;em&gt;Progress in Human Geography&lt;/em&gt; skierowałoby do recenzji tekst napisany po francusku, włosku lub japońsku, z dołączoną maszynowo przetłumaczoną wersją angielską? Własne wytyczne czasopisma uznają „usługi translatorskie”, które to umożliwiają. „Tak” kończy problem. „Nie” powiedziałoby nam, co ta polityka naprawdę chroni.&lt;/p&gt;
&lt;p&gt;Tak czy inaczej, wybór należy do redaktorów. Jeśli głos się liczy, jak twierdzą, czasopismo powinno przyjmować artykuły w językach, w których autorzy myślą. Jeśli nie, formularz oświadczenia powinien zniknąć – a wraz z nim groźby.&lt;/p&gt;</description></item><item><title>tei-mcp v0.3: kodowanie TEI bez przepisywania źródła</title><link>https://clementgodbarge.com/pl/post/tei-mcp-span-locked/</link><pubDate>Tue, 05 May 2026 00:00:00 +0000</pubDate><guid>https://clementgodbarge.com/pl/post/tei-mcp-span-locked/</guid><description>&lt;p&gt;Kiedy
, celem było
powstrzymanie asystentów AI przed halucynowaniem znakowania TEI. Osadzenie
w schemacie rozwiązało część problemu: mając bezpośredni, oparty na narzędziach
dostęp do specyfikacji P5, model nie musi już zgadywać, co znaczy dany element
ani jakie atrybuty przyjmuje. Wynik przechodzi walidację.&lt;/p&gt;
&lt;p&gt;Ale halucynacja w kodowaniu TEI ma dwa oblicza, a schemat wyłapuje tylko jedno
z nich. Walidacja względem specyfikacji mówi, że &lt;em&gt;znakowanie&lt;/em&gt; jest poprawne.
Nie mówi nic o &lt;em&gt;tekście&lt;/em&gt;, który to znakowanie obejmuje. A właśnie tam –
w samym tekście – gnieżdżą się groźniejsze halucynacje. Kompozycja z blokadą
zakresów (span-locked composition), główna nowość w v0.3, została
zaprojektowana właśnie po to, by im zapobiegać.&lt;/p&gt;
&lt;details class="print:hidden xl:hidden" &gt;
&lt;summary&gt;Spis treści&lt;/summary&gt;
&lt;div class="text-sm"&gt;
&lt;nav id="TableOfContents"&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="#halucynacja-której-schemat-nie-wyłapie"&gt;Halucynacja, której schemat nie wyłapie&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="#kompozycja-z-blokadą-zakresów"&gt;Kompozycja z blokadą zakresów&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="#czym-to-jest-a-czym-nie-jest"&gt;Czym to jest, a czym nie jest&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="#dlaczego-to-ważne-poza-tei"&gt;Dlaczego to ważne poza TEI&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="#jak-pobrać-aktualizację"&gt;Jak pobrać aktualizację&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/nav&gt;
&lt;/div&gt;
&lt;/details&gt;
&lt;h2 id="halucynacja-której-schemat-nie-wyłapie"&gt;Halucynacja, której schemat nie wyłapie&lt;/h2&gt;
&lt;p&gt;Poproś model o zakodowanie szesnastowiecznego francuskiego listu, a często
dostaniesz z powrotem dokument TEI, który wygląda nienagannie. Nagłówek
wypełniony, znaczniki &lt;code&gt;&amp;lt;persName&amp;gt;&lt;/code&gt; na swoich miejscach, &lt;code&gt;&amp;lt;dateline&amp;gt;&lt;/code&gt; poprawnie
zbudowany. Przepuść go przez &lt;code&gt;validate_document&lt;/code&gt; – przejdzie.&lt;/p&gt;
&lt;p&gt;Potem porównaj tekst główny ze źródłem.&lt;/p&gt;
&lt;p&gt;&lt;code&gt;mesme&lt;/code&gt; stało się &lt;code&gt;même&lt;/code&gt;. Przecinek się przesunął. &lt;code&gt;luy&lt;/code&gt; po cichu
zmodernizowano na &lt;code&gt;lui&lt;/code&gt;. Zdanie trudne do odczytania w rękopisie zostało
„poprawione” na coś gładszego. Żadnej z tych zmian nikt nie zlecił. Żadna nie
została oznaczona. Dokument jest zgodny ze schematem i po cichu błędny.&lt;/p&gt;
&lt;p&gt;W pracy archiwalnej – gdzie zakodowany tekst staje się trwałym zapisem, na
którym polegają czytelnicy, indeksy wyszukiwania i cytowania – to właśnie ten
rodzaj awarii liczy się najbardziej. Zniekształcony znacznik irytuje.
Zmodernizowana pisownia, której nikt nie zauważy przez pięć lat, to skażenie
tekstu.&lt;/p&gt;
&lt;h2 id="kompozycja-z-blokadą-zakresów"&gt;Kompozycja z blokadą zakresów&lt;/h2&gt;
&lt;p&gt;Nowe wydanie (v0.3) zawiera mechanizm zapobiegania halucynacjom wycelowany
dokładnie w ten rodzaj awarii. Cel projektowy: sprawić, by halucynacje
w tekście głównym były niemożliwe z samej konstrukcji, a nie tylko mało
prawdopodobne.&lt;/p&gt;
&lt;p&gt;Pomysł jest prosty: &lt;strong&gt;model nigdy nie wpisuje tekstu głównego&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;Zamiast tego przebieg pracy wygląda tak:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Model wywołuje &lt;code&gt;get_source(&amp;quot;letter_001&amp;quot;)&lt;/code&gt; i otrzymuje źródłowy czysty tekst
jako niezmienny ciąg znaków.&lt;/li&gt;
&lt;li&gt;Dla każdego znacznika, który chce zastosować, wywołuje
&lt;code&gt;tag_span(&amp;quot;letter_001&amp;quot;, start, end, element_path, attrs)&lt;/code&gt; – rejestrując
element TEI na zakresie znaków w źródle.&lt;/li&gt;
&lt;li&gt;Gdy skończy, wywołuje &lt;code&gt;compose(&amp;quot;letter_001&amp;quot;)&lt;/code&gt;. Serwer przeplata
zarejestrowane znaczniki z pierwotnym czystym tekstem, renderuje końcowy
dokument TEI, a następnie sprawdza &lt;em&gt;bajt po bajcie&lt;/em&gt;, czy płaska zawartość
tekstowa wyrenderowanego dokumentu jest równa źródłu.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;Jeśli bajty się zgadzają, dokument wraca. Jeśli nie – jeśli znaczniki modelu
w jakiś sposób implikują tekst główny różniący się od źródła choćby jednym
znakiem – &lt;code&gt;compose()&lt;/code&gt; zgłasza wyjątek, zamiast zwracać skażony dokument.&lt;/p&gt;
&lt;p&gt;W tym przebiegu nie ma ścieżki, na której model wyprodukowałby dokument TEI
z tekstem głównym różnym od źródła. Ten niezmiennik jest mechaniczny, nie
behawioralny. Nie musisz ufać, że model nie halucynuje; musisz ufać
porównaniu &lt;code&gt;==&lt;/code&gt; dwóch ciągów bajtów.&lt;/p&gt;
&lt;h2 id="czym-to-jest-a-czym-nie-jest"&gt;Czym to jest, a czym nie jest&lt;/h2&gt;
&lt;p&gt;Kompozycja z blokadą zakresów jest &lt;strong&gt;uzupełnieniem&lt;/strong&gt; osadzenia w schemacie,
nie jego zamiennikiem. Narzędzia osadzające w schemacie (&lt;code&gt;validate_document&lt;/code&gt;,
&lt;code&gt;lookup_element&lt;/code&gt;, &lt;code&gt;valid_children&lt;/code&gt; i reszta pierwotnej szesnastki) pomagają
modelowi wytwarzać &lt;em&gt;poprawne&lt;/em&gt; TEI. Kompozycja z blokadą zakresów gwarantuje,
że tekst główny wewnątrz tego TEI jest &lt;em&gt;wierny&lt;/em&gt; źródłu. Przebieg kodowania
nadający się do wdrożenia musi spełniać oba warunki – i teraz oba pokrywa
jeden serwer.&lt;/p&gt;
&lt;p&gt;Nie jest to też magiczne lekarstwo na wszystko. &lt;code&gt;compose()&lt;/code&gt; nie sprawdza
jeszcze, czy zarejestrowane znaczniki są dopuszczalne wedle wczytanego
dostosowania ODD – to zadanie na później. Zarejestrowane znaczniki żyją
w pamięci procesu i nie przetrwają restartu. A pliki źródłowe muszą być
czytelne z miejsca, w którym działa serwer. Wszystko to da się rozwiązać;
nic z tego nie podważa głównego niezmiennika.&lt;/p&gt;
&lt;h2 id="dlaczego-to-ważne-poza-tei"&gt;Dlaczego to ważne poza TEI&lt;/h2&gt;
&lt;p&gt;Ten wzorzec się uogólnia. Zawsze, gdy model ma adnotować, przekształcać lub
obudowywać fragment tekstu – i zawsze, gdy integralność tekstu bazowego liczy
się bardziej niż zdolność modelu do jego „ulepszania” – stosuje się ten sam
kształt rozwiązania. Nie każ modelowi przepisywać tekstu. Każ mu wytwarzać
instrukcje nad tekstem, a deterministycznemu kompozytorowi pozwól je
zastosować pod niezmiennikiem równości.&lt;/p&gt;
&lt;p&gt;Dla edycji cyfrowych w szczególności zmienia to zakres tego, co można
odpowiedzialnie zlecić modelowi. Kodowanie staje się nagle zadaniem, które
można delegować bez ręcznego porównywania każdego wyniku ze źródłem. Maszyna
idzie nudną ścieżką; edytor sprawdza znakowanie, nie pisownię.&lt;/p&gt;
&lt;h2 id="jak-pobrać-aktualizację"&gt;Jak pobrać aktualizację&lt;/h2&gt;
&lt;p&gt;Jeśli masz już zainstalowany tei-mcp:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;uvx tei-mcp@latest
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Albo od zera:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;pip install tei-mcp
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Aby korzystać z kompozycji z blokadą zakresów, wskaż serwerowi katalog
z plikami źródłowymi w postaci czystego tekstu:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="nb"&gt;export&lt;/span&gt; &lt;span class="nv"&gt;TEI_MCP_SPAN_SOURCE_ROOT&lt;/span&gt;&lt;span class="o"&gt;=&lt;/span&gt;/path/to/sources
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;uvx tei-mcp
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Rdzeń nazwy każdego pliku staje się identyfikatorem dokumentu (&lt;code&gt;letter_001.txt&lt;/code&gt; →
&lt;code&gt;letter_001&lt;/code&gt;).&lt;/p&gt;
&lt;p&gt;Kod źródłowy, pełna dokumentacja i notatki projektowe dotyczące niezmiennika:
&lt;/p&gt;</description></item><item><title>tei-mcp</title><link>https://clementgodbarge.com/pl/code/tei-mcp/</link><pubDate>Sun, 15 Mar 2026 00:00:00 +0000</pubDate><guid>https://clementgodbarge.com/pl/code/tei-mcp/</guid><description>&lt;h2 id="tei-mcp-tei-p5-dla-agentów-ai"&gt;tei-mcp: TEI P5 dla agentów AI&lt;/h2&gt;
&lt;p&gt;tei-mcp to serwer
open source, który daje asystentom AI do kodowania bezpośredni dostęp do specyfikacji
. Zamiast polegać na zapamiętanych danych treningowych – co często daje znakowanie wiarygodne z pozoru, lecz błędne – AI może odpytywać specyfikację w czasie rzeczywistym.&lt;/p&gt;
&lt;h2 id="funkcje"&gt;Funkcje&lt;/h2&gt;
&lt;p&gt;Serwer parsuje ODD TEI P5 i udostępnia 16 narzędzi:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Wyszukiwanie&lt;/strong&gt; dowolnego elementu, klasy, makra lub modułu po nazwie, bez rozróżniania wielkości liter i z podpowiedziami przy literówkach&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Rozwiązywanie atrybutów&lt;/strong&gt; w całej hierarchii klas TEI (lokalne + dziedziczone)&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Rozwijanie modeli zawartości&lt;/strong&gt; w ustrukturyzowane drzewa, z rozwiązywaniem klas i makr&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Sprawdzanie zagnieżdżeń&lt;/strong&gt; – bezpośrednia relacja rodzic–dziecko lub rekurencyjna osiągalność ze śledzeniem ścieżki&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Walidacja dokumentów&lt;/strong&gt; względem TEI P5: modele zawartości, atrybuty, zamknięte listy wartości, spójność odwołań i ostrzeżenia o elementach przestarzałych&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Walidacja pojedynczych elementów&lt;/strong&gt; na potrzeby przyrostowej edycji&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Wczytywanie dostosowań ODD&lt;/strong&gt;, by zawęzić schemat do podzbioru właściwego dla projektu&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Przeszukiwanie&lt;/strong&gt; wszystkich typów encji wyrażeniami regularnymi&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="instalacja"&gt;Instalacja&lt;/h2&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;pip install tei-mcp
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Albo uruchom bezpośrednio:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;uvx tei-mcp
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;h2 id="użycie"&gt;Użycie&lt;/h2&gt;
&lt;p&gt;Dodaj do dowolnego klienta zgodnego z MCP (Claude, Cursor, Windsurf itd.):&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-json" data-lang="json"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="p"&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="nt"&gt;&amp;#34;mcpServers&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="nt"&gt;&amp;#34;tei&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="nt"&gt;&amp;#34;command&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="s2"&gt;&amp;#34;uvx&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="nt"&gt;&amp;#34;args&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="s2"&gt;&amp;#34;tei-mcp&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="p"&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="p"&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="p"&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Kod źródłowy i dokumentację znajdziesz w
.&lt;/p&gt;</description></item><item><title>tei-mcp: TEI P5 dla agentów AI</title><link>https://clementgodbarge.com/pl/post/tei-mcp/</link><pubDate>Sun, 15 Mar 2026 00:00:00 +0000</pubDate><guid>https://clementgodbarge.com/pl/post/tei-mcp/</guid><description>&lt;p&gt;Kto choć raz prosił asystenta AI o napisanie TEI XML, ten zapewne zauważył,
że coś mu nie wychodzi. Elementy pojawiają się tam, gdzie nie powinny.
Atrybuty są zmyślone. Reguły zagnieżdżania – ignorowane. Model ma z grubsza
pojęcie, jak wygląda TEI, ale żadnej pewnej wiedzy o specyfikacji.&lt;/p&gt;
&lt;p&gt;tei-mcp rozwiązuje ten problem, dając agentom AI bezpośredni, oparty na
narzędziach dostęp do wytycznych TEI P5.&lt;/p&gt;
&lt;details class="print:hidden xl:hidden" &gt;
&lt;summary&gt;Spis treści&lt;/summary&gt;
&lt;div class="text-sm"&gt;
&lt;nav id="TableOfContents"&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href="#czym-jest-mcp"&gt;Czym jest MCP?&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="#co-robi-tei-mcp"&gt;Co robi tei-mcp&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="#dlaczego-to-ważne"&gt;Dlaczego to ważne&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="#pierwsze-kroki"&gt;Pierwsze kroki&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/nav&gt;
&lt;/div&gt;
&lt;/details&gt;
&lt;h2 id="czym-jest-mcp"&gt;Czym jest MCP?&lt;/h2&gt;
&lt;p&gt;
(MCP) to otwarty
standard, który pozwala aplikacjom AI łączyć się z zewnętrznymi źródłami danych
i narzędziami. Można o nim myśleć jak o porcie USB dla AI: jeden protokół, dzięki
któremu każdy zgodny klient – Claude, Cursor, Windsurf i inne – może się
podłączyć do wyspecjalizowanych usług.&lt;/p&gt;
&lt;p&gt;Serwer MCP udostępnia &lt;em&gt;narzędzia&lt;/em&gt;, które AI może wywoływać w trakcie rozmowy.
Zamiast polegać na zapamiętanych danych treningowych, model może odpytać żywe,
miarodajne źródło.&lt;/p&gt;
&lt;h2 id="co-robi-tei-mcp"&gt;Co robi tei-mcp&lt;/h2&gt;
&lt;p&gt;tei-mcp parsuje specyfikację ODD TEI P5 i udostępnia 16 narzędzi, które
odpowiadają na najczęstsze pytania edytora czy kodera:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Co to za element?&lt;/strong&gt; Wyszukaj dowolny element, klasę, makro lub moduł po
nazwie, bez rozróżniania wielkości liter i z podpowiedziami przy literówkach.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Jakie przyjmuje atrybuty?&lt;/strong&gt; Rozwiąż atrybuty w całej hierarchii klas –
najpierw lokalne, potem po kolei dziedziczone.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Co może się w nim znaleźć?&lt;/strong&gt; Rozwiń modele zawartości w ustrukturyzowane
drzewa albo pobierz płaską listę dopuszczalnych dzieci.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Czy ten element może tu stać?&lt;/strong&gt; Sprawdź zagnieżdżenie rodzic–dziecko albo
prześledź osiągalność w całej hierarchii elementów.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Czy mój dokument jest poprawny?&lt;/strong&gt; Zwaliduj plik TEI XML względem
specyfikacji: modele zawartości, wartości atrybutów, zamknięte listy wartości,
spójność odwołań i ostrzeżenia o elementach przestarzałych.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;A co z moim schematem projektowym?&lt;/strong&gt; Wczytaj plik dostosowania ODD, by
zawęzić wszystko powyższe do podzbioru TEI właściwego dla twojego projektu.&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id="dlaczego-to-ważne"&gt;Dlaczego to ważne&lt;/h2&gt;
&lt;p&gt;Kodowanie w TEI wymaga ciągłego zaglądania do wytycznych. Doświadczeni koderzy
mają najczęstsze wzorce w małym palcu, ale nawet oni muszą sprawdzać w
specyfikacji mniej znane elementy czy złożone modele zawartości. Dla asystentów
AI, które takiej przyswojonej wiedzy nie mają, problem jest poważniejszy:
halucynują znakowanie, które wygląda wiarygodnie, ale jest błędne.&lt;/p&gt;
&lt;p&gt;Z tei-mcp AI nie musi zgadywać. Może sprawdzić odpowiedź w specyfikacji, zanim
napisze choćby jeden nawias ostry. W rezultacie powstaje znakowanie zgodne
z TEI P5 – albo z dostosowaniem ODD twojego projektu.&lt;/p&gt;
&lt;h2 id="pierwsze-kroki"&gt;Pierwsze kroki&lt;/h2&gt;
&lt;p&gt;Zainstaluj z PyPI:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-bash" data-lang="bash"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;pip install tei-mcp
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Następnie dodaj go do konfiguracji swojego klienta MCP:&lt;/p&gt;
&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-json" data-lang="json"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="p"&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="nt"&gt;&amp;#34;mcpServers&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="nt"&gt;&amp;#34;tei&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="p"&gt;{&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="nt"&gt;&amp;#34;command&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="s2"&gt;&amp;#34;uvx&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;,&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="nt"&gt;&amp;#34;args&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;:&lt;/span&gt; &lt;span class="p"&gt;[&lt;/span&gt;&lt;span class="s2"&gt;&amp;#34;tei-mcp&amp;#34;&lt;/span&gt;&lt;span class="p"&gt;]&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="p"&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; &lt;span class="p"&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt;&lt;span class="p"&gt;}&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;Serwer pobiera specyfikację TEI przy pierwszym uruchomieniu i współpracuje
z każdym klientem zgodnym z MCP.&lt;/p&gt;
&lt;p&gt;Kod źródłowy i pełna dokumentacja:
&lt;/p&gt;</description></item></channel></rss>