Skip to content

Commit

Permalink
fix: lints and type-checks
Browse files Browse the repository at this point in the history
  • Loading branch information
kod-kristoff committed Mar 28, 2024
1 parent feb847d commit 43d98d7
Show file tree
Hide file tree
Showing 5 changed files with 19 additions and 18 deletions.
8 changes: 4 additions & 4 deletions ruff.toml
Original file line number Diff line number Diff line change
Expand Up @@ -3,12 +3,12 @@ target-version = "py38"
[lint]
select = [
"A",
# "ANN",
# "ANN",
"B",
"BLE",
"C4",
"C90",
# "D",
# "D",
"E",
"F",
"FBT",
Expand All @@ -20,12 +20,12 @@ select = [

# Never enforce `E501` (line length violations).
# ignore = ["E501"]
ignore = ["ANN101", "ANN102","D203", "D213", "B008"]
ignore = ["ANN101", "ANN102", "D203", "D213", "B008"]

# Avoid trying to fix flake8-bugbear (`B`) violations.
unfixable = ["B"]

# Ignore `E402` (import violations) in all `__init__.py` files, and in `path/to/file.py`.
[lint.per-file-ignores]
"**/tests/*" = ["D100","D101","D102","D103","D104","S101"]
"**/tests/*" = ["D100", "D101", "D102", "D103", "D104", "E501", "S101"]
# "__init__.py" = ["E402"]
Original file line number Diff line number Diff line change
@@ -1,18 +1,19 @@
from dataclasses import dataclass
from typing import Optional, Tuple

from sparv.api import ( # type: ignore [import-untyped]
annotator,
Output,
get_logger,
Annotation,
Config,
Output,
SparvErrorMessage,
annotator,
get_logger,
)

from transformers import ( # type: ignore [import-untyped]
BertTokenizer,
BertForMaskedLM,
BertTokenizer,
)

from sbx_word_prediction_kb_bert.predictor import TopKPredictor

__description__ = "Calculating word predictions by mask a word in a BERT model."
Expand Down Expand Up @@ -77,13 +78,13 @@ def predict_words__kb_bert(
num_predictions = int(num_predictions_str)
except ValueError as exc:
raise SparvErrorMessage(
f"'sbx_word_prediction_kb_bert.num_predictions' must contain an 'int' got: '{num_predictions_str}'"
f"'sbx_word_prediction_kb_bert.num_predictions' must contain an 'int' got: '{num_predictions_str}'" # noqa: E501
) from exc
try:
num_decimals = int(num_decimals_str)
except ValueError as exc:
raise SparvErrorMessage(
f"'sbx_word_prediction_kb_bert.num_decimals' must contain an 'int' got: '{num_decimals_str}'"
f"'sbx_word_prediction_kb_bert.num_decimals' must contain an 'int' got: '{num_decimals_str}'" # noqa: E501
) from exc
tokenizer_name, tokenizer_revision = MODELS["kb-bert"].tokenizer_name_and_revision()

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@ def get_top_k_predictions(self, text: str, k: int = 5) -> str:
if text.count("[MASK]") == 1:
return self._run_pipeline_on_mask_context(text, k)
raise RuntimeError(
f"can't handle large input and multiple [MASK]: {len(tokenized_inputs['input_ids'])} tokens > 512 tokens"
f"can't handle large input and multiple [MASK]: {len(tokenized_inputs['input_ids'])} tokens > 512 tokens" # noqa: E501
)

def _run_pipeline_on_mask_context(self, text, k):
Expand Down
2 changes: 1 addition & 1 deletion word-prediction-kb-bert/tests/conftest.py
Original file line number Diff line number Diff line change
Expand Up @@ -4,8 +4,8 @@
TopKPredictor,
)
from transformers import ( # type: ignore [import-untyped]
BertTokenizer,
BertForMaskedLM,
BertTokenizer,
)


Expand Down
10 changes: 5 additions & 5 deletions word-prediction-kb-bert/tests/test_predictor.py
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
from itertools import islice
from typing import Tuple
from typing import Dict, Tuple

import pytest
from sbx_word_prediction_kb_bert.predictor import TopKPredictor


TEXTS: dict[str, str] = {
TEXTS: Dict[str, str] = {
"short": "[MASK] åt glassen utanför kiosken .",
"long-mask-middle": """
Frisörbranschen påverkas väldigt negativt av den nuvarande situationen när kunderna inte kan komma till salongerna, vilket förstås gör att många frisörer är hotade av konkurs
Expand All @@ -16,7 +16,7 @@
Om jag bestämmer mig för att skriva en lång text så blir jag hungrig. Jag måste laga kaffe och kanske springa ner till bageriet, eller leta efter en karamell eller något annat sött. Och så när jag är klar med mina förberedelse ringer min före detta svärdotter. Hon har just blivit opererad. Det var blindtarmen och något mer som de plockade ut. Hennes mamma säger att hon gnäller och hennes nuvarande svärmorsa förstår inga europeiska språk, inte ett enda ord. Keine wörte bitte! Då sitter man där och ska vara snäll. Den nya svärdottern, hon som efterträdde den gamla, ringer aldrig. Kanske därför tar jag den gamla som en kompensation, eller en evig ursäkt för att inte skriva en lång text.
Om jag nu bestämmer mig för att skriva en kort text, vad då? Då måste jag absolut börja med att kolla facebook, sedan mailboxen och sedan hur det går där borta i Sverige för de stackars bönderna som söker fruar men har så vansinnigt flotta och fina traktorer och hus som förr i världen skulle betraktas som herrgårdar, och så ringer telefonen. Det är en barndomsvän. Han brukar ringa varannan dag. Han har en ganska gedigen utbildning. Matematiker och gudarna vet vad, och sen fick han hjärnblödning och blev överkörd av en buss och ramlade omkull i Nationalteaterns trappuppgång, i den ordningen. Han orar sig för spionerna. Det finns tydligen spioner överallt. Det finns spioner utanför den amerikanska ambassaden och det finns spioner inni i den amerikanska ambassaden. Nu råkar denna stora vita byggnad, som hyser de amerikanska diplomaterna finnas här alldeles i närheten. De där stackarna som står givakt i alla väder kan åtminstone inte vara spionerna, men spionerna är kanske osynliga? I alla fall har jag fått reda på, genom en konstnär som spelar jultomte året om, att spionerna bakom den norska ambassaden är osynliga men om man står helt stilla kan man höra när de jojkar till varandra.
Jag går och ser en föreställning och måste naturligtvis skriva lika långt varje gång. I går såg jag en ung man som åt upp ett päron, det var alltså för att vara orginell, för äpplet finns ju som en klassisk föreställning. Denna unga man som har långa ben, vansinnigt långa ben, ovanligt långa ben, lyckades tråka ihjäl femtiotvå personer som sprang ut ur en gammal fiskfabrik och kommer nog aldrig att se en s k föreställning där han finns med nån mer gång. Oj vad det är svårt att konsentrera sig om man har gäster. De ska ha kaffe och de ska underhållas, då kan man heller inte skriva en lång eller en kort text.
""",
""", # noqa: RUF001
}


Expand Down Expand Up @@ -44,7 +44,7 @@ def test_rounding(kb_bert_predictor: TopKPredictor) -> None:


def remove_scores(actual):
return "|".join(map(lambda x: x.split(":")[0], actual.split("|")))
return "|".join((x.split(":")[0] for x in actual.split("|")))


def test_long_text(kb_bert_predictor: TopKPredictor) -> None:
Expand Down

0 comments on commit 43d98d7

Please sign in to comment.