@@ -4,13 +4,13 @@ __all__ = [ | |||||
] | ] | ||||
from typing import Union | from typing import Union | ||||
import warnings | |||||
import numpy as np | import numpy as np | ||||
from fastNLP.core.metrics.metric import Metric | from fastNLP.core.metrics.metric import Metric | ||||
from fastNLP.core.metrics.backend import Backend | from fastNLP.core.metrics.backend import Backend | ||||
from fastNLP.core.utils.seq_len_to_mask import seq_len_to_mask | from fastNLP.core.utils.seq_len_to_mask import seq_len_to_mask | ||||
from fastNLP.core.log import logger | |||||
class Accuracy(Metric): | class Accuracy(Metric): | ||||
@@ -69,7 +69,7 @@ class Accuracy(Metric): | |||||
elif pred.ndim == target.ndim + 1: | elif pred.ndim == target.ndim + 1: | ||||
pred = pred.argmax(axis=-1) | pred = pred.argmax(axis=-1) | ||||
if seq_len is None and target.ndim > 1: | if seq_len is None and target.ndim > 1: | ||||
warnings.warn("You are not passing `seq_len` to exclude pad when calculate accuracy.") | |||||
logger.warn("You are not passing `seq_len` to exclude pad when calculate accuracy.") | |||||
else: | else: | ||||
raise RuntimeError(f"when pred have size:{pred.shape}, target should have size: {pred.shape} or " | raise RuntimeError(f"when pred have size:{pred.shape}, target should have size: {pred.shape} or " | ||||
@@ -4,7 +4,6 @@ __all__ = [ | |||||
from typing import Union, List | from typing import Union, List | ||||
from collections import Counter | from collections import Counter | ||||
import warnings | |||||
import numpy as np | import numpy as np | ||||
from .metric import Metric | from .metric import Metric | ||||
@@ -12,7 +11,7 @@ from .backend import Backend | |||||
from fastNLP.core.vocabulary import Vocabulary | from fastNLP.core.vocabulary import Vocabulary | ||||
from fastNLP.core.utils.seq_len_to_mask import seq_len_to_mask | from fastNLP.core.utils.seq_len_to_mask import seq_len_to_mask | ||||
from .utils import _compute_f_pre_rec | from .utils import _compute_f_pre_rec | ||||
from fastNLP.core.log import logger | |||||
class ClassifyFPreRecMetric(Metric): | class ClassifyFPreRecMetric(Metric): | ||||
def __init__(self, tag_vocab: Vocabulary = None, ignore_labels: List[str] = None, | def __init__(self, tag_vocab: Vocabulary = None, ignore_labels: List[str] = None, | ||||
@@ -157,7 +156,7 @@ class ClassifyFPreRecMetric(Metric): | |||||
elif pred.ndim == target.ndim + 1: | elif pred.ndim == target.ndim + 1: | ||||
pred = pred.argmax(axis=-1) | pred = pred.argmax(axis=-1) | ||||
if seq_len is None and target.ndim > 1: | if seq_len is None and target.ndim > 1: | ||||
warnings.warn("You are not passing `seq_len` to exclude pad when calculate accuracy.") | |||||
logger.warn("You are not passing `seq_len` to exclude pad when calculate accuracy.") | |||||
else: | else: | ||||
raise RuntimeError(f"when pred have " | raise RuntimeError(f"when pred have " | ||||
f"size:{pred.shape}, target should have size: {pred.shape} or " | f"size:{pred.shape}, target should have size: {pred.shape} or " | ||||
@@ -3,12 +3,12 @@ __all__ = [ | |||||
] | ] | ||||
from typing import Union, List, Optional | from typing import Union, List, Optional | ||||
import warnings | |||||
from collections import Counter | from collections import Counter | ||||
from fastNLP.core.metrics.backend import Backend | from fastNLP.core.metrics.backend import Backend | ||||
from fastNLP.core.metrics.metric import Metric | from fastNLP.core.metrics.metric import Metric | ||||
from fastNLP.core.vocabulary import Vocabulary | from fastNLP.core.vocabulary import Vocabulary | ||||
from fastNLP.core.log import logger | |||||
from .utils import _compute_f_pre_rec | from .utils import _compute_f_pre_rec | ||||
@@ -39,7 +39,7 @@ def _check_tag_vocab_and_encoding_type(tag_vocab: Union[Vocabulary, dict], encod | |||||
f"encoding_type." | f"encoding_type." | ||||
tags = tags.replace(tag, '') # 删除该值 | tags = tags.replace(tag, '') # 删除该值 | ||||
if tags: # 如果不为空,说明出现了未使用的tag | if tags: # 如果不为空,说明出现了未使用的tag | ||||
warnings.warn(f"Tag:{tags} in encoding type:{encoding_type} is not presented in your Vocabulary. Check your " | |||||
logger.warn(f"Tag:{tags} in encoding type:{encoding_type} is not presented in your Vocabulary. Check your " | |||||
"encoding_type.") | "encoding_type.") | ||||
@@ -2,7 +2,6 @@ import functools | |||||
import inspect | import inspect | ||||
from inspect import Parameter | from inspect import Parameter | ||||
import dataclasses | import dataclasses | ||||
import warnings | |||||
from dataclasses import is_dataclass | from dataclasses import is_dataclass | ||||
from copy import deepcopy | from copy import deepcopy | ||||
from collections import defaultdict, OrderedDict | from collections import defaultdict, OrderedDict | ||||
@@ -555,7 +554,7 @@ def deprecated(help_message: Optional[str] = None): | |||||
def wrapper(*args, **kwargs): | def wrapper(*args, **kwargs): | ||||
func_hash = hash(deprecated_function) | func_hash = hash(deprecated_function) | ||||
if func_hash not in _emitted_deprecation_warnings: | if func_hash not in _emitted_deprecation_warnings: | ||||
warnings.warn(warning_msg, category=FutureWarning, stacklevel=2) | |||||
logger.warn(warning_msg, category=FutureWarning, stacklevel=2) | |||||
_emitted_deprecation_warnings.add(func_hash) | _emitted_deprecation_warnings.add(func_hash) | ||||
return deprecated_function(*args, **kwargs) | return deprecated_function(*args, **kwargs) | ||||
@@ -7,7 +7,6 @@ __all__ = [ | |||||
"StaticEmbedding" | "StaticEmbedding" | ||||
] | ] | ||||
import os | import os | ||||
import warnings | |||||
from collections import defaultdict | from collections import defaultdict | ||||
from copy import deepcopy | from copy import deepcopy | ||||
import json | import json | ||||
@@ -15,6 +14,7 @@ from typing import Union | |||||
import numpy as np | import numpy as np | ||||
from fastNLP.core.log import logger | |||||
from .embedding import TokenEmbedding | from .embedding import TokenEmbedding | ||||
from ...core import logger | from ...core import logger | ||||
from ...core.vocabulary import Vocabulary | from ...core.vocabulary import Vocabulary | ||||
@@ -286,7 +286,7 @@ class StaticEmbedding(TokenEmbedding): | |||||
if word in vocab: | if word in vocab: | ||||
index = vocab.to_index(word) | index = vocab.to_index(word) | ||||
if index in matrix: | if index in matrix: | ||||
warnings.warn(f"Word has more than one vector in embedding file. Set logger level to " | |||||
logger.warn(f"Word has more than one vector in embedding file. Set logger level to " | |||||
f"DEBUG for detail.") | f"DEBUG for detail.") | ||||
logger.debug(f"Word:{word} occurs again in line:{idx}(starts from 0)") | logger.debug(f"Word:{word} occurs again in line:{idx}(starts from 0)") | ||||
matrix[index] = torch.from_numpy(np.fromstring(' '.join(nums), sep=' ', dtype=dtype, count=dim)) | matrix[index] = torch.from_numpy(np.fromstring(' '.join(nums), sep=' ', dtype=dtype, count=dim)) | ||||
@@ -295,7 +295,7 @@ class StaticEmbedding(TokenEmbedding): | |||||
found_count += 1 | found_count += 1 | ||||
except Exception as e: | except Exception as e: | ||||
if error == 'ignore': | if error == 'ignore': | ||||
warnings.warn("Error occurred at the {} line.".format(idx)) | |||||
logger.warn("Error occurred at the {} line.".format(idx)) | |||||
else: | else: | ||||
logger.error("Error occurred at the {} line.".format(idx)) | logger.error("Error occurred at the {} line.".format(idx)) | ||||
raise e | raise e | ||||
@@ -9,12 +9,12 @@ __all__ = [ | |||||
import logging | import logging | ||||
import os | import os | ||||
import warnings | |||||
import numpy as np | import numpy as np | ||||
from fastNLP.core.utils.utils import Option | from fastNLP.core.utils.utils import Option | ||||
from fastNLP.core.vocabulary import Vocabulary | from fastNLP.core.vocabulary import Vocabulary | ||||
from fastNLP.core.log import logger | |||||
class EmbeddingOption(Option): | class EmbeddingOption(Option): | ||||
@@ -91,7 +91,7 @@ class EmbedLoader: | |||||
hit_flags[index] = True | hit_flags[index] = True | ||||
except Exception as e: | except Exception as e: | ||||
if error == 'ignore': | if error == 'ignore': | ||||
warnings.warn("Error occurred at the {} line.".format(idx)) | |||||
logger.warn("Error occurred at the {} line.".format(idx)) | |||||
else: | else: | ||||
logging.error("Error occurred at the {} line.".format(idx)) | logging.error("Error occurred at the {} line.".format(idx)) | ||||
raise e | raise e | ||||
@@ -156,7 +156,7 @@ class EmbedLoader: | |||||
found_pad = True | found_pad = True | ||||
except Exception as e: | except Exception as e: | ||||
if error == 'ignore': | if error == 'ignore': | ||||
warnings.warn("Error occurred at the {} line.".format(idx)) | |||||
logger.warn("Error occurred at the {} line.".format(idx)) | |||||
pass | pass | ||||
else: | else: | ||||
logging.error("Error occurred at the {} line.".format(idx)) | logging.error("Error occurred at the {} line.".format(idx)) | ||||
@@ -25,11 +25,10 @@ import os | |||||
import random | import random | ||||
import shutil | import shutil | ||||
import time | import time | ||||
import warnings | |||||
from .loader import Loader | from .loader import Loader | ||||
from fastNLP.core.dataset import Instance, DataSet | from fastNLP.core.dataset import Instance, DataSet | ||||
from ...core import logger | |||||
from fastNLP.core.log import logger | |||||
# from ...core._logger import log | # from ...core._logger import log | ||||
@@ -346,7 +345,7 @@ class SST2Loader(Loader): | |||||
with open(path, 'r', encoding='utf-8') as f: | with open(path, 'r', encoding='utf-8') as f: | ||||
f.readline() # 跳过header | f.readline() # 跳过header | ||||
if 'test' in os.path.split(path)[1]: | if 'test' in os.path.split(path)[1]: | ||||
warnings.warn("SST2's test file has no target.") | |||||
logger.warn("SST2's test file has no target.") | |||||
for line in f: | for line in f: | ||||
line = line.strip() | line = line.strip() | ||||
if line: | if line: | ||||
@@ -12,7 +12,6 @@ __all__ = [ | |||||
] | ] | ||||
import os | import os | ||||
import warnings | |||||
from typing import Union, Dict | from typing import Union, Dict | ||||
from .csv import CSVLoader | from .csv import CSVLoader | ||||
@@ -22,6 +21,7 @@ from fastNLP.io.data_bundle import DataBundle | |||||
from ..utils import check_loader_paths | from ..utils import check_loader_paths | ||||
# from ...core.const import Const | # from ...core.const import Const | ||||
from fastNLP.core.dataset import DataSet, Instance | from fastNLP.core.dataset import DataSet, Instance | ||||
from fastNLP.core.log import logger | |||||
class MNLILoader(Loader): | class MNLILoader(Loader): | ||||
@@ -55,7 +55,7 @@ class MNLILoader(Loader): | |||||
with open(path, 'r', encoding='utf-8') as f: | with open(path, 'r', encoding='utf-8') as f: | ||||
f.readline() # 跳过header | f.readline() # 跳过header | ||||
if path.endswith("test_matched.tsv") or path.endswith('test_mismatched.tsv'): | if path.endswith("test_matched.tsv") or path.endswith('test_mismatched.tsv'): | ||||
warnings.warn("MNLI's test file has no target.") | |||||
logger.warn("MNLI's test file has no target.") | |||||
for line in f: | for line in f: | ||||
line = line.strip() | line = line.strip() | ||||
if line: | if line: | ||||
@@ -227,7 +227,7 @@ class QNLILoader(JsonLoader): | |||||
with open(path, 'r', encoding='utf-8') as f: | with open(path, 'r', encoding='utf-8') as f: | ||||
f.readline() # 跳过header | f.readline() # 跳过header | ||||
if path.endswith("test.tsv"): | if path.endswith("test.tsv"): | ||||
warnings.warn("QNLI's test file has no target.") | |||||
logger.warn("QNLI's test file has no target.") | |||||
for line in f: | for line in f: | ||||
line = line.strip() | line = line.strip() | ||||
if line: | if line: | ||||
@@ -289,7 +289,7 @@ class RTELoader(Loader): | |||||
with open(path, 'r', encoding='utf-8') as f: | with open(path, 'r', encoding='utf-8') as f: | ||||
f.readline() # 跳过header | f.readline() # 跳过header | ||||
if path.endswith("test.tsv"): | if path.endswith("test.tsv"): | ||||
warnings.warn("RTE's test file has no target.") | |||||
logger.warn("RTE's test file has no target.") | |||||
for line in f: | for line in f: | ||||
line = line.strip() | line = line.strip() | ||||
if line: | if line: | ||||
@@ -16,7 +16,6 @@ __all__ = [ | |||||
] | ] | ||||
import re | import re | ||||
import warnings | |||||
try: | try: | ||||
from nltk import Tree | from nltk import Tree | ||||
@@ -33,6 +32,7 @@ from ..loader.classification import IMDBLoader, YelpFullLoader, SSTLoader, SST2L | |||||
# from ...core._logger import log | # from ...core._logger import log | ||||
# from ...core.const import Const | # from ...core.const import Const | ||||
from fastNLP.core.dataset import DataSet, Instance | from fastNLP.core.dataset import DataSet, Instance | ||||
from fastNLP.core.log import logger | |||||
class CLSBasePipe(Pipe): | class CLSBasePipe(Pipe): | ||||
@@ -24,8 +24,7 @@ __all__ = [ | |||||
"MachingTruncatePipe", | "MachingTruncatePipe", | ||||
] | ] | ||||
import warnings | |||||
from fastNLP.core.log import logger | |||||
from .pipe import Pipe | from .pipe import Pipe | ||||
from .utils import get_tokenizer | from .utils import get_tokenizer | ||||
from ..data_bundle import DataBundle | from ..data_bundle import DataBundle | ||||
@@ -147,7 +146,7 @@ class MatchingBertPipe(Pipe): | |||||
warn_msg = f"There are {len(target_vocab._no_create_word)} target labels" \ | warn_msg = f"There are {len(target_vocab._no_create_word)} target labels" \ | ||||
f" in {[name for name in data_bundle.datasets.keys() if 'train' not in name]} " \ | f" in {[name for name in data_bundle.datasets.keys() if 'train' not in name]} " \ | ||||
f"data set but not in train data set!." | f"data set but not in train data set!." | ||||
warnings.warn(warn_msg) | |||||
logger.warn(warn_msg) | |||||
print(warn_msg) | print(warn_msg) | ||||
has_target_datasets = [dataset for name, dataset in data_bundle.datasets.items() if | has_target_datasets = [dataset for name, dataset in data_bundle.datasets.items() if | ||||
@@ -296,7 +295,7 @@ class MatchingPipe(Pipe): | |||||
warn_msg = f"There are {len(target_vocab._no_create_word)} target labels" \ | warn_msg = f"There are {len(target_vocab._no_create_word)} target labels" \ | ||||
f" in {[name for name in data_bundle.datasets.keys() if 'train' not in name]} " \ | f" in {[name for name in data_bundle.datasets.keys() if 'train' not in name]} " \ | ||||
f"data set but not in train data set!." | f"data set but not in train data set!." | ||||
warnings.warn(warn_msg) | |||||
logger.warn(warn_msg) | |||||
print(warn_msg) | print(warn_msg) | ||||
has_target_datasets = [dataset for name, dataset in data_bundle.datasets.items() if | has_target_datasets = [dataset for name, dataset in data_bundle.datasets.items() if | ||||
@@ -7,11 +7,11 @@ __all__ = [ | |||||
] | ] | ||||
from typing import List | from typing import List | ||||
import warnings | |||||
# from ...core.const import Const | # from ...core.const import Const | ||||
from ...core.vocabulary import Vocabulary | from ...core.vocabulary import Vocabulary | ||||
# from ...core._logger import log | # from ...core._logger import log | ||||
from fastNLP.core.log import logger | |||||
from pkg_resources import parse_version | from pkg_resources import parse_version | ||||
@@ -138,7 +138,7 @@ def _indexize(data_bundle, input_field_names='words', target_field_names='target | |||||
f" in {[name for name in data_bundle.datasets.keys() if 'train' not in name]} " \ | f" in {[name for name in data_bundle.datasets.keys() if 'train' not in name]} " \ | ||||
f"data set but not in train data set!.\n" \ | f"data set but not in train data set!.\n" \ | ||||
f"These label(s) are {tgt_vocab._no_create_word}" | f"These label(s) are {tgt_vocab._no_create_word}" | ||||
warnings.warn(warn_msg) | |||||
logger.warn(warn_msg) | |||||
# log.warning(warn_msg) | # log.warning(warn_msg) | ||||
tgt_vocab.index_dataset(*[ds for ds in data_bundle.datasets.values() if ds.has_field(target_field_name)], field_name=target_field_name) | tgt_vocab.index_dataset(*[ds for ds in data_bundle.datasets.values() if ds.has_field(target_field_name)], field_name=target_field_name) | ||||
data_bundle.set_vocab(tgt_vocab, target_field_name) | data_bundle.set_vocab(tgt_vocab, target_field_name) | ||||
@@ -1,4 +1,3 @@ | |||||
import warnings | |||||
from typing import Any, Optional, Union | from typing import Any, Optional, Union | ||||
import numpy as np | import numpy as np | ||||
@@ -113,7 +112,7 @@ def _jittor2torch(jittor_var: 'jittor.Var', device: Optional[Union[str, int]] = | |||||
# 如果outputs有_grad键,可以实现求导 | # 如果outputs有_grad键,可以实现求导 | ||||
no_gradient = not jittor_var.requires_grad if no_gradient is None else no_gradient | no_gradient = not jittor_var.requires_grad if no_gradient is None else no_gradient | ||||
if no_gradient == False: | if no_gradient == False: | ||||
warnings.warn("The result tensor will not keep gradients due to differences between jittor and pytorch.") | |||||
logger.warn("The result tensor will not keep gradients due to differences between jittor and pytorch.") | |||||
jittor_numpy = jittor_var.numpy() | jittor_numpy = jittor_var.numpy() | ||||
if not np.issubdtype(jittor_numpy.dtype, np.inexact): | if not np.issubdtype(jittor_numpy.dtype, np.inexact): | ||||
no_gradient = True | no_gradient = True | ||||
@@ -14,7 +14,6 @@ | |||||
# limitations under the License. | # limitations under the License. | ||||
""" Auto Model class. """ | """ Auto Model class. """ | ||||
import warnings | |||||
from collections import OrderedDict | from collections import OrderedDict | ||||
from .auto_factory import _BaseAutoModelClass, _LazyAutoMapping, auto_class_update | from .auto_factory import _BaseAutoModelClass, _LazyAutoMapping, auto_class_update | ||||
@@ -307,7 +306,7 @@ AutoModelForSpeechSeq2Seq = auto_class_update( | |||||
class AutoModelWithLMHead(_AutoModelWithLMHead): | class AutoModelWithLMHead(_AutoModelWithLMHead): | ||||
@classmethod | @classmethod | ||||
def from_config(cls, config): | def from_config(cls, config): | ||||
warnings.warn( | |||||
logger.warn( | |||||
"The class `AutoModelWithLMHead` is deprecated and will be removed in a future version. Please use " | "The class `AutoModelWithLMHead` is deprecated and will be removed in a future version. Please use " | ||||
"`AutoModelForCausalLM` for causal language models, `AutoModelForMaskedLM` for masked language models and " | "`AutoModelForCausalLM` for causal language models, `AutoModelForMaskedLM` for masked language models and " | ||||
"`AutoModelForSeq2SeqLM` for encoder-decoder models.", | "`AutoModelForSeq2SeqLM` for encoder-decoder models.", | ||||
@@ -317,7 +316,7 @@ class AutoModelWithLMHead(_AutoModelWithLMHead): | |||||
@classmethod | @classmethod | ||||
def from_pretrained(cls, pretrained_model_name_or_path, *model_args, **kwargs): | def from_pretrained(cls, pretrained_model_name_or_path, *model_args, **kwargs): | ||||
warnings.warn( | |||||
logger.warn( | |||||
"The class `AutoModelWithLMHead` is deprecated and will be removed in a future version. Please use " | "The class `AutoModelWithLMHead` is deprecated and will be removed in a future version. Please use " | ||||
"`AutoModelForCausalLM` for causal language models, `AutoModelForMaskedLM` for masked language models and " | "`AutoModelForCausalLM` for causal language models, `AutoModelForMaskedLM` for masked language models and " | ||||
"`AutoModelForSeq2SeqLM` for encoder-decoder models.", | "`AutoModelForSeq2SeqLM` for encoder-decoder models.", | ||||
@@ -10,6 +10,7 @@ if _NEED_IMPORT_TORCH: | |||||
from fastNLP.embeddings.torch import StaticEmbedding | from fastNLP.embeddings.torch import StaticEmbedding | ||||
@pytest.mark.torch | |||||
class TestTransformerSeq2SeqEncoder: | class TestTransformerSeq2SeqEncoder: | ||||
def test_case(self): | def test_case(self): | ||||
vocab = Vocabulary().add_word_lst("This is a test .".split()) | vocab = Vocabulary().add_word_lst("This is a test .".split()) | ||||
@@ -43,7 +43,7 @@ class DummyState(State): | |||||
super().__init__() | super().__init__() | ||||
self.decoder = decoder | self.decoder = decoder | ||||
def reorder_state(self, indices: torch.LongTensor): | |||||
def reorder_state(self, indices: "torch.LongTensor"): | |||||
self.decoder.decoder_output = self._reorder_state(self.decoder.decoder_output, indices, dim=0) | self.decoder.decoder_output = self._reorder_state(self.decoder.decoder_output, indices, dim=0) | ||||