Bezpłatny dostęp

Benchmark getName.ai 11.2026. Klasyfikacja ETIM z wynikiem F1 93,8%

06.11.2026
Tomasz Grzywacz
CEO Robokat

Klienci prawie zawsze pytają nas o to samo: jaka jest skuteczność getName.ai i jakiej jakości wartości atrybutów zwraca. Uczciwa odpowiedź nie jest prosta i, jak zwykle w takich sytuacjach, zaczyna się od „to zależy”. Od tego, co jest w opisie produktu, od klasyfikacji, od rodzaju atrybutu.

Postanowiliśmy się z tym pytaniem zmierzyć. Przygotowaliśmy test, który sprawdza jakość tak obiektywnie, jak tylko potrafiliśmy, i poddajemy go ocenie każdego, kto zechce. Opisy, idealną odpowiedź, każdą ocenioną wartość i pełne statystyki udostępniamy do pobrania na końcu artykułu, więc każdy może sprawdzić wynik albo powtórzyć test. To pierwsze wydanie getName.ai Quality Benchmark. Będziemy go powtarzać, a kolejne wydania porównamy z tym.

W klasyfikacji ETIM getName.ai uzupełnia atrybuty na podstawie opisu produktu z jakością 93,8%. W Amazonie jakość wyniosła 93,1%, a w Kauflandzie 91,7%. Tyle wyszło w teście na 100 produktach z 17 kategorii, z opisami po polsku, niemiecku i angielsku.

Jakość liczymy miarą F1, standardową w ocenie wydobywania informacji z tekstu. Łączy ona precyzję, czyli to, ile z wpisanych wartości jest prawdą, z pokryciem, czyli tym, ile wartości wynikających z opisu API wpisało. Pusta odpowiedź ma jakość 0%, a idealna 100%.

Jakość 93,8% nie znaczy, że 93,8% kart produktów jest gotowych bez poprawek. Znaczy, że odpowiedzi API zgadzają się z idealną odpowiedzią w takim stopniu, licząc razem wartości pominięte i wpisane błędnie. Test nie mierzy czasu ani kosztu pracy i nie porównuje API z człowiekiem.

Poniżej opisujemy, dlaczego taki pomiar jest trudny, jak liczyliśmy wynik, gdzie API się myli i od czego zależy jakość.

Wyniki w skrócie

Jakość odpowiedzi API według klasyfikacji: ETIM v10 93,8% (precyzja 93,9%, pokrycie 93,7%), Amazon 93,1% (precyzja 92,6%, pokrycie 93,7%), Kaufland 91,7% (precyzja 92,0%, pokrycie 91,3%)
  • Jakość według klasyfikacji: ETIM 93,8%, Amazon 93,1%, Kaufland 91,7%.
  • Precyzja i pokrycie są blisko siebie: w ETIM 93,9% i 93,7%, w Amazonie 92,6% i 93,7%, w Kauflandzie 92,0% i 91,3%. W ETIM i Kauflandzie API częściej pomija wartość, niż wpisuje złą, a w Amazonie odwrotnie.
  • Wartości podane w opisie wprost API wpisuje z pokryciem od 96,0% w Kauflandzie do 98,0% w ETIM. Wartości, które trzeba z opisu wywnioskować, wpisuje rzadziej (79,7%). Najczęściej pomija wywnioskowane cechy tak/nie, np. to, że czajnik jest bezprzewodowy.
  • Język opisu ma małe znaczenie: od 92,6% dla polskiego do 93,8% dla angielskiego.
  • Mediana jakości pojedynczej odpowiedzi: ETIM 95,2%, Amazon 94,0%, Kaufland 92,3%.

Dlaczego taki pomiar jest trudny

Wynik zależy od opisu, a nie tylko od API. API może wpisać tylko to, co jest w opisie. Krótka oferta w trzech zdaniach podaje mniej cech niż karta techniczna, więc i API może z niej wpisać mniej. Gdyby test liczył, ile atrybutów klasy zostało wypełnionych, mierzyłby opis, a nie API. Dlatego dla każdego opisu przygotowaliśmy osobno idealną odpowiedź, czyli wzorzec: komplet wartości atrybutów, które wynikają z tego opisu. We wszystkich opisach było ich 7994 i z nimi porównaliśmy odpowiedzi API. Nazywamy je wartościami wymaganymi: skoro opis je daje, API powinno je wpisać. „Wymagana” nie znaczy tu obowiązkowa w klasyfikacji ani w marketplace.

Nie wszystko jest zapisane wprost. Czajnik, który „wyłącza się po zdjęciu z podstawy”, jest bezprzewodowy, choć to słowo w opisie nie pada. Produkt sprzedawany pojedynczo ma liczbę sztuk 1. Ale wymiary „410 × 230 × 195 mm” bez oznaczenia osi nie mówią, który z nich jest szerokością. Granicę między pewnym wnioskiem a przypuszczeniem wyznaczaliśmy dla każdej takiej wartości osobno.

To samo pole znaczy co innego w różnych klasyfikacjach. „Powierzchnia użytkowa” na polskim i niemieckim Amazonie to powierzchnia zajmowana przez produkt, a na brytyjskim powierzchnia pomieszczenia, którą obsługuje oczyszczacz powietrza. Ocena musi znać znaczenie pola, a nie tylko jego nazwę.

Wzorzec to ideał, a nie człowiek. Idealną odpowiedź przygotowaliśmy bez pośpiechu i sprawdzaliśmy ją wiele razy. Nikt nie uzupełnia tak kart produktów na co dzień. Właściwym punktem odniesienia byłby człowiek, który robi tę samą pracę w realnych warunkach: po kilku godzinach powtarzalnej pracy, ze zmęczeniem i znużeniem, które wtedy przychodzą, i często bez głębokiej wiedzy o branży, z której pochodzi produkt. Nikt nie powiedział, że uzupełniłby atrybuty z jakością 100%. Takiego pomiaru jeszcze nie mamy, więc wynik w tym artykule mówi, ile API brakuje do ideału, a nie do człowieka.

Co sprawdzaliśmy

