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

Easymatcher nlp worker update

parent 5394055a
Branches
No related merge requests found
Pipeline #15765 failed with stages
in 4 minutes and 35 seconds
[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% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment