From 05675c4791b1134d838934b957d16844c12a8e9d Mon Sep 17 00:00:00 2001
From: Maja Jablonska <majajjablonska@gmail.com>
Date: Sat, 11 Nov 2023 18:51:57 +1100
Subject: [PATCH] Optimize imports

---
 combo/config/from_parameters.py                    |  6 ++----
 combo/config/registry.py                           |  3 +--
 combo/data/api.py                                  |  2 +-
 combo/data/batch.py                                |  8 ++++----
 combo/data/dataset_readers/conllu.py               | 14 ++++++--------
 combo/data/dataset_readers/dataset_reader.py       |  4 ++--
 .../dataset_readers/dataset_utils/span_utils.py    |  1 -
 .../universal_dependencies_dataset_reader.py       |  4 +---
 ...trained_transformer_fixed_mismatched_indexer.py |  1 -
 .../pretrained_transformer_mismatched_indexer.py   |  6 +++---
 .../data/token_indexers/single_id_token_indexer.py |  8 ++++----
 .../token_const_padding_characters_indexer.py      |  4 +---
 combo/data/token_indexers/token_indexer.py         |  1 -
 combo/data/tokenizers/character_tokenizer.py       |  2 +-
 combo/data/tokenizers/lambo_tokenizer.py           |  5 +++--
 .../tokenizers/pretrained_transformer_tokenizer.py |  2 +-
 combo/data/tokenizers/sentence_splitter.py         |  2 +-
 combo/data/tokenizers/spacy_tokenizer.py           |  3 +--
 combo/data/tokenizers/tokenizer.py                 |  2 +-
 combo/data/tokenizers/whitespace_tokenizer.py      |  2 +-
 combo/data/vocabulary.py                           |  7 +++----
 combo/main.py                                      |  3 +--
 .../token_embedders/character_token_embedder.py    |  2 --
 combo/nn/base.py                                   |  9 +++------
 combo/predictors/predictor_model.py                | 10 ++++------
 combo/training/trainer.py                          | 13 -------------
 26 files changed, 45 insertions(+), 79 deletions(-)
 delete mode 100644 combo/training/trainer.py

diff --git a/combo/config/from_parameters.py b/combo/config/from_parameters.py
index 200c52f..e853042 100644
--- a/combo/config/from_parameters.py
+++ b/combo/config/from_parameters.py
@@ -1,9 +1,7 @@
+import functools
 import inspect
-from typing import Any, Callable, Dict, List, Optional
 import typing
-import functools
-
-import json
+from typing import Any, Callable, Dict, List, Optional
 
 from combo.common.params import Params
 from combo.config.exceptions import RegistryException
diff --git a/combo/config/registry.py b/combo/config/registry.py
index d4b1544..8b12813 100644
--- a/combo/config/registry.py
+++ b/combo/config/registry.py
@@ -1,5 +1,4 @@
-from collections import defaultdict
-from typing import Any, Callable, Optional, Type, Union, Dict, List, Tuple
+from typing import Optional, Type, Dict, Tuple
 
 from combo.config.exceptions import RegistryException
 
diff --git a/combo/data/api.py b/combo/data/api.py
index 649a3a8..6233cc0 100644
--- a/combo/data/api.py
+++ b/combo/data/api.py
@@ -3,7 +3,7 @@ import dataclasses
 import json
 from dataclasses import dataclass, field
 from typing import Optional, List, Dict, Any, Union, Tuple
-from tokenizers import Token
+from combo.data.tokenizers import Token
 
 import conllu
 from overrides import overrides
diff --git a/combo/data/batch.py b/combo/data/batch.py
index 8181354..d6d3785 100644
--- a/combo/data/batch.py
+++ b/combo/data/batch.py
@@ -13,9 +13,9 @@ from combo.common.util import ensure_list
 from combo.data import Instance, Vocabulary
 from combo.utils import ConfigurationError
 
-
 logger = logging.getLogger(__name__)
 
+
 class Batch(Iterable):
     """
     A batch of Instances. In addition to containing the instances themselves,
@@ -79,9 +79,9 @@ class Batch(Iterable):
         return {**padding_lengths}
 
     def as_tensor_dict(
-        self,
-        padding_lengths: Dict[str, Dict[str, int]] = None,
-        verbose: bool = False,
+            self,
+            padding_lengths: Dict[str, Dict[str, int]] = None,
+            verbose: bool = False,
     ) -> Dict[str, Union[torch.Tensor, Dict[str, torch.Tensor]]]:
         # This complex return type is actually predefined elsewhere as a DataArray,
         # but we can't use it because mypy doesn't like it.
diff --git a/combo/data/dataset_readers/conllu.py b/combo/data/dataset_readers/conllu.py
index 21e85b7..ca9cbbf 100644
--- a/combo/data/dataset_readers/conllu.py
+++ b/combo/data/dataset_readers/conllu.py
@@ -7,17 +7,15 @@ import itertools
 import logging
 from typing import Dict, List, Optional, Sequence, Iterable
 
-from overrides import overrides
-
-from combo.data.token_indexers.single_id_token_indexer import SingleIdTokenIndexer
-from combo.data.token_indexers.token_indexer import TokenIndexer, Token
-from combo.utils import ConfigurationError
+from combo.config import Registry
+from combo.config.from_parameters import FromParameters, register_arguments
+from combo.data import Instance
 from combo.data.dataset_readers.dataset_reader import DatasetReader, DatasetReaderInput
 from combo.data.dataset_readers.dataset_utils.span_utils import to_bioul
-from combo.data import Instance
 from combo.data.fields import MetadataField, TextField, Field, SequenceLabelField
-from combo.config import Registry
-from combo.config.from_parameters import FromParameters, register_arguments
+from combo.data.token_indexers.single_id_token_indexer import SingleIdTokenIndexer
+from combo.data.token_indexers.token_indexer import TokenIndexer, Token
+from combo.utils import ConfigurationError
 
 logger = logging.getLogger(__name__)
 
diff --git a/combo/data/dataset_readers/dataset_reader.py b/combo/data/dataset_readers/dataset_reader.py
index 9834cd2..b7bc935 100644
--- a/combo/data/dataset_readers/dataset_reader.py
+++ b/combo/data/dataset_readers/dataset_reader.py
@@ -4,7 +4,7 @@ https://github.com/allenai/allennlp/blob/main/allennlp/data/dataset_readers/data
 """
 import logging
 from os import PathLike
-from typing import Iterable, Iterator, Optional, Union, TypeVar, Dict, List
+from typing import Iterable, Iterator, Optional, Union, Dict, List
 
 from overrides import overrides
 from torch.utils.data import IterableDataset
@@ -13,8 +13,8 @@ from combo.config import FromParameters, Registry
 from combo.config.from_parameters import register_arguments
 from combo.data import SpacyTokenizer, SingleIdTokenIndexer
 from combo.data.instance import Instance
-from combo.data.tokenizers import Tokenizer
 from combo.data.token_indexers import TokenIndexer
+from combo.data.tokenizers import Tokenizer
 
 logger = logging.getLogger(__name__)
 
diff --git a/combo/data/dataset_readers/dataset_utils/span_utils.py b/combo/data/dataset_readers/dataset_utils/span_utils.py
index 4d25add..cb39714 100644
--- a/combo/data/dataset_readers/dataset_utils/span_utils.py
+++ b/combo/data/dataset_readers/dataset_utils/span_utils.py
@@ -4,7 +4,6 @@ https://github.com/allenai/allennlp/blob/80fb6061e568cb9d6ab5d45b661e86eb61b92c8
 """
 
 from typing import Callable, List, Set, Tuple, TypeVar, Optional
-import warnings
 
 from combo.data.tokenizers.tokenizer import Token
 from combo.utils import ConfigurationError, InvalidTagSequence
diff --git a/combo/data/dataset_readers/universal_dependencies_dataset_reader.py b/combo/data/dataset_readers/universal_dependencies_dataset_reader.py
index 8117c45..eb336ae 100644
--- a/combo/data/dataset_readers/universal_dependencies_dataset_reader.py
+++ b/combo/data/dataset_readers/universal_dependencies_dataset_reader.py
@@ -9,9 +9,9 @@ from typing import List, Any, Dict, Iterable, Tuple
 
 import conllu
 import torch
+from conllu import parser
 from overrides import overrides
 
-from combo import data
 from combo.config import Registry
 from combo.config.from_parameters import register_arguments
 from combo.data import Vocabulary, fields, Instance, Token
@@ -22,8 +22,6 @@ from combo.data.fields.metadata_field import MetadataField
 from combo.data.fields.sequence_label_field import SequenceLabelField
 from combo.data.fields.text_field import TextField
 from combo.data.token_indexers import TokenIndexer
-from conllu import parser
-
 from combo.data.vocabulary import get_slices_if_not_provided
 from combo.utils import checks, pad_sequence_to_length
 
diff --git a/combo/data/token_indexers/pretrained_transformer_fixed_mismatched_indexer.py b/combo/data/token_indexers/pretrained_transformer_fixed_mismatched_indexer.py
index 89dc2c8..6fb6a20 100644
--- a/combo/data/token_indexers/pretrained_transformer_fixed_mismatched_indexer.py
+++ b/combo/data/token_indexers/pretrained_transformer_fixed_mismatched_indexer.py
@@ -10,7 +10,6 @@ from overrides import overrides
 from combo.config import Registry
 from combo.config.from_parameters import register_arguments
 from combo.data import Vocabulary
-from combo.data.token_indexers.token_indexer import TokenIndexer
 from combo.data.token_indexers import IndexedTokenList
 from combo.data.token_indexers.pretrained_transformer_indexer import PretrainedTransformerIndexer
 from combo.data.token_indexers.pretrained_transformer_mismatched_indexer import PretrainedTransformerMismatchedIndexer
diff --git a/combo/data/token_indexers/pretrained_transformer_mismatched_indexer.py b/combo/data/token_indexers/pretrained_transformer_mismatched_indexer.py
index 5f5ddc8..161c71d 100644
--- a/combo/data/token_indexers/pretrained_transformer_mismatched_indexer.py
+++ b/combo/data/token_indexers/pretrained_transformer_mismatched_indexer.py
@@ -3,18 +3,18 @@ Adapted from AllenNLP
 https://github.com/allenai/allennlp/blob/main/allennlp/data/token_indexers/pretrained_transformer_mismatched_indexer.py
 """
 
-from typing import Dict, List, Any, Optional
 import logging
+from typing import Dict, List, Any, Optional
 
 import torch
 from overrides import overrides
 
-from combo.config import Registry, FromParameters
+from combo.config import Registry
 from combo.config.from_parameters import register_arguments
 from combo.data import Vocabulary
-from combo.data.tokenizers import Token
 from combo.data.token_indexers import TokenIndexer, IndexedTokenList
 from combo.data.token_indexers.pretrained_transformer_indexer import PretrainedTransformerIndexer
+from combo.data.tokenizers import Token
 from combo.utils import pad_sequence_to_length
 
 logger = logging.getLogger(__name__)
diff --git a/combo/data/token_indexers/single_id_token_indexer.py b/combo/data/token_indexers/single_id_token_indexer.py
index 20489e2..81b99b1 100644
--- a/combo/data/token_indexers/single_id_token_indexer.py
+++ b/combo/data/token_indexers/single_id_token_indexer.py
@@ -3,16 +3,16 @@ Adapted from AllenNLP
 https://github.com/allenai/allennlp/blob/80fb6061e568cb9d6ab5d45b661e86eb61b92c82/allennlp/data/token_indexers/single_id_token_indexer.py
 """
 
-from typing import Dict, List, Optional, Any
 import itertools
+from typing import Dict, List, Optional
 
 from overrides import overrides
 
-from combo.config import FromParameters, Registry
+from combo.config import Registry
 from combo.config.from_parameters import register_arguments
-from combo.data.vocabulary import Vocabulary
-from combo.data.tokenizers import Token
 from combo.data.token_indexers import TokenIndexer, IndexedTokenList
+from combo.data.tokenizers import Token
+from combo.data.vocabulary import Vocabulary
 
 _DEFAULT_VALUE = "THIS IS A REALLY UNLIKELY VALUE THAT HAS TO BE A STRING"
 
diff --git a/combo/data/token_indexers/token_const_padding_characters_indexer.py b/combo/data/token_indexers/token_const_padding_characters_indexer.py
index 10f54c8..ea1d89e 100644
--- a/combo/data/token_indexers/token_const_padding_characters_indexer.py
+++ b/combo/data/token_indexers/token_const_padding_characters_indexer.py
@@ -7,13 +7,11 @@ import itertools
 from typing import List, Dict
 
 import torch
+from overrides import overrides
 
 from combo.config import Registry
 from combo.config.from_parameters import register_arguments
 from combo.data.token_indexers import IndexedTokenList
-from combo.data.token_indexers.token_indexer import TokenIndexer
-from overrides import overrides
-
 from combo.data.token_indexers.token_characters_indexer import TokenCharactersIndexer
 from combo.data.tokenizers import CharacterTokenizer
 from combo.utils import pad_sequence_to_length
diff --git a/combo/data/token_indexers/token_indexer.py b/combo/data/token_indexers/token_indexer.py
index b2c86d4..b4b2d4c 100644
--- a/combo/data/token_indexers/token_indexer.py
+++ b/combo/data/token_indexers/token_indexer.py
@@ -6,7 +6,6 @@ https://github.com/allenai/allennlp/blob/main/allennlp/data/token_indexers/token
 from typing import Any, Dict, List
 
 import torch
-from overrides import overrides
 
 from combo.config import FromParameters
 from combo.data.tokenizers.tokenizer import Token
diff --git a/combo/data/tokenizers/character_tokenizer.py b/combo/data/tokenizers/character_tokenizer.py
index 6b66c13..b407e6f 100644
--- a/combo/data/tokenizers/character_tokenizer.py
+++ b/combo/data/tokenizers/character_tokenizer.py
@@ -3,7 +3,7 @@ Adapted from AllenNLP
 https://github.com/allenai/allennlp/blob/main/allennlp/data/tokenizers/character_tokenizer.py
 """
 
-from typing import List, Union, Dict, Any
+from typing import List, Union
 
 from combo.config import Registry
 from combo.config.from_parameters import register_arguments
diff --git a/combo/data/tokenizers/lambo_tokenizer.py b/combo/data/tokenizers/lambo_tokenizer.py
index 2105a40..f37b076 100644
--- a/combo/data/tokenizers/lambo_tokenizer.py
+++ b/combo/data/tokenizers/lambo_tokenizer.py
@@ -1,10 +1,11 @@
-from typing import List, Dict, Any
+from typing import List
+
+from lambo.segmenter.lambo import Lambo
 
 from combo.config import Registry
 from combo.config.from_parameters import register_arguments
 from combo.data.tokenizers.token import Token
 from combo.data.tokenizers.tokenizer import Tokenizer
-from lambo.segmenter.lambo import Lambo
 
 
 @Registry.register('lambo_tokenizer')
diff --git a/combo/data/tokenizers/pretrained_transformer_tokenizer.py b/combo/data/tokenizers/pretrained_transformer_tokenizer.py
index b884a18..cb12d2a 100644
--- a/combo/data/tokenizers/pretrained_transformer_tokenizer.py
+++ b/combo/data/tokenizers/pretrained_transformer_tokenizer.py
@@ -8,7 +8,7 @@ import dataclasses
 import logging
 from typing import Any, Dict, List, Optional, Tuple, Iterable
 
-from transformers import PreTrainedTokenizer, AutoTokenizer
+from transformers import PreTrainedTokenizer
 
 from combo.config import Registry
 from combo.config.from_parameters import register_arguments
diff --git a/combo/data/tokenizers/sentence_splitter.py b/combo/data/tokenizers/sentence_splitter.py
index c0383c9..250b01e 100644
--- a/combo/data/tokenizers/sentence_splitter.py
+++ b/combo/data/tokenizers/sentence_splitter.py
@@ -2,7 +2,7 @@
 Adapted from AllenNLP
 https://github.com/allenai/allennlp/blob/80fb6061e568cb9d6ab5d45b661e86eb61b92c82/allennlp/data/tokenizers/sentence_splitter.py
 """
-from typing import List, Dict, Any
+from typing import List
 
 import spacy
 
diff --git a/combo/data/tokenizers/spacy_tokenizer.py b/combo/data/tokenizers/spacy_tokenizer.py
index d53bc6f..b884aae 100644
--- a/combo/data/tokenizers/spacy_tokenizer.py
+++ b/combo/data/tokenizers/spacy_tokenizer.py
@@ -3,10 +3,9 @@ Adapted from AllenNLP
 https://github.com/allenai/allennlp/blob/main/allennlp/data/tokenizers/spacy_tokenizer.py
 """
 
-from typing import List, Optional, Dict
+from typing import List, Optional
 
 import spacy
-from overrides import overrides
 from spacy.tokens import Doc
 
 from combo.config import Registry
diff --git a/combo/data/tokenizers/tokenizer.py b/combo/data/tokenizers/tokenizer.py
index 4a6ea3c..7b9269c 100644
--- a/combo/data/tokenizers/tokenizer.py
+++ b/combo/data/tokenizers/tokenizer.py
@@ -4,7 +4,7 @@ https://github.com/allenai/allennlp/blob/main/allennlp/data/tokenizers/tokenizer
 """
 
 import logging
-from .token import Token
+from combo.data.tokenizers.token import Token
 from typing import List, Optional
 
 from combo.config import FromParameters
diff --git a/combo/data/tokenizers/whitespace_tokenizer.py b/combo/data/tokenizers/whitespace_tokenizer.py
index 84a54ef..eaf74f7 100644
--- a/combo/data/tokenizers/whitespace_tokenizer.py
+++ b/combo/data/tokenizers/whitespace_tokenizer.py
@@ -1,4 +1,4 @@
-from typing import List, Dict, Any
+from typing import List
 
 from combo.config import Registry
 from combo.data.tokenizers.token import Token
diff --git a/combo/data/vocabulary.py b/combo/data/vocabulary.py
index 9f711aa..4f3565c 100644
--- a/combo/data/vocabulary.py
+++ b/combo/data/vocabulary.py
@@ -1,12 +1,11 @@
 import codecs
+import glob
 import json
+import logging
 import os
 import re
-import glob
 from collections import defaultdict
-from typing import Dict, Optional, Iterable, Set, List, Union, Any
-
-import logging
+from typing import Dict, Optional, Iterable, Set, List, Union
 
 from filelock import FileLock
 from transformers import PreTrainedTokenizer
diff --git a/combo/main.py b/combo/main.py
index 65119f9..2faaf18 100755
--- a/combo/main.py
+++ b/combo/main.py
@@ -5,8 +5,7 @@ import tempfile
 from typing import Dict
 
 import torch
-from absl import app
-from absl import flags
+from absl import app, flags
 import pytorch_lightning as pl
 
 from combo.training.trainable_combo import TrainableCombo
diff --git a/combo/modules/token_embedders/character_token_embedder.py b/combo/modules/token_embedders/character_token_embedder.py
index 7dfce11..1967ecf 100644
--- a/combo/modules/token_embedders/character_token_embedder.py
+++ b/combo/modules/token_embedders/character_token_embedder.py
@@ -11,9 +11,7 @@ from combo.data import Vocabulary
 from combo.modules.dilated_cnn import DilatedCnnEncoder
 from combo.modules.token_embedders import TokenEmbedder
 
-"""Embeddings."""
 from typing import Optional
-
 import torch
 import torch.nn as nn
 from combo import modules
diff --git a/combo/nn/base.py b/combo/nn/base.py
index 90a71e1..9e16607 100644
--- a/combo/nn/base.py
+++ b/combo/nn/base.py
@@ -1,14 +1,11 @@
-from typing import Dict, Optional, List, Union, Tuple
+from typing import Optional, List, Union, Tuple
 
 import torch
 import torch.nn as nn
 
-from combo.config.registry import Registry
-from combo.config.from_parameters import FromParameters, register_arguments
 import combo.utils.checks as checks
-from combo.data.vocabulary import Vocabulary
-from combo.nn.utils import masked_cross_entropy
-from combo.predictors.predictor import Predictor
+from combo.config.from_parameters import FromParameters, register_arguments
+from combo.config.registry import Registry
 
 
 @Registry.register("linear_layer")
diff --git a/combo/predictors/predictor_model.py b/combo/predictors/predictor_model.py
index d9e1b1e..7002509 100644
--- a/combo/predictors/predictor_model.py
+++ b/combo/predictors/predictor_model.py
@@ -3,25 +3,23 @@ Adapted from AllenNLP
 https://github.com/allenai/allennlp/blob/main/allennlp/predictors/predictor.py
 """
 
-from typing import List, Iterator, Dict, Tuple, Any, Union
-import logging
 import json
+import logging
 import re
 from contextlib import contextmanager
+from typing import List, Iterator, Dict, Tuple, Any
 
 import numpy
+import pytorch_lightning as pl
 import torch
 from overrides import overrides
-from torch.utils.hooks import RemovableHandle
 from torch import Tensor
 from torch import backends
-
-import pytorch_lightning as pl
+from torch.utils.hooks import RemovableHandle
 
 from combo.common.util import sanitize
 from combo.config import FromParameters
 from combo.data.batch import Batch
-from combo.data.dataset_loaders.dataset_loader import TensorDict
 from combo.data.dataset_readers.dataset_reader import DatasetReader
 from combo.data.instance import JsonDict, Instance
 from combo.modules.model import Model
diff --git a/combo/training/trainer.py b/combo/training/trainer.py
deleted file mode 100644
index ebb8ff0..0000000
--- a/combo/training/trainer.py
+++ /dev/null
@@ -1,13 +0,0 @@
-from pytorch_lightning import Trainer
-
-
-class Callback:
-    pass
-
-
-class TransferPatienceEpochCallback:
-    pass
-
-
-class GradientDescentTrainer(Trainer):
-    pass
-- 
GitLab