getName.ai dostaje opis produktu i klasę w wybranej klasyfikacji. Zwraca wartości atrybutów tej klasy w formacie klasyfikacji: wartości ze słownika, liczby w jednostce pola, tak/nie, zakresy i tekst. Test dotyczył właśnie tego kroku. Klasę podawaliśmy z góry, więc rozpoznawania klasy ten test nie mierzy.

Opis i klasyfikacja były zawsze w tym samym języku:

język opisu ETIM v10 Amazon Kaufland
polski ETIM v10 PL Amazon PL Kaufland PL
niemiecki ETIM v10 DE Amazon DE Kaufland DE
angielski ETIM v10 EN Amazon UK -

Kaufland nie ma wersji angielskiej, dlatego opisy angielskie trafiły tylko do ETIM i Amazonu. Każde zapytanie to jeden opis i jedna klasa. Test objął 672 zapytania do API:

klasyfikacja produkty języki zapytania
ETIM v10 66 polski, niemiecki, angielski 198
Amazon 96 polski, niemiecki, angielski 288
Kaufland 93 polski, niemiecki 186
razem 672

Liczba produktów jest różna, bo ocenialiśmy tylko produkty, do których klasa na pewno pasuje (więcej w zasadach wzorca niżej). Odpowiedzi API dały 10 703 ocenionych pozycji, czyli wartości ze wzorca i wartości zwróconych przez API. Mediana czasu jednego wywołania to 3,2 sekundy, a 90% wywołań trwało krócej niż 6,5 sekundy.

Zapytania do ETIM i Kauflandu wysłaliśmy 24 października 2026 r., a do Amazonu 6 listopada.

Jak liczymy wynik: przykład czajnika

Opis w stylu wypunktowań:

Czajnik elektryczny Bosch DesignLine TWK3P420 – stal szlachetna / czarny, 1,7 l, 2400 W

• Szybkie gotowanie dzięki mocy 2400 W i zakrytej płaskiej grzałce – wnętrze łatwo utrzymać w czystości
• Pojemność 1,7 l (minimalne napełnienie 0,5 l), czytelny wskaźnik poziomu wody na zewnątrz obudowy
• Obudowa ze szczotkowanej stali szlachetnej z powłoką chroniącą przed odciskami palców, czarne elementy uchwytu i podstawy
• Wyjmowany filtr antywapienny w dzióbku – w filiżance nie ma drobinek kamienia
• Bezpieczeństwo: automatyczne wyłączenie po zagotowaniu, wyłączenie po zdjęciu z podstawy, zabezpieczenie przed włączeniem bez wody
• Pokrywa otwierana przyciskiem, szeroki otwór do napełniania i czyszczenia, lampka kontrolna włączenia
• Bez regulacji temperatury i bez funkcji podtrzymywania ciepła

Dane techniczne: napięcie 220–240 V, 50/60 Hz
• długość przewodu 75 cm
• wymiary (wys. × szer. × gł.) 27,5 × 21,6 × 15 cm
• waga 1,2 kg

Idealna odpowiedź dla klasy czajnika w ETIM ma 15 wartości. Tak wypadło porównanie z odpowiedzią API na polski opis:

atrybut ETIM typ atrybutu jednostka idealna odpowiedź odpowiedź API ocena
Pojemność liczba dziesiętna l 1,7 1,7 poprawna
Moc znamionowa liczba dziesiętna W 2400 2400 poprawna
Zakres napięcia zakres V 220-240 220-240 poprawna
Szerokość liczba dziesiętna mm 216 216 poprawna, przeliczone z 21,6 cm
Wysokość liczba dziesiętna mm 275 275 poprawna
Głębokość liczba dziesiętna mm 150 150 poprawna
Grzałka słownik, jedna wartość brak zakryta zakryta poprawna
Wskaźnik poziomu wody słownik, jedna wartość brak zewnętrzny zewnętrzny poprawna
Kolor podstawowy słownik, jedna wartość brak stal szlachetna stal szlachetna poprawna
Filtr wody tak/nie brak tak tak poprawna
Z sitem tak/nie brak tak tak poprawna, filtr w dzióbku to sitko
Funkcja zatrzymania gotowania tak/nie brak tak tak poprawna
Z regulatorem temperatury tak/nie brak nie nie poprawna, zaprzeczenie rozpoznane
Bezprzewodowy tak/nie brak tak - czajnik wyłącza się po zdjęciu z podstawy brak wartości brak wartości wymaganej
Przezroczysty tak/nie brak nie - obudowa jest ze stali brak wartości brak wartości wymaganej
Materiał zbiornika słownik, jedna wartość brak brak wartości - opis podaje stal tylko dla obudowy stal szlachetna przypuszczenie
Rachunek jakości dla czajnika w ETIM: idealna odpowiedź ma 15 wartości wymaganych, API zwróciło 14, z czego 13 to trafienia, a jedna to przypuszczenie; precyzja 13/14 = 92,9%, pokrycie 13/15 = 86,7%, jakość 89,7%

Z tego porównania liczymy trzy wskaźniki:

  • trafienia: 13, czyli wartości poprawne;
  • precyzja = trafienia / wartości zwrócone = 13 / 14 = 92,9%. API wpisało 14 wartości, a jedna z nich, materiał zbiornika, to przypuszczenie;
  • pokrycie = trafienia / wymagane wartości wzorca = 13 / 15 = 86,7%. API pominęło dwie wartości, które wynikają z opisu;
  • jakość (F1) = 2 × trafienia / (wartości zwrócone + wymagane wartości wzorca) = 2 × 13 / (14 + 15) = 89,7%.

Ten sam opis w pozostałych klasyfikacjach:

klasyfikacja i atrybut typ atrybutu jednostka odpowiedź API ocena
Amazon PL: Kabel [m] tekst brak osobnej, metry podane w nazwie atrybutu 0,75 poprawna, przeliczone z 75 cm
Amazon PL: Wymiary przedmiotu: Dł. x Szer. x Wys. [cm] tekst brak osobnej, centymetry podane w nazwie atrybutu 15 × 21,6 × 27,5 poprawna, kolejność osi dopasowana do atrybutu
Amazon PL: Numer części tekst brak TWK3P420 poprawna, kod modelu z opisu
Kaufland PL: Model tekst brak DesignLine niepełna, nazwa serii zamiast kodu modelu
Kaufland PL: Instrukcje bezpieczeństwa tekst brak automatyczne wyłączenie po zagotowaniu, ... błędna, to funkcje bezpieczeństwa, a nie instrukcje

Jakość odpowiedzi dla tego produktu w Amazonie wyniosła 93,9%, a w Kauflandzie 86,7%. Po angielsku ETIM uzyskał 93,3%, a Amazon 93,5%.

Kategorie oceny

ocena jak liczy się w wyniku kiedy
poprawna trafienie wartość zgodna ze wzorcem albo z wartością alternatywną
niepełna pół trafienia wartość prawdziwa, ale wyraźnie niepełna, np. zakres z jedną granicą
lista częściowo zgodna część trafienia, według zgodności ze wzorcem pole wielokrotnego wyboru, w którym brakuje części elementów wzorca albo jest element błędny lub zgadnięty
brak wartości wymaganej wartość wzorca bez trafienia API pominęło wartość, którą daje opis
przypuszczenie wartość zwrócona bez trafienia wartość typowa albo prawdopodobna, ale nie wynika z opisu z pewnością
błędna wartość zwrócona bez trafienia wartość fałszywa albo niepasująca do znaczenia pola
brak wartości nieobowiązkowej nie liczy się API nie zwróciło wartości, której nie wymagamy
luka we wzorcu nie liczy się API zwróciło wartość spoza wzorca, która według sędziego wynika z opisu

W polu wymaganym wartość błędna albo przypuszczenie liczy się podwójnie: jako wartość zwrócona bez trafienia i jako wartość wzorca bez trafienia. Wartość nieobowiązkowa albo spoza wzorca wpisana poprawnie nie liczy się ani na plus, ani na minus. Przypuszczenie liczymy tak samo jak wartość błędną. Bywa prawdziwe, ale w katalogu wygląda jak fakt, a nikt go nie sprawdził.

Lista dostaje taką część trafienia, w jakiej zgadza się ze wzorcem. Przykład: wzorzec ma materiał [aluminium], a API zwróciło [aluminium, tytan]. Połowa zwróconej listy jest poprawna, a cały wzorzec się w niej mieści, więc trafienie wynosi 0,67.

Wskaźniki

  • Precyzja = trafienia / wartości zwrócone przez API. Mówi, ile z tego, co API wpisało, jest prawdą.
  • Pokrycie = trafienia / wymagane wartości wzorca. Mówi, ile idealnej odpowiedzi API dostarczyło.
  • Jakość = 2 × trafienia / (wartości zwrócone + wymagane wartości wzorca). To miara F1, czyli średnia harmoniczna precyzji i pokrycia.

F1 to standardowa miara w ocenie wydobywania informacji z tekstu i w testach modeli językowych. Tak samo liczy wynik na przykład SimpleQA, test wiedzy faktograficznej modeli językowych przygotowany przez OpenAI. Jakość 100% ma tylko odpowiedź idealna. Pusta odpowiedź i odpowiedź całkiem błędna mają 0%, a wynik nigdy nie spada poniżej zera. Zgadywanie się nie opłaca: wartość, której opis nie daje, obniża precyzję i nie podnosi pokrycia.

Zaokrąglenie wartości do mniejszej liczby cyfr znaczących liczymy jako poprawne, np. 0,353 m zapisane jako 0,35 m. Tak getName.ai zapisuje liczby celowo. W całym teście dotyczyło to 16 wartości.

Kto ocenia

  • Pola strukturalne ocenia skrypt. Porównuje liczby (z tolerancją 0,5%), wartości tak/nie, zakresy i wartości słownikowe. Tu wynik jest jednoznaczny: wartość zgadza się ze wzorcem albo nie.
  • Pola tekstowe i wartości spoza wzorca ocenia sędzia, czyli model językowy Claude Opus 5.5 firmy Anthropic. Sędzia widzi opis i porównuje znaczenie, a nie brzmienie. „Stal szlachetna, czarny” znaczy to samo co „stainless steel / black”. Nie wolno mu korzystać z wiedzy o konkretnym produkcie, a wiedzy ogólnej tylko wtedy, gdy jest prawdziwa dla każdego produktu tego rodzaju. W Amazonie sędzia dostaje też instrukcję Amazonu dla sprzedawców, bo to ona określa znaczenie pola, a nie sama nazwa. Pełny prompt sędziego jest w plikach do pobrania.

Rodzaje błędów

Każdy rodzaj błędu na przykładzie z testu (opisy polskie).

Brak wartości wymaganej

Opis podaje wartość, a API jej nie wpisało.

produkt wiertarko-wkrętarka akumulatorowa
klasyfikacja Kaufland PL
atrybut Liczba obrotów (obr./min)
typ atrybutu liczba dziesiętna
jednostka rpm (obr./min)
fragment opisu „2 biegi: 0–500 / 0–1900 obr./min”
idealna odpowiedź 1900
odpowiedź API brak wartości

Brak wartości wymaganej, wywnioskowanej

Opis nie podaje wartości wprost, ale wynika ona z niego z pewnością, a API jej nie wpisało.

produkt mikser ręczny
klasyfikacja ETIM v10 PL
atrybut Płynna regulacja mocy
typ atrybutu tak/nie
jednostka brak
fragment opisu „4 prędkości + funkcja turbo (pulsacyjna)”
idealna odpowiedź nie - mikser ma cztery stałe prędkości
odpowiedź API brak wartości

Wartość błędna

API wpisało wartość fałszywą albo niepasującą do znaczenia atrybutu.

produkt szlifierka kątowa
klasyfikacja Kaufland PL
atrybut Instrukcje bezpieczeństwa
typ atrybutu tekst
jednostka brak
fragment opisu „funkcja ANTY-RESTART + łagodny rozruch”, „podwójna izolacja”
idealna odpowiedź brak wartości - opis nie podaje instrukcji bezpieczeństwa
odpowiedź API funkcja anty-restart, łagodny rozruch, podwójna izolacja

Opis podaje funkcje bezpieczeństwa, a atrybut dotyczy instrukcji. Wartość jest prawdziwa, ale trafiła do atrybutu o innym znaczeniu.

Przypuszczenie

API wpisało wartość możliwą, która jednak nie wynika z opisu z pewnością.

produkt blender kielichowy
klasyfikacja ETIM v10 PL
atrybuty Wysokość, Szerokość, Głębokość
typ atrybutu liczba dziesiętna (każdy z trzech)
jednostka mm
fragment opisu „wymiary 410 x 230 x 195 mm”
idealna odpowiedź brak wartości - opis nie mówi, który wymiar jest którym
odpowiedź API wysokość 410, szerokość 230, głębokość 195

Błędny element listy

Atrybut przyjmuje kilka wartości ze słownika, a API dodało do poprawnych wartość błędną.

produkt patelnia
klasyfikacja Amazon PL i Kaufland PL
atrybut Materiał
typ atrybutu słownik, wiele wartości (w obu klasyfikacjach)
jednostka brak
fragment opisu „korpus: ALUMINIUM”, „powłoka wew. TYTANOWA nieprzywierająca”
idealna odpowiedź aluminium
odpowiedź API aluminium, tytan

Tytan opis wymienia tylko przy powłoce, a nie jako materiał patelni.

Wartość niepełna

API wpisało wartość prawdziwą, ale wyraźnie niepełną.

produkt wiertarko-wkrętarka akumulatorowa
klasyfikacja Amazon PL
atrybut Typ akumulatora
typ atrybutu tekst
jednostka brak
fragment opisu „18 V”, „2 akumulatory Li-ion BL1830B 3,0 Ah”
idealna odpowiedź Li-ion 18 V 3,0 Ah
odpowiedź API litowo-jonowy

API podało rodzaj akumulatora, ale bez napięcia i pojemności.

Jak często występuje każdy rodzaj błędu

Tak różnica do 100% dzieli się między rodzaje błędów we wszystkich klasyfikacjach:

Udział rodzajów błędów w różnicy do 100%: brak wartości wymaganej 39,5% (440 wartości), przypuszczenie 29,7% (330), wartość błędna 18,2% (176), wartość niepełna 7,3% (133), lista częściowo zgodna 5,3% (124)
rodzaj błędu wartości udział w różnicy do 100%
brak wartości wymaganej 440 39,5%
przypuszczenie 330 29,7%
wartość błędna 176 18,2%
wartość niepełna 133 7,3%
lista niepełna, z błędnym elementem albo z przypuszczeniem 124 5,3%

Liczba wartości i udział w różnicy nie idą w parze, bo rodzaje błędów ważą różnie. Wartość błędna w polu wymaganym liczy się podwójnie: jako wartość zwrócona bez trafienia i jako brakująca wartość wzorca. Wartość niepełna liczy się tylko w polu wymaganym (81 ze 133) i dostaje pół trafienia, a lista traci tylko tę część, w której odbiega od wzorca.

Największą część różnicy dają pominięte wartości wymagane. Trzy czwarte z nich (320 z 440) to wartości wywnioskowane, których opis nie podaje wprost, najczęściej w polach tak/nie, jak płynna regulacja mocy w mikserze z czterema prędkościami. Liczbę sztuk 1 przy produkcie sprzedawanym pojedynczo API wpisuje prawie zawsze: z 849 takich pól w Amazonie (liczba produktów, jednostek, opakowań i ilość w paczce) wypełniło poprawnie 840.

Przypuszczenia i wartości błędne API wpisuje głównie w pola, o których opis nic nie mówi albo których nie wymagamy: tak jest w 477 z 506 przypadków. Wśród 7994 wartości wymaganych API wpisało wartość błędną albo przypuszczenie w 81 przypadkach, w tym w 52 listach z błędnym albo zgadniętym elementem.

Wśród wartości błędnych najczęstsza jest wartość prawdziwa, ale wpisana w pole o innym znaczeniu, jak w przykładzie ze szlifierką: tak jest w 141 z 212 (błędne wartości przypisaliśmy do schematów z pomocą modelu Claude). Inne przykłady: pojemność 75 ml w polu wymiarów, zielony kolor wiązki lasera jako kolor produktu, przekątna ekranu w polu, które na brytyjskim Amazonie oznacza obsługiwane kolory.

Dlaczego jakość zależy od klasyfikacji

klasyfikacja wymagane wartości wzorca jakość pola strukturalne pola tekstowe precyzja pokrycie
ETIM v10 2205 93,8% 93,8% - 93,9% 93,7%
Amazon 4324 93,1% 94,1% 90,6% 92,6% 93,7%
Kaufland 1465 91,7% 93,2% 88,7% 92,0% 91,3%

Ten sam opis daje w każdej klasyfikacji inny zestaw pól. Klasyfikacje różnią się liczbą pól, ich typem i tym, jak często wartość trzeba z opisu wywnioskować, a Kaufland nie dostał opisów angielskich. Różnic w jakości nie należy więc czytać jak porównania w tych samych warunkach: każda klasyfikacja stawia API inne zadanie.

klasyfikacja wartości wzorca na odpowiedź wartości wywnioskowane pola tekstowe jakość
ETIM v10 11,1 11,0% 0% 93,8%
Amazon 15,0 27,8% 27,2% 93,1%
Kaufland 7,9 13,5% 33,3% 91,7%
  • ETIM to klasyfikacja techniczna. Każde pole ma ściśle określone znaczenie, jednostkę albo słownik, a pól tekstowych nie ma wcale. Wartości wywnioskowanych jest tu najmniej. ETIM traci najwięcej na polach tak/nie, w których API pomija cechy wynikające z opisu, i na słownikach, w których czasem wybiera wartość typową, której opis nie podaje.
  • Amazon ma najwięcej pól na produkt, a ponad jedna czwarta wartości jego wzorca jest wywnioskowana, najczęściej liczba sztuk. Takie wartości API wpisuje tu najczęściej: pokrycie wartości wywnioskowanych wynosi w Amazonie 86,9%, w Kauflandzie 61,4%, a w ETIM 58,8%. Nazwy pól są często ogólne, a ich znaczenie określa dopiero instrukcja Amazonu dla sprzedawców. Pominięte wartości wymagane i przypuszczenia dają w Amazonie po około jednej trzeciej różnicy do 100%.
  • Kaufland ma najmniej pól na produkt, ale co trzecie jest tekstowe. Pola tekstowe wypadają w nim słabiej (88,7%) niż strukturalne (93,2%). Wartości błędne dają tu większą część różnicy do 100% niż w pozostałych klasyfikacjach, a 46 z 55 z nich to wartości wpisane w pole o innym znaczeniu, jak „Instrukcje bezpieczeństwa” wypełnione funkcjami bezpieczeństwa.

Jak jakość zależy od typu danych

Jakość według typu atrybutu i klasyfikacji: najwyżej liczby całkowite (Amazon 98,5%, Kaufland 92,0%) i dziesiętne (ETIM 96,1%, Amazon 97,8%, Kaufland 98,5%), najniżej pola tak/nie (ETIM 88,2%, Amazon 81,4%, Kaufland 86,1%)
typ pola ETIM v10 Amazon Kaufland wartości wywnioskowane pokrycie: wartości podane wprost pokrycie: wartości wywnioskowane
liczba całkowita - 98,5% 92,0% 78,8% 97,1% 98,4%
liczba dziesiętna 96,1% 97,8% 98,5% 6,9% 98,8% 82,0%
zakres 93,3% - - 6,2% 100,0% 55,6%
słownik, wiele wartości - 92,2% 94,7% 7,1% 96,2% 52,4%
słownik, jedna wartość 94,3% 89,5% 87,4% 16,9% 98,2% 74,1%
tekst - 90,6% 88,7% 6,5% 93,8% 31,5%
tak/nie 88,2% 81,4% 86,1% 39,2% 95,8% 60,7%

Kolumny ETIM, Amazon i Kaufland to jakość. Kreska oznacza, że klasyfikacja nie ma pól tego typu. Trzy ostatnie kolumny dotyczą wszystkich klasyfikacji razem.

Pokrycie wartości podanych w opisie wprost wynosi w każdym typie atrybutu od 93,8% do 100%, a wartości wywnioskowanych od 31,5% w tekście do 98,4% w liczbach całkowitych; wartości wywnioskowanych jest najwięcej wśród liczb całkowitych (78,8%) i pól tak/nie (39,2%)

Sam typ pola niewiele zmienia. Wartości podane w opisie wprost API wpisuje w każdym typie z pokryciem od 93,8% (tekst) do 100% (zakres). Różnice między typami biorą się z tego, jak często wartość danego typu trzeba z opisu wywnioskować i jak trudny jest ten wniosek. Wymiary, moc i pojemność opis prawie zawsze podaje liczbą, więc liczby dziesiętne wypadają dobrze w każdej klasyfikacji. Liczby całkowite to głównie liczba sztuk, którą opis zwykle pomija, bo jest oczywista. Prawie cztery piąte z nich trzeba wywnioskować, ale to wniosek prosty: przy produkcie sprzedawanym pojedynczo liczba sztuk wynosi 1. API wpisuje ją prawie zawsze, więc liczby całkowite mają najwyższą jakość (98,0%). Pola tak/nie wypadają najsłabiej (86,1%): „bez regulacji temperatury” to wartość podana wprost, ale „bezprzewodowy” trzeba wywnioskować z opisu podstawy, a takie wnioski API wyciąga tylko w 60,7% przypadków.

Rodzaje błędów według typu pola:

typ pola zwrócone wartości poprawne błędne przypuszczenia niepełne brak wartości wymaganej
liczba dziesiętna 2343 97,2%
(2278)
0,9%
(22)
1,8%
(43)
0%
(0)
2,2%
(43 z 1927)
liczba całkowita 1046 98,0%
(1025)
0,7%
(7)
1,3%
(14)
0%
(0)
1,6%
(15 z 963)
tak/nie 724 90,9%
(658)
1,0%
(7)
8,1%
(59)
0%
(0)
17,7%
(138 z 779)
zakres 169 90,5%
(153)
5,9%
(10)
3,6%
(6)
0%
(0)
2,8%
(4 z 144)
słownik, jedna wartość 1733 90,0%
(1559)
1,5%
(26)
8,5%
(148)
0%
(0)
5,2%
(79 z 1533)
słownik, wiele wartości 1101 84,7%
(932)
4,6%
(51)
5,0%
(55)
5,7%
(63)
4,2%
(41 z 983)
tekst 2486 89,9%
(2234)
3,6%
(89)
1,2%
(30)
5,3%
(133)
7,2%
(120 z 1665)

Udziały w kolumnach od „poprawne” do „niepełne” liczymy od zwróconych wartości, a brak wartości wymaganej od wymaganych wartości wzorca. Tabela obejmuje wszystkie klasyfikacje razem, a tabela dla każdej klasyfikacji osobno jest w pliku ze statystykami. Lista wielokrotnego wyboru liczy się tu jako jedna wartość: z 51 błędnych list 36 ma jeden zły element obok poprawnych.

  • Liczby zwrócone przez API są najpewniejsze: około 97% poprawnych, mało przypuszczeń i błędów.
  • Pola tak/nie najczęściej zostają puste: API pomija 17,7% wymaganych wartości, a w pozostałych typach od 1,6% do 7,2%.
  • Słowniki jednokrotnego wyboru rzadko są błędne (1,5%), ale częściej zgadnięte (8,5%). API wybiera wartość typową, której opis nie podaje.
  • Listy wielokrotnego wyboru najrzadziej są całkowicie poprawne (84,7%), bo wystarczy jeden zły albo brakujący element. Lista trafiona w części dostaje jednak część trafienia, więc w jakości wypadają dobrze: 92,2% w Amazonie i 94,7% w Kauflandzie.
  • W tekście najczęstsza jest wartość niepełna (5,3%), a błędnych wartości jest tu najwięcej w liczbach bezwzględnych (89).

Pozostałe przekroje

Według języka

język opisu jakość pola strukturalne pola tekstowe
angielski 93,8% 94,4% 91,3%
niemiecki 93,0% 93,8% 89,9%
polski 92,6% 93,4% 89,5%

Różnice między językami są małe: do 0,9 punktu procentowego w polach strukturalnych i do 1,8 punktu w tekstowych. Najsłabiej wypadają pola tekstowe polskiego Kauflandu (87,2%). Porównanie nie jest całkiem równe, bo opisy angielskie nie trafiały do Kauflandu.

Według kategorii produktów

Najwyższą jakość mają narzędzia (95,0%), ogród oraz dom i kuchnia (po 94,5%). Niżej wypadają małe AGD kuchenne (92,2%), zabawki (91,1%) i uroda (90,0%). Część kategorii ma w teście tylko 1-4 produkty, więc wyniki dla nich traktujemy orientacyjnie. Pełna tabela jest w pliku ze statystykami.

Rozkład wyników pojedynczych odpowiedzi

Rozkład jakości pojedynczych odpowiedzi API: mediana ETIM 95,2%, Amazon 94,0%, Kaufland 92,3%; większość odpowiedzi ma jakość co najmniej 85%
klasyfikacja odpowiedzi mediana jakości odpowiedzi z jakością co najmniej 80% odpowiedzi z jakością co najmniej 70%
ETIM v10 198 95,2% 94% 98%
Amazon 288 94,0% 99% 100%
Kaufland 186 92,3% 90% 97%

Pułapki, z którymi API sobie poradziło

  • Lodówka, chaotyczny eksport sklepu. Opis podaje trzy pojemności: chłodziarka 260 l, zamrażarka 103 l, razem 363 l. API wpisało każdą do właściwego pola we wszystkich trzech klasyfikacjach. Wymiary 203 × 60 × 66,5 cm zamieniło na milimetry dla ETIM, na metry dla Kauflandu i ułożyło w kolejności gł. × szer. × wys. dla Amazonu. Wymiarów i wagi opakowania, które stały tuż obok, nie użyło.
  • Wiertarko-wkrętarka, krótka oferta w trzech zdaniach. Dwa biegi 0-500 i 0-1900 obr./min trafiły do pól pierwszego i drugiego biegu. Przy dwóch akumulatorach 3,0 Ah API podało pojemność jednego akumulatora (3,0 Ah), a nie sumę, i osobno ich liczbę (2). Zakres uchwytu 1,5-13 mm nie trafił do pól średnicy wiercenia w stali i drewnie. Jedną pułapkę przeoczyło: w ETIM wpisało 50 Nm w pole zakresu regulacji momentu, choć opis podaje tylko moment maksymalny i 21 nastaw sprzęgła.
  • Telewizor. Zużycie energii podane w kWh na 1000 godzin nie zostało wpisane jako zużycie roczne. Przekątną 55 cali API przeliczyło na 139 cm.

Co z tego wynika

Liczby, jednostki i cechy podane wprost API odczytuje bardzo dokładnie: pokrycie wartości podanych wprost wynosi od 96,0% w Kauflandzie do 98,0% w ETIM. Różnica do 100% bierze się głównie z trzech rzeczy, a żadna z nich nie polega na złym odczytaniu tego, co opis podaje wprost:

  • wartości, które z opisu wynikają, choć nie są w nim zapisane, np. to, że czajnik jest bezprzewodowy. API częściej je pomija, niż wpisuje błędnie;
  • odpowiedzi w polach, o których opis nic nie mówi, najczęściej wartości typowe dla danego rodzaju produktu;
  • pomylenie znaczenia pola, np. instrukcji bezpieczeństwa z funkcjami bezpieczeństwa, tam, gdzie sama nazwa atrybutu nie mówi jasno, czego pole dotyczy.

Nad wszystkimi trzema pracujemy.

Co to znaczy w praktyce? Poniżej nasze wnioski z liczb w tym artykule, a nie wynik osobnego pomiaru:

  • liczby podane w opisie API wpisuje najpewniej, razem z przeliczeniem jednostek. Z liczb, które zwróciło, około 97% jest poprawnych;
  • najwięcej uwagi wymagają pola tak/nie i słowniki jednokrotnego wyboru, w których API częściej zgaduje, oraz pola tekstowe, których znaczenia nie da się poznać po samej nazwie;
  • cechy oczywiste dla człowieka, jak to, że czajnik jest bezprzewodowy, warto zapisać w opisie. Wartości podane wprost API wpisuje z pokryciem od 96,0% do 98,0%, a wywnioskowane rzadziej (79,7%).

Wszystkie pliki testu są do pobrania, więc porównanie z człowiekiem, o którym piszemy na początku, może przeprowadzić każdy. Jeśli je zrobisz, napisz do nas.

Zestaw testowy

100 prawdziwych produktów (konkretna marka i model) z 17 kategorii szerokiego marketplace'u. Są wśród nich elektroinstalacja i oświetlenie, narzędzia, AGD małe i duże, elektronika, ogród, instalacje, dom i kuchnia, moda, uroda, zabawki, sport, artykuły dziecięce, zwierzęta, motoryzacja i żywność. Dane techniczne pochodzą z kart producentów i dużych sklepów.

5 stylów opisu, po 20 produktów każdy, bo w prawdziwych katalogach opisy wyglądają bardzo różnie:

styl jak wygląda
krótka oferta 1-3 zdania, wszystko w jednym ciągu
wypunktowania lista cech i krótkie dane techniczne
karta techniczna tabela parametrów
tekst marketingowy korzyści i emocje, parametry wplecione w zdania
nieuporządkowany eksport sklepu HTML, skróty, wielkie litery, wtrącenia o wysyłce i zwrotach

3 języki: polski, niemiecki i angielski. Każdy opis jest napisany tak, jak napisałby go lokalny sprzedawca, a nie jak tłumaczenie. Fakty są te same we wszystkich językach. Średnia długość opisu to około 750-800 znaków.

Opisy przygotowali agenci AI według spisanej instrukcji, na podstawie danych źródłowych każdego produktu. Ci sami agenci ułożyli idealną odpowiedź (o niej niżej).

409 pułapek. W opisach celowo umieściliśmy miejsca, w których łatwo o pomyłkę:

  • przeliczenia jednostek, np. wymiary w centymetrach, gdy ETIM oczekuje milimetrów, a Kaufland metrów;
  • zaprzeczenia, np. „bez regulacji temperatury” albo „nie nadaje się do zmywarki”;
  • kilka podobnych liczb naraz, np. trzy pojemności lodówki albo dwa biegi wiertarki;
  • liczby-zmyłki, np. wymiary i waga opakowania, okres gwarancji czy czas dostawy;
  • zakres tam, gdzie pole przyjmuje jedną liczbę;
  • wzmianki o produktach kompatybilnych, które nie są cechą samego produktu.

Idealna odpowiedź (wzorzec)

Dla każdego produktu i każdej klasyfikacji przygotowaliśmy pełną listę wartości atrybutów, które wynikają z opisu. To z nią porównywaliśmy odpowiedzi API.

Zasady

  • Wzorzec zawiera tylko to, co wynika z opisu. Wiedza o konkretnym produkcie spoza opisu się nie liczy. Jeśli opis nie podaje koloru, wzorzec nie ma koloru, nawet gdy wiemy, jaki jest.
  • Wartość pewna należy do wzorca, przypuszczenie nie. Wartość nie musi być zapisana w opisie wprost. Należy do wzorca także wtedy, gdy wynika z opisu z pewnością: z przeliczenia, z rodzaju produktu (prostownica daje proste włosy, listwa z gniazdami typu F ma wtyczkę typu F), z cechy prawdziwej dla każdego produktu tego rodzaju (kosmetyk ma termin ważności) albo z tego, że produkt jest sprzedawany pojedynczo (liczba sztuk 1). Ogólnej reguły tu nie ma, więc każdą taką wartość ocenialiśmy osobno. Wartość tylko typowa albo prawdopodobna, np. „lekki”, „klasyczny styl” albo uznanie jednego z nieopisanych wymiarów za szerokość, to przypuszczenie.
  • Wartości wymagane i nieobowiązkowe. Wymagane są wartości, które opis podaje albo które z niego pewnie wynikają. „Wymagana” znaczy tu tylko tyle, że skoro opis ją daje, API powinno ją wpisać. Nie chodzi o atrybuty obowiązkowe w klasyfikacji. Atrybut, o którym opis nic nie mówi, nie ma wartości we wzorcu i nie wpływa na wynik, o ile API go nie wypełni. Nieobowiązkowe są tylko pola ogólnikowe (np. styl albo opisowy rozmiar), pola, w których opis dopuszcza kilka odczytów (np. który kod oznacza wersję produktu), i przybliżone odpowiedniki w słowniku. Brak wartości nieobowiązkowej nie jest błędem.
  • Wartości alternatywne. Gdy poprawnych odpowiedzi jest kilka (np. 230 V albo zakres 220-240 V), wzorzec przyjmuje każdą z nich.
  • Tylko klasy pewne. Atrybuty ocenialiśmy tylko wtedy, gdy klasa na pewno pasuje do produktu. ETIM nie obejmuje odzieży, zabawek ani żywności, więc w ETIM oceniliśmy 66 produktów, w Kauflandzie 93, w Amazonie 96.
  • Test mierzy odczyt opisu, a nie jakość samych klasyfikacji. Gdy definicja klasyfikacji utrudniała poprawną odpowiedź (np. słownik bez pasującej wartości albo niejasna etykieta), pole było nieobowiązkowe.
  • Bez pól do pozycjonowania. Amazonowe „Ogólne słowo kluczowe” i „Słowo kluczowe tematyki” to frazy, po których klienci szukają produktu, a nie jego cechy. Test ich nie ocenia.

Jak powstał

Wzorzec przygotowali agenci AI według spisanej instrukcji. Każdy z 10 agentów-autorów opracował 10 produktów: opisy w trzech językach i idealną odpowiedź dla każdej klasyfikacji. Potem 6 innych agentów, którzy nie byli autorami, sprawdziło całość i wprowadziło 193 poprawki. Zasady i przypadki sporne, np. granicę między wartością pewną a przypuszczeniem, rozstrzygał człowiek.

Po pierwszej ocenie wzorzec przeszedł jeszcze cztery rundy kontroli:

  • Luki. Gdy API zwróciło wartość, której wzorzec nie miał, a sędzia uznał, że wynika ona z opisu, wartość trafiła do wzorca. Po pierwszej ocenie takich wartości było 675, w większości nieobowiązkowych. Tę samą kontrolę powtórzyliśmy po kolejnych przebiegach Amazonu, z wyjątkiem opisanym niżej.
  • Spójność między językami. To samo pole tego samego produktu musi dostać ten sam werdykt w każdym języku. Każdą rozbieżność rozstrzygnęliśmy we wzorcu, a nie zostawiliśmy sędziemu.
  • Znaczenie pól według Amazonu. Instrukcje Amazonu dla sprzedawców pokazały, że część pól znaczy co innego, niż sugeruje nazwa. „Podmarka” obejmuje też licencję, np. Minecraft na puzzlach. Wzorzec Amazonu przejrzeliśmy pole po polu według tych instrukcji i według słowników Amazonu w getName.ai z 27 października 2026 r. Razem z lukami zmieniliśmy albo dopisaliśmy 393 pola w 95 produktach, w tym 246 nowych. W każdym rynku pole ma znaczenie z instrukcji tego rynku.
  • Wartości wywnioskowane. Wartości, których opis nie podaje wprost, tylko z niego wynikają, były początkowo nieobowiązkowe. Każdą z nich, łącznie 674, sprawdziliśmy osobno pod kątem tego, czy wynika z opisu z pewnością. 568 jest teraz wymaganych, 84 uznaliśmy za przypuszczenia, a 22 zostały nieobowiązkowe (pola ogólnikowe, przybliżenia w słowniku i listy, w których pewna jest tylko część elementów). Sprawdzał model Claude Opus 5.5 według zasad ustalonych przez człowieka.

Ograniczenia testu

  • Próba wystarcza do porównania klasyfikacji i typów pól, ale nie węższych przekrojów. 100 produktów i 7994 wartości wymaganych to dość, żeby porównać klasyfikacje i typy atrybutów. Pojedyncza kategoria produktów ma w teście od 1 do 14 produktów, więc wyniki kategorii traktujemy orientacyjnie.
  • Klasa była podana z góry. Test nie mierzy rozpoznawania klasy, a w praktyce błędna klasa oznacza złe atrybuty.
  • Opisy powstały na potrzeby testu na podstawie prawdziwych danych produktów. Mają oddawać różnorodność prawdziwych katalogów, ale prawdziwe opisy bywają jeszcze krótsze i uboższe.
  • Opisy i wzorzec przygotowali agenci AI pod kontrolą człowieka, a pola tekstowe ocenia sędzia LLM. Wzorzec przeszedł niezależną recenzję i kontrolę spójności, ale może zawierać pojedyncze błędy. Dlatego udostępniamy go w całości.
  • Wzorzec uzupełnialiśmy po zobaczeniu odpowiedzi API. W rundzie luk dopisaliśmy do niego wartości, które zwróciło API, a sędzia uznał za wynikające z opisu (więcej w części „Jak powstał”). Nie mamy osobnej próby, dla której wzorzec powstałby bez wglądu w odpowiedzi API. Ta runda działała w obie strony: atrybut dopisany jako wymagany obniża wynik w tych językach, w których API go nie wypełniło. Wartości wywnioskowane sprawdzaliśmy bez odpowiedzi API.
  • Sędzia LLM to też model. Przy ponownej ocenie tych samych odpowiedzi (po doprecyzowaniu jego instrukcji) zmienił kilkanaście z około 3 tysięcy ocen pól tekstowych, głównie między „niepełna” a „poprawna”.
  • Jeden przebieg. Główny test to jeden przebieg. Amazon powtórzyliśmy jeszcze dwa razy i w trzech przebiegach jakość wyniosła od 93,0% do 93,1% w PL, od 92,7% do 92,9% w DE i od 93,4% do 93,7% w UK. Dla ETIM i Kauflandu powtórzeń nie robiliśmy.
  • Trzy klasyfikacje i trzy języki z wielu, które obsługuje getName.ai. Na innych klasyfikacjach wynik może być inny.

Pliki do pobrania

Wszystko w jednym archiwum: pakiet_testowy_getname.zip (1,8 MB). Albo osobno:

plik zawartość
opisy_pl.csv, opisy_de.csv, opisy_en.csv 100 opisów produktów w każdym języku (kolumny: id, description); te same dane w formacie JSONL
wzorzec.xlsx idealna odpowiedź: arkusz „produkty” (kategoria, styl opisu, pułapki, źródła danych) i arkusz na każdą klasyfikację (klasa, atrybut, typ, jednostka, wartość, wartości alternatywne, wymagany, podstawa, uwaga)
wzorzec_json.zip ta sama idealna odpowiedź w 8 plikach JSON, po jednym na klasyfikację i język
macierz_testu.json które klasyfikacje dostawał opis w każdym języku
wyniki_atrybuty.csv każda z 10 703 ocenionych wartości: produkt, język, klasyfikacja, klasa, atrybut, typ, czy wymagany, wartość wzorca, odpowiedź API, ocena, sposób liczenia w wyniku, uzasadnienie sędziego
wyniki_podsumowanie.csv wskaźniki dla każdej pary język × klasyfikacja
statystyki.xlsx wszystkie tabele z artykułu oraz wynik każdej z 672 odpowiedzi API
prompt_sedziego.txt pełna instrukcja dla sędziego LLM

Kolumny pliku wyniki_atrybuty.csv (separator: średnik):

kolumna znaczenie
product identyfikator produktu (P001-P100), ten sam co w opisach i we wzorcu
language język opisu: pl, de, en
source klasyfikacja, np. etim_v10_pl, amazon_co_uk, kaufland_de
family rodzina klasyfikacji: etim, amazon, kaufland
class identyfikator klasy
attribute, name identyfikator i nazwa atrybutu
type typ pola: float, integer, boolean, range, dictionary (multi = wiele wartości), string
required True = wartość wymagana, False = nieobowiązkowa albo spoza wzorca
gold wartość ze wzorca (puste = wzorzec nie przewiduje wartości)
returned odpowiedź API (puste = API nie zwróciło wartości)
category, category_pl ocena po angielsku i po polsku
gold_count 1 = wartość liczy się jako wymagana wartość wzorca
returned_count ile wartość liczy się jako zwrócona: 1, 0 (nie liczy się) albo ułamek dla listy spoza wzorca z częścią błędnych elementów
hit trafienie od 0 do 1
language_ok dla tekstu: czy odpowiedź jest w języku klasyfikacji
judge_reason uzasadnienie sędziego po angielsku (puste, gdy ocenił skrypt); przedrostek [reference conflict] znaczy, że według sędziego wartość wzorca nie pasuje do instrukcji Amazonu

Jakość dowolnej grupy wierszy to 2 × suma hit / (suma gold_count + suma returned_count).

Jak powtórzyć test

  • Weź opis z opisy_<język>.csv i klasę z wzorzec.xlsx dla tej samej klasyfikacji (kolumna „klasa”, tylko wiersze z „klasa pewna” = tak).
  • Wyślij je do getName.ai i zapisz zwrócone atrybuty.
  • Porównaj z wartością wzorca, wartościami alternatywnymi i polem „wymagany” według zasad opisanych wyżej. Pola tekstowe i wartości spoza wzorca oceń z pomocą prompt_sedziego.txt, w Amazonie razem z instrukcją Amazonu dla sprzedawców dla danego atrybutu. Tych instrukcji nie dołączamy, bo to treść Amazonu udostępniana sprzedawcom.
  • Policz precyzję, pokrycie i jakość według wzorów z części „Wskaźniki”.

Jeśli znajdziesz we wzorcu błąd, napisz do nas. Poprawimy go i przeliczymy wynik.