Skip to content
Snippets Groups Projects
Commit 8e6281f6 authored by Konrad Wojtasik's avatar Konrad Wojtasik
Browse files

Easymatcher nlp worker update

parent 5394055a
No related branches found
No related tags found
No related merge requests found
Pipeline #15765 failed
[tool.poetry]
name = "easymatcher-worker"
version = "0.2.0"
version = "0.4.0"
description = ""
authors = ["Jakub Balicki <jakub.balicki@pwr.edu.pl>"]
readme = "README.md"
......@@ -14,7 +14,7 @@ secondary = true
[tool.poetry.dependencies]
python = "^3.10"
easymatcher = {version = "~1.0", source = "clarin"}
easymatcher = {version = "~1.1", source = "clarin"}
nlp-ws = {version = "~2.1", source = "clarin"}
clarin-json = {version="0.5", source="clarin"}
......
......@@ -96,13 +96,15 @@ class EasymatcherWorker(nlp_ws.NLPWorker):
"start": start_idx,
"stop": end_idx,
"class": class_name,
"matched_words": matched_words
}
)
for idx, (
start_idx,
end_idx,
class_name,
) in enumerate(doc_out["label"])
matched_words
) in enumerate(sorted(doc_out["label"], key= lambda x: (x[0], x[1], x[3])))
],
"easymatcher-{}".format(labels_dict_name),
)
......
{"id": 123, "label": "spam", "text": "55calowy telewizor QLED Samsung QE55Q75TA Pozwól sobie na luksus wybierając telewizor QLED Samsung QE55Q75TA który zabierze Cię w świat wspaniałej rozrywki bez wychodzenia z domu Umozliwia Aktualizowanie oprogramowania przez USB oraz posiada Aktualizacje oprogramowania sprzętowego przez Internet", "tagset": "nkjp", "tokens": {"default": [{"lexemes": [{"lemma": "protest", "pos": "subst:sg:nom:m3", "disamb": true}], "id": "123456", "start": 0, "stop": 11}, {"lexemes": [{"lemma": "uczucie", "pos": "subst:sg:gen:n", "disamb": true}], "id": "123457", "start": 13, "stop": 17}]}, "spans": {"easymatcher-labels": [{"id": 0, "start": 19, "stop": 23, "class": "Typ TV"}, {"id": 1, "start": 86, "stop": 90, "class": "Typ TV"}, {"id": 2, "start": 189, "stop": 228, "class": "Aktualizowanie oprogramowania przez USB"}, {"id": 3, "start": 242, "stop": 296, "class": "Aktualizacja oprogramowania sprzętowego przez Internet"}], "ner": [{"id": "ner1", "start": 0, "stop": 8, "class": "person"}], "sentence": [{"id": "sent1", "start": 0, "stop": 15}]}, "relations": {"default": [{"id": "relation1", "source": {"span": "ner", "id": "ner1"}, "target": [{"line": 124, "span": "ner", "id": "ner2"}], "label": "base-relation"}]}, "unknown": "lol"}
{"id": 123, "label": "spam", "text": "55calowy telewizor QLED Samsung QE55Q75TA Pozwól sobie na luksus wybierając telewizor QLED Samsung QE55Q75TA który zabierze Cię w świat wspaniałej rozrywki bez wychodzenia z domu Umozliwia Aktualizowanie oprogramowania przez USB oraz posiada Aktualizacje oprogramowania sprzętowego przez Internet", "tagset": "nkjp", "tokens": {"default": [{"lexemes": [{"lemma": "protest", "pos": "subst:sg:nom:m3", "disamb": true}], "id": "123456", "start": 0, "stop": 11}, {"lexemes": [{"lemma": "uczucie", "pos": "subst:sg:gen:n", "disamb": true}], "id": "123457", "start": 13, "stop": 17}]}, "spans": {"easymatcher-labels": [{"id": 0, "start": 19, "stop": 23, "class": "Typ TV", "matched_words": "qled"}, {"id": 1, "start": 86, "stop": 90, "class": "Typ TV", "matched_words": "qled"}, {"id": 2, "start": 189, "stop": 228, "class": "Aktualizowanie oprogramowania przez USB", "matched_words": "aktualizowanie oprogramowania przez usb"}, {"id": 3, "start": 242, "stop": 296, "class": "Aktualizacja oprogramowania sprzętowego przez Internet", "matched_words": "aktualizacja oprogramowania sprzętowego przez internet"}], "ner": [{"id": "ner1", "start": 0, "stop": 8, "class": "person"}], "sentence": [{"id": "sent1", "start": 0, "stop": 15}]}, "relations": {"default": [{"id": "relation1", "source": {"span": "ner", "id": "ner1"}, "target": [{"line": 124, "span": "ner", "id": "ner2"}], "label": "base-relation"}]}, "unknown": "lol"}
{"id": 123, "label": "spam", "text": "55calowy telewizor QLED Samsung QE55Q75TA Pozwól sobie na luksus wybierając telewizor QLED Samsung QE55Q75TA który zabierze Cię w świat wspaniałej rozrywki bez wychodzenia z domu Umozliwia Aktualizowanie oprogramowania przez USB oraz posiada Aktualizacje oprogramowania sprzętowego przez Internet", "tagset": "nkjp", "tokens": {"default": [{"lexemes": [{"lemma": "protest", "pos": "subst:sg:nom:m3", "disamb": true}], "id": "123456", "start": 0, "stop": 11}, {"lexemes": [{"lemma": "uczucie", "pos": "subst:sg:gen:n", "disamb": true}], "id": "123457", "start": 13, "stop": 17}]}, "spans": {"easymatcher-labels": [{"id": 0, "start": 19, "stop": 23, "class": "Typ TV"}, {"id": 1, "start": 86, "stop": 90, "class": "Typ TV"}, {"id": 2, "start": 189, "stop": 228, "class": "Aktualizowanie oprogramowania przez USB"}, {"id": 3, "start": 242, "stop": 296, "class": "Aktualizacja oprogramowania sprzętowego przez Internet"}], "ner": [{"id": "ner1", "start": 0, "stop": 8, "class": "person"}], "sentence": [{"id": "sent1", "start": 0, "stop": 15}]}, "relations": {"default": [{"id": "relation1", "source": {"span": "ner", "id": "ner1"}, "target": [{"line": 124, "span": "ner", "id": "ner2"}], "label": "base-relation"}]}, "unknown": "lol"}
{"id": 123, "label": "spam", "text": "55calowy telewizor QLED Samsung QE55Q75TA Pozwól sobie na luksus wybierając telewizor QLED Samsung QE55Q75TA który zabierze Cię w świat wspaniałej rozrywki bez wychodzenia z domu Umozliwia Aktualizowanie oprogramowania przez USB oraz posiada Aktualizacje oprogramowania sprzętowego przez Internet", "tagset": "nkjp", "tokens": {"default": [{"lexemes": [{"lemma": "protest", "pos": "subst:sg:nom:m3", "disamb": true}], "id": "123456", "start": 0, "stop": 11}, {"lexemes": [{"lemma": "uczucie", "pos": "subst:sg:gen:n", "disamb": true}], "id": "123457", "start": 13, "stop": 17}]}, "spans": {"easymatcher-labels": [{"id": 0, "start": 19, "stop": 23, "class": "Typ TV", "matched_words": "qled"}, {"id": 1, "start": 86, "stop": 90, "class": "Typ TV", "matched_words": "qled"}, {"id": 2, "start": 189, "stop": 228, "class": "Aktualizowanie oprogramowania przez USB", "matched_words": "aktualizowanie oprogramowania przez usb"}, {"id": 3, "start": 242, "stop": 296, "class": "Aktualizacja oprogramowania sprzętowego przez Internet", "matched_words": "aktualizacja oprogramowania sprzętowego przez internet"}], "ner": [{"id": "ner1", "start": 0, "stop": 8, "class": "person"}], "sentence": [{"id": "sent1", "start": 0, "stop": 15}]}, "relations": {"default": [{"id": "relation1", "source": {"span": "ner", "id": "ner1"}, "target": [{"line": 124, "span": "ner", "id": "ner2"}], "label": "base-relation"}]}, "unknown": "lol"}
{"id": 123, "label": "spam", "text": "8703 Tarcza szlifierska Scanmaskin SC Elastic Metal 125 mm do betonu, lastryka i kamienia naturalnego (ziarnistość 30) Tarcza szlifierska SC Elastic Metal 125 mm marki Scanmaskin służy do szlifowania betonu, lastryka i naturalnego kamienia. Powinna być stosowana przed nałożeniem cienkiej powłoki lub polerowaniem posadzki, aby usunąć z powierzchni głębokie zarysowania. Opis wariantu: Ziarnistość 30", "tagset": "nkjp", "tokens": {"default": [{"lexemes": [{"lemma": "protest", "pos": "subst:sg:nom:m3", "disamb": true}], "id": "123456", "start": 0, "stop": 11}, {"lexemes": [{"lemma": "uczucie", "pos": "subst:sg:gen:n", "disamb": true}], "id": "123457", "start": 13, "stop": 17}]}, "spans": {"easymatcher-labels_with_concrete": [{"id": 0, "start": 46, "stop": 51, "class": "Metal"}, {"id": 1, "start": 62, "stop": 68, "class": "Beton"}, {"id": 2, "start": 70, "stop": 78, "class": "Lastryko"}, {"id": 3, "start": 81, "stop": 89, "class": "Kamień naturalny"}, {"id": 4, "start": 149, "stop": 154, "class": "Metal"}, {"id": 5, "start": 200, "stop": 206, "class": "Beton"}, {"id": 6, "start": 208, "stop": 216, "class": "Lastryko"}, {"id": 7, "start": 219, "stop": 239, "class": "Kamień naturalny"}], "ner": [{"id": "ner1", "start": 0, "stop": 8, "class": "person"}], "sentence": [{"id": "sent1", "start": 0, "stop": 15}]}, "relations": {"default": [{"id": "relation1", "source": {"span": "ner", "id": "ner1"}, "target": [{"line": 124, "span": "ner", "id": "ner2"}], "label": "base-relation"}]}, "unknown": "lol"}
{"id": 123, "label": "spam", "text": "8703 Tarcza szlifierska Scanmaskin SC Elastic Metal 125 mm do betonu, lastryka i kamienia naturalnego (ziarnistość 30) Tarcza szlifierska SC Elastic Metal 125 mm marki Scanmaskin służy do szlifowania betonu, lastryka i naturalnego kamienia. Powinna być stosowana przed nałożeniem cienkiej powłoki lub polerowaniem posadzki, aby usunąć z powierzchni głębokie zarysowania. Opis wariantu: Ziarnistość 30", "tagset": "nkjp", "tokens": {"default": [{"lexemes": [{"lemma": "protest", "pos": "subst:sg:nom:m3", "disamb": true}], "id": "123456", "start": 0, "stop": 11}, {"lexemes": [{"lemma": "uczucie", "pos": "subst:sg:gen:n", "disamb": true}], "id": "123457", "start": 13, "stop": 17}]}, "spans": {"easymatcher-labels_with_concrete": [{"id": 0, "start": 46, "stop": 51, "class": "Metal", "matched_words": "metal"}, {"id": 1, "start": 62, "stop": 68, "class": "Beton", "matched_words": "beton"}, {"id": 2, "start": 70, "stop": 78, "class": "Lastryko", "matched_words": "lastryk"}, {"id": 3, "start": 70, "stop": 78, "class": "Lastryko", "matched_words": "lastryka"}, {"id": 4, "start": 81, "stop": 89, "class": "Kamień naturalny", "matched_words": "kamienia"}, {"id": 5, "start": 149, "stop": 154, "class": "Metal", "matched_words": "metal"}, {"id": 6, "start": 200, "stop": 206, "class": "Beton", "matched_words": "beton"}, {"id": 7, "start": 208, "stop": 216, "class": "Lastryko", "matched_words": "lastryk"}, {"id": 8, "start": 208, "stop": 216, "class": "Lastryko", "matched_words": "lastryka"}, {"id": 9, "start": 219, "stop": 239, "class": "Kamień naturalny", "matched_words": "naturalnego kamienia"}, {"id": 10, "start": 231, "stop": 239, "class": "Kamień naturalny", "matched_words": "kamienia"}], "ner": [{"id": "ner1", "start": 0, "stop": 8, "class": "person"}], "sentence": [{"id": "sent1", "start": 0, "stop": 15}]}, "relations": {"default": [{"id": "relation1", "source": {"span": "ner", "id": "ner1"}, "target": [{"line": 124, "span": "ner", "id": "ner2"}], "label": "base-relation"}]}, "unknown": "lol"}
{"id": 123, "label": "spam", "text": "55calowy telewizor QLED Samsung QE55Q75TA Pozwól sobie na luksus wybierając telewizor QLED Samsung QE55Q75TA który zabierze Cię w świat wspaniałej rozrywki bez wychodzenia z domu Umozliwia Aktualizowanie oprogramowania przez USB oraz posiada Aktualizacje oprogramowania sprzętowego przez Internet", "tagset": "nkjp", "tokens": {"default": [{"lexemes": [{"lemma": "protest", "pos": "subst:sg:nom:m3", "disamb": true}], "id": "123456", "start": 0, "stop": 11}, {"lexemes": [{"lemma": "uczucie", "pos": "subst:sg:gen:n", "disamb": true}], "id": "123457", "start": 13, "stop": 17}]}, "spans": {"easymatcher-labels": [{"id": 0, "start": 19, "stop": 23, "class": "Typ TV"}, {"id": 1, "start": 86, "stop": 90, "class": "Typ TV"}, {"id": 2, "start": 189, "stop": 228, "class": "Aktualizowanie oprogramowania przez USB"}, {"id": 3, "start": 242, "stop": 296, "class": "Aktualizacja oprogramowania sprzętowego przez Internet"}], "ner": [{"id": "ner1", "start": 0, "stop": 8, "class": "person"}], "sentence": [{"id": "sent1", "start": 0, "stop": 15}]}, "relations": {"default": [{"id": "relation1", "source": {"span": "ner", "id": "ner1"}, "target": [{"line": 124, "span": "ner", "id": "ner2"}], "label": "base-relation"}]}, "unknown": "lol"}
{"id": 124, "label": "spam2", "text": "55calowy telewizor QLED Samsung QE55Q75TA Pozwól sobie na luksus wybierając telewizor QLED Samsung QE55Q75TA który zabierze Cię w świat wspaniałej rozrywki bez wychodzenia z domu Umozliwia Aktualizowanie oprogramowania przez USB oraz posiada Aktualizacje oprogramowania sprzętowego przez Internet", "tagset": "nkjp", "tokens": {"default": [{"lexemes": [{"lemma": "protest", "pos": "subst:sg:nom:m3", "disamb": true}], "id": "123456", "start": 0, "stop": 11}, {"lexemes": [{"lemma": "uczucie", "pos": "subst:sg:gen:n", "disamb": true}], "id": "123457", "start": 13, "stop": 17}]}, "spans": {"easymatcher-labels": [{"id": 0, "start": 19, "stop": 23, "class": "Typ TV"}, {"id": 1, "start": 86, "stop": 90, "class": "Typ TV"}, {"id": 2, "start": 189, "stop": 228, "class": "Aktualizowanie oprogramowania przez USB"}, {"id": 3, "start": 242, "stop": 296, "class": "Aktualizacja oprogramowania sprzętowego przez Internet"}], "ner": [{"id": "ner1", "start": 0, "stop": 8, "class": "person"}], "sentence": [{"id": "sent1", "start": 0, "stop": 15}]}, "relations": {"default": [{"id": "relation1", "source": {"span": "ner", "id": "ner1"}, "target": [{"line": 124, "span": "ner", "id": "ner2"}], "label": "base-relation"}]}, "unknown": "lol2"}
{"id": 123, "label": "spam", "text": "55calowy telewizor QLED Samsung QE55Q75TA Pozwól sobie na luksus wybierając telewizor QLED Samsung QE55Q75TA który zabierze Cię w świat wspaniałej rozrywki bez wychodzenia z domu Umozliwia Aktualizowanie oprogramowania przez USB oraz posiada Aktualizacje oprogramowania sprzętowego przez Internet", "tagset": "nkjp", "tokens": {"default": [{"lexemes": [{"lemma": "protest", "pos": "subst:sg:nom:m3", "disamb": true}], "id": "123456", "start": 0, "stop": 11}, {"lexemes": [{"lemma": "uczucie", "pos": "subst:sg:gen:n", "disamb": true}], "id": "123457", "start": 13, "stop": 17}]}, "spans": {"easymatcher-labels": [{"id": 0, "start": 19, "stop": 23, "class": "Typ TV", "matched_words": "qled"}, {"id": 1, "start": 86, "stop": 90, "class": "Typ TV", "matched_words": "qled"}, {"id": 2, "start": 189, "stop": 228, "class": "Aktualizowanie oprogramowania przez USB", "matched_words": "aktualizowanie oprogramowania przez usb"}, {"id": 3, "start": 242, "stop": 296, "class": "Aktualizacja oprogramowania sprzętowego przez Internet", "matched_words": "aktualizacja oprogramowania sprzętowego przez internet"}], "ner": [{"id": "ner1", "start": 0, "stop": 8, "class": "person"}], "sentence": [{"id": "sent1", "start": 0, "stop": 15}]}, "relations": {"default": [{"id": "relation1", "source": {"span": "ner", "id": "ner1"}, "target": [{"line": 124, "span": "ner", "id": "ner2"}], "label": "base-relation"}]}, "unknown": "lol"}
{"id": 124, "label": "spam2", "text": "55calowy telewizor QLED Samsung QE55Q75TA Pozwól sobie na luksus wybierając telewizor QLED Samsung QE55Q75TA który zabierze Cię w świat wspaniałej rozrywki bez wychodzenia z domu Umozliwia Aktualizowanie oprogramowania przez USB oraz posiada Aktualizacje oprogramowania sprzętowego przez Internet", "tagset": "nkjp", "tokens": {"default": [{"lexemes": [{"lemma": "protest", "pos": "subst:sg:nom:m3", "disamb": true}], "id": "123456", "start": 0, "stop": 11}, {"lexemes": [{"lemma": "uczucie", "pos": "subst:sg:gen:n", "disamb": true}], "id": "123457", "start": 13, "stop": 17}]}, "spans": {"easymatcher-labels": [{"id": 0, "start": 19, "stop": 23, "class": "Typ TV", "matched_words": "qled"}, {"id": 1, "start": 86, "stop": 90, "class": "Typ TV", "matched_words": "qled"}, {"id": 2, "start": 189, "stop": 228, "class": "Aktualizowanie oprogramowania przez USB", "matched_words": "aktualizowanie oprogramowania przez usb"}, {"id": 3, "start": 242, "stop": 296, "class": "Aktualizacja oprogramowania sprzętowego przez Internet", "matched_words": "aktualizacja oprogramowania sprzętowego przez internet"}], "ner": [{"id": "ner1", "start": 0, "stop": 8, "class": "person"}], "sentence": [{"id": "sent1", "start": 0, "stop": 15}]}, "relations": {"default": [{"id": "relation1", "source": {"span": "ner", "id": "ner1"}, "target": [{"line": 124, "span": "ner", "id": "ner2"}], "label": "base-relation"}]}, "unknown": "lol2"}
{"id": 125, "label": "spam3", "text": "8703 Tarcza szlifierska Scanmaskin SC Elastic Metal 125 mm do betonu, lastryka i kamienia naturalnego (ziarnistość 30) Tarcza szlifierska SC Elastic Metal 125 mm marki Scanmaskin służy do szlifowania betonu, lastryka i naturalnego kamienia. Powinna być stosowana przed nałożeniem cienkiej powłoki lub polerowaniem posadzki, aby usunąć z powierzchni głębokie zarysowania. Opis wariantu: Ziarnistość 30", "tagset": "nkjp", "tokens": {"default": [{"lexemes": [{"lemma": "protest", "pos": "subst:sg:nom:m3", "disamb": true}], "id": "123456", "start": 0, "stop": 11}, {"lexemes": [{"lemma": "uczucie", "pos": "subst:sg:gen:n", "disamb": true}], "id": "123457", "start": 13, "stop": 17}]}, "spans": {"easymatcher-labels": [], "ner": [{"id": "ner1", "start": 0, "stop": 8, "class": "person"}], "sentence": [{"id": "sent1", "start": 0, "stop": 15}]}, "relations": {"default": [{"id": "relation1", "source": {"span": "ner", "id": "ner1"}, "target": [{"line": 124, "span": "ner", "id": "ner2"}], "label": "base-relation"}]}, "unknown": "lol3"}
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment