Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add isort to pre-commit hooks #184

Merged
merged 6 commits into from
Sep 3, 2023
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 4 additions & 1 deletion .github/workflows/python-package-macos.yml
Original file line number Diff line number Diff line change
Expand Up @@ -39,11 +39,14 @@ jobs:
- name: Install dependencies
run: |
python -m pip install --upgrade pip
python -m pip install flake8 pytest black
python -m pip install flake8 pytest black isort
pip install -e .
- name: Check formatting with black
run: |
black --check .
- name: Check imports with isort
run: |
isort -c .
- name: Lint with flake8
run: |
# stop the build if there are Python syntax errors or undefined names
Expand Down
5 changes: 4 additions & 1 deletion .github/workflows/python-package-ubuntu.yml
Original file line number Diff line number Diff line change
Expand Up @@ -42,11 +42,14 @@ jobs:
- name: Install dependencies
run: |
python -m pip install --upgrade pip
python -m pip install flake8 pytest black
python -m pip install flake8 pytest black isort
pip install -e .
- name: Check formatting with black
run: |
black --check .
- name: Check imports with isort
run: |
isort -c .
- name: Lint with flake8
run: |
# stop the build if there are Python syntax errors or undefined names
Expand Down
5 changes: 4 additions & 1 deletion .github/workflows/python-package-windows.yml
Original file line number Diff line number Diff line change
Expand Up @@ -39,11 +39,14 @@ jobs:
- name: Install dependencies
run: |
python -m pip install --upgrade pip
python -m pip install flake8 pytest black
python -m pip install flake8 pytest black isort
pip install -e .
- name: Check formatting with black
run: |
black --check .
- name: Check imports with isort
run: |
isort -c .
- name: Lint with flake8
run: |
# stop the build if there are Python syntax errors or undefined names
Expand Down
5 changes: 5 additions & 0 deletions .pre-commit-config.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -8,3 +8,8 @@ repos:
hooks:
- id: flake8
args: [--count, "--select=E9,F63,F7,F82", --show-source, --statistics, --]
- repo: https://github.com/pycqa/isort
rev: 5.12.0
hooks:
- id: isort
name: isort (python)
10 changes: 4 additions & 6 deletions docker/model_download.py
Original file line number Diff line number Diff line change
@@ -1,10 +1,8 @@
import os
from transformers import (
AutoConfig,
AutoModel,
AutoTokenizer,
)
from cnlpt.CnlpModelForClassification import CnlpModelForClassification, CnlpConfig

from transformers import AutoConfig, AutoModel, AutoTokenizer

from cnlpt.CnlpModelForClassification import CnlpConfig, CnlpModelForClassification
from cnlpt.HierarchicalTransformer import HierarchicalModel
from cnlpt.train_system import is_hub_model

Expand Down
3 changes: 3 additions & 0 deletions pyproject.toml
Original file line number Diff line number Diff line change
@@ -1,3 +1,6 @@
[build-system]
requires = ["setuptools", "wheel"]
build-backend = "setuptools.build_meta"

[tool.isort]
profile = "black"
2 changes: 1 addition & 1 deletion src/cnlpt/BaselineModels.py
Original file line number Diff line number Diff line change
@@ -1,8 +1,8 @@
from typing import Dict, List

import torch
from torch import nn
import torch.nn.functional as F
from torch import nn


class CnnSentenceClassifier(nn.Module):
Expand Down
18 changes: 9 additions & 9 deletions src/cnlpt/CnlpModelForClassification.py
Original file line number Diff line number Diff line change
Expand Up @@ -4,21 +4,21 @@
# from transformers.models.auto import AutoModel, AutoConfig
import copy
import inspect
import logging
import math
import random
from os import PathLike
from typing import Optional, List, Any, Dict, Union

from transformers import AutoModel, AutoConfig
from transformers.modeling_utils import PreTrainedModel
from transformers.configuration_utils import PretrainedConfig
from typing import Any, Dict, List, Optional, Union

import torch
from torch import nn
import logging
from torch.nn import CrossEntropyLoss, MSELoss
from torch.nn.functional import relu, softmax
from transformers import AutoConfig, AutoModel
from transformers.configuration_utils import PretrainedConfig
from transformers.modeling_outputs import SequenceClassifierOutput
from torch.nn.functional import softmax, relu
import math
import random
from transformers.modeling_utils import PreTrainedModel

from . import __version__ as cnlpt_version

logger = logging.getLogger(__name__)
Expand Down
16 changes: 8 additions & 8 deletions src/cnlpt/HierarchicalTransformer.py
Original file line number Diff line number Diff line change
@@ -1,26 +1,26 @@
"""
Module containing the Hierarchical Transformer module, adapted from Xin Su.
"""
import logging
import copy
import logging
import random
from typing import Optional, List, cast, Dict, Tuple
from dataclasses import dataclass
from typing import Dict, List, Optional, Tuple, cast

import numpy as np
from torch import nn
import torch.nn.functional as F
import torch
import torch.nn.functional as F
from torch import nn
from torch.nn import CrossEntropyLoss
from dataclasses import dataclass
from transformers import AutoConfig, AutoModel
from transformers.modeling_outputs import SequenceClassifierOutput
from transformers.modeling_utils import PreTrainedModel
from transformers import AutoModel, AutoConfig

from .CnlpModelForClassification import (
CnlpConfig,
ClassificationHead,
generalize_encoder_forward_kwargs,
CnlpConfig,
freeze_encoder_weights,
generalize_encoder_forward_kwargs,
)

logger = logging.getLogger(__name__)
Expand Down
3 changes: 3 additions & 0 deletions src/cnlpt/api/cnlp_rest.py
Original file line number Diff line number Diff line change
@@ -1,3 +1,6 @@
"""
isort:skip_file
"""
# Core python imports
import os

Expand Down
13 changes: 6 additions & 7 deletions src/cnlpt/api/cnn_rest.py
Original file line number Diff line number Diff line change
Expand Up @@ -14,20 +14,19 @@
# KIND, either express or implied. See the License for the
# specific language governing permissions and limitations
# under the License.
from fastapi import FastAPI

import json
import logging
import os
from os.path import join
import sys
import json
from os.path import join

from transformers import AutoTokenizer, Trainer
import torch
import numpy as np
import torch
from fastapi import FastAPI
from transformers import AutoTokenizer, Trainer

from .cnlp_rest import UnannotatedDocument, get_dataset
from ..BaselineModels import CnnSentenceClassifier
from .cnlp_rest import UnannotatedDocument, get_dataset

app = FastAPI()
model_name = os.getenv("MODEL_PATH")
Expand Down
13 changes: 6 additions & 7 deletions src/cnlpt/api/current_rest.py
Original file line number Diff line number Diff line change
Expand Up @@ -14,21 +14,20 @@
# KIND, either express or implied. See the License for the
# specific language governing permissions and limitations
# under the License.
import logging
from time import time
from typing import List

import numpy as np
from fastapi import FastAPI
from pydantic import BaseModel

from typing import List

from .cnlp_rest import (
EntityDocument,
create_instance_string,
initialize_cnlpt_model,
get_dataset,
initialize_cnlpt_model,
)
import numpy as np

import logging
from time import time

app = FastAPI()
model_name = "mlml-chip/current-thyme"
Expand Down
30 changes: 15 additions & 15 deletions src/cnlpt/api/dtr_rest.py
Original file line number Diff line number Diff line change
Expand Up @@ -14,21 +14,14 @@
# KIND, either express or implied. See the License for the
# specific language governing permissions and limitations
# under the License.
from fastapi import FastAPI
from pydantic import BaseModel
import logging
from typing import List
from time import time
from typing import List

from ..CnlpModelForClassification import CnlpModelForClassification, CnlpConfig
from .cnlp_rest import (
EntityDocument,
initialize_cnlpt_model,
create_instance_string,
get_dataset,
)
from .temporal_rest import dtr_label_list, old_dtr_label_list

import numpy as np
from fastapi import FastAPI
from pydantic import BaseModel
from torch.utils.data.dataset import Dataset
from transformers import (
AutoConfig,
AutoModel,
Expand All @@ -37,9 +30,16 @@
Trainer,
TrainingArguments,
)
from transformers.data.processors.utils import InputFeatures, InputExample
from torch.utils.data.dataset import Dataset
import numpy as np
from transformers.data.processors.utils import InputExample, InputFeatures

from ..CnlpModelForClassification import CnlpConfig, CnlpModelForClassification
from .cnlp_rest import (
EntityDocument,
create_instance_string,
get_dataset,
initialize_cnlpt_model,
)
from .temporal_rest import dtr_label_list, old_dtr_label_list

app = FastAPI()
model_name = "tmills/tiny-dtr"
Expand Down
25 changes: 13 additions & 12 deletions src/cnlpt/api/event_rest.py
Original file line number Diff line number Diff line change
Expand Up @@ -15,27 +15,28 @@
# specific language governing permissions and limitations
# under the License.

import logging
import os
from time import time
from typing import Dict, List, Tuple

import numpy as np
from fastapi import FastAPI
from nltk.tokenize import wordpunct_tokenize as tokenize
from pydantic import BaseModel
from typing import List, Tuple, Dict
from transformers.data.processors.utils import InputFeatures, InputExample
from torch.utils.data.dataset import Dataset
import numpy as np
from .cnlp_rest import initialize_cnlpt_model, get_dataset
from ..CnlpModelForClassification import CnlpModelForClassification, CnlpConfig
from seqeval.metrics.sequence_labeling import get_entities
import logging
from time import time
from nltk.tokenize import wordpunct_tokenize as tokenize
from torch.utils.data.dataset import Dataset
from transformers.data.processors.utils import InputExample, InputFeatures

from ..CnlpModelForClassification import CnlpConfig, CnlpModelForClassification
from .cnlp_rest import get_dataset, initialize_cnlpt_model
from .temporal_rest import (
event_label_list,
TokenizedSentenceDocument,
SentenceDocument,
Event,
SentenceDocument,
TemporalResults,
TokenizedSentenceDocument,
create_instance_string,
event_label_list,
)

app = FastAPI()
Expand Down
19 changes: 9 additions & 10 deletions src/cnlpt/api/hier_rest.py
Original file line number Diff line number Diff line change
Expand Up @@ -14,25 +14,24 @@
# KIND, either express or implied. See the License for the
# specific language governing permissions and limitations
# under the License.
import logging
import os
from time import time
from typing import Dict, List, Tuple

import numpy as np
import torch
from fastapi import FastAPI
from pydantic import BaseModel

from typing import List, Tuple, Dict

from ..CnlpModelForClassification import CnlpConfig, CnlpModelForClassification
from .cnlp_rest import (
UnannotatedDocument,
create_instance_string,
get_dataset,
initialize_cnlpt_model,
initialize_hier_model,
get_dataset,
)
from ..CnlpModelForClassification import CnlpModelForClassification, CnlpConfig
import torch
import numpy as np

import logging
from time import time
import os

app = FastAPI()
model_name = os.getenv("MODEL_PATH")
Expand Down
15 changes: 7 additions & 8 deletions src/cnlpt/api/negation_rest.py
Original file line number Diff line number Diff line change
Expand Up @@ -14,22 +14,21 @@
# KIND, either express or implied. See the License for the
# specific language governing permissions and limitations
# under the License.
import logging
from time import time
from typing import Dict, List, Tuple

import numpy as np
from fastapi import FastAPI
from pydantic import BaseModel

from typing import List, Tuple, Dict

from ..CnlpModelForClassification import CnlpConfig, CnlpModelForClassification
from .cnlp_rest import (
EntityDocument,
create_instance_string,
initialize_cnlpt_model,
get_dataset,
initialize_cnlpt_model,
)
from ..CnlpModelForClassification import CnlpModelForClassification, CnlpConfig
import numpy as np

import logging
from time import time

app = FastAPI()
model_name = "mlml-chip/negation_pubmedbert_sharpseed"
Expand Down
16 changes: 9 additions & 7 deletions src/cnlpt/api/temporal_rest.py
Original file line number Diff line number Diff line change
Expand Up @@ -15,17 +15,19 @@
# specific language governing permissions and limitations
# under the License.

import logging
import os
from time import time
from typing import Dict, List, Tuple, Union

import numpy as np
from fastapi import FastAPI
from nltk.tokenize import wordpunct_tokenize as tokenize
from pydantic import BaseModel
from typing import List, Tuple, Dict, Union
import numpy as np
from .cnlp_rest import create_instance_string, initialize_cnlpt_model, get_dataset
from ..CnlpModelForClassification import CnlpModelForClassification, CnlpConfig
from seqeval.metrics.sequence_labeling import get_entities
import logging
from time import time
from nltk.tokenize import wordpunct_tokenize as tokenize

from ..CnlpModelForClassification import CnlpConfig, CnlpModelForClassification
from .cnlp_rest import create_instance_string, get_dataset, initialize_cnlpt_model

app = FastAPI()
model_name = "mlml-chip/thyme2_colon_e2e"
Expand Down
Loading