sentence-transformers 2.7.0__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (92) hide show
  1. sentence_transformers/LoggingHandler.py +55 -0
  2. sentence_transformers/SentenceTransformer.py +1398 -0
  3. sentence_transformers/__init__.py +18 -0
  4. sentence_transformers/cross_encoder/CrossEncoder.py +499 -0
  5. sentence_transformers/cross_encoder/__init__.py +3 -0
  6. sentence_transformers/cross_encoder/evaluation/CEBinaryAccuracyEvaluator.py +78 -0
  7. sentence_transformers/cross_encoder/evaluation/CEBinaryClassificationEvaluator.py +103 -0
  8. sentence_transformers/cross_encoder/evaluation/CECorrelationEvaluator.py +65 -0
  9. sentence_transformers/cross_encoder/evaluation/CEF1Evaluator.py +127 -0
  10. sentence_transformers/cross_encoder/evaluation/CERerankingEvaluator.py +115 -0
  11. sentence_transformers/cross_encoder/evaluation/CESoftmaxAccuracyEvaluator.py +68 -0
  12. sentence_transformers/cross_encoder/evaluation/__init__.py +15 -0
  13. sentence_transformers/datasets/DenoisingAutoEncoderDataset.py +46 -0
  14. sentence_transformers/datasets/NoDuplicatesDataLoader.py +44 -0
  15. sentence_transformers/datasets/ParallelSentencesDataset.py +183 -0
  16. sentence_transformers/datasets/SentenceLabelDataset.py +103 -0
  17. sentence_transformers/datasets/SentencesDataset.py +20 -0
  18. sentence_transformers/datasets/__init__.py +13 -0
  19. sentence_transformers/evaluation/BinaryClassificationEvaluator.py +282 -0
  20. sentence_transformers/evaluation/EmbeddingSimilarityEvaluator.py +214 -0
  21. sentence_transformers/evaluation/InformationRetrievalEvaluator.py +360 -0
  22. sentence_transformers/evaluation/LabelAccuracyEvaluator.py +82 -0
  23. sentence_transformers/evaluation/MSEEvaluator.py +96 -0
  24. sentence_transformers/evaluation/MSEEvaluatorFromDataFrame.py +108 -0
  25. sentence_transformers/evaluation/ParaphraseMiningEvaluator.py +204 -0
  26. sentence_transformers/evaluation/RerankingEvaluator.py +267 -0
  27. sentence_transformers/evaluation/SentenceEvaluator.py +30 -0
  28. sentence_transformers/evaluation/SequentialEvaluator.py +23 -0
  29. sentence_transformers/evaluation/SimilarityFunction.py +8 -0
  30. sentence_transformers/evaluation/TranslationEvaluator.py +148 -0
  31. sentence_transformers/evaluation/TripletEvaluator.py +167 -0
  32. sentence_transformers/evaluation/__init__.py +29 -0
  33. sentence_transformers/losses/AdaptiveLayerLoss.py +232 -0
  34. sentence_transformers/losses/AnglELoss.py +56 -0
  35. sentence_transformers/losses/BatchAllTripletLoss.py +119 -0
  36. sentence_transformers/losses/BatchHardSoftMarginTripletLoss.py +122 -0
  37. sentence_transformers/losses/BatchHardTripletLoss.py +240 -0
  38. sentence_transformers/losses/BatchSemiHardTripletLoss.py +156 -0
  39. sentence_transformers/losses/CachedGISTEmbedLoss.py +311 -0
  40. sentence_transformers/losses/CachedMultipleNegativesRankingLoss.py +243 -0
  41. sentence_transformers/losses/CoSENTLoss.py +85 -0
  42. sentence_transformers/losses/ContrastiveLoss.py +97 -0
  43. sentence_transformers/losses/ContrastiveTensionLoss.py +206 -0
  44. sentence_transformers/losses/CosineSimilarityLoss.py +65 -0
  45. sentence_transformers/losses/DenoisingAutoEncoderLoss.py +160 -0
  46. sentence_transformers/losses/GISTEmbedLoss.py +154 -0
  47. sentence_transformers/losses/MSELoss.py +65 -0
  48. sentence_transformers/losses/MarginMSELoss.py +85 -0
  49. sentence_transformers/losses/Matryoshka2dLoss.py +113 -0
  50. sentence_transformers/losses/MatryoshkaLoss.py +144 -0
  51. sentence_transformers/losses/MegaBatchMarginLoss.py +143 -0
  52. sentence_transformers/losses/MultipleNegativesRankingLoss.py +96 -0
  53. sentence_transformers/losses/MultipleNegativesSymmetricRankingLoss.py +80 -0
  54. sentence_transformers/losses/OnlineContrastiveLoss.py +77 -0
  55. sentence_transformers/losses/SoftmaxLoss.py +121 -0
  56. sentence_transformers/losses/TripletLoss.py +92 -0
  57. sentence_transformers/losses/__init__.py +62 -0
  58. sentence_transformers/model_card_templates.py +184 -0
  59. sentence_transformers/models/Asym.py +128 -0
  60. sentence_transformers/models/BoW.py +95 -0
  61. sentence_transformers/models/CLIPModel.py +83 -0
  62. sentence_transformers/models/CNN.py +75 -0
  63. sentence_transformers/models/Dense.py +79 -0
  64. sentence_transformers/models/Dropout.py +33 -0
  65. sentence_transformers/models/LSTM.py +77 -0
  66. sentence_transformers/models/LayerNorm.py +37 -0
  67. sentence_transformers/models/Normalize.py +24 -0
  68. sentence_transformers/models/Pooling.py +230 -0
  69. sentence_transformers/models/Transformer.py +187 -0
  70. sentence_transformers/models/WeightedLayerPooling.py +61 -0
  71. sentence_transformers/models/WordEmbeddings.py +164 -0
  72. sentence_transformers/models/WordWeights.py +81 -0
  73. sentence_transformers/models/__init__.py +31 -0
  74. sentence_transformers/models/tokenizer/PhraseTokenizer.py +119 -0
  75. sentence_transformers/models/tokenizer/WhitespaceTokenizer.py +75 -0
  76. sentence_transformers/models/tokenizer/WordTokenizer.py +414 -0
  77. sentence_transformers/models/tokenizer/__init__.py +5 -0
  78. sentence_transformers/quantization.py +382 -0
  79. sentence_transformers/readers/InputExample.py +26 -0
  80. sentence_transformers/readers/LabelSentenceReader.py +37 -0
  81. sentence_transformers/readers/NLIDataReader.py +46 -0
  82. sentence_transformers/readers/PairedFilesReader.py +45 -0
  83. sentence_transformers/readers/STSDataReader.py +89 -0
  84. sentence_transformers/readers/TripletReader.py +50 -0
  85. sentence_transformers/readers/__init__.py +14 -0
  86. sentence_transformers/util.py +634 -0
  87. sentence_transformers-2.7.0.dist-info/LICENSE +201 -0
  88. sentence_transformers-2.7.0.dist-info/METADATA +234 -0
  89. sentence_transformers-2.7.0.dist-info/NOTICE.txt +5 -0
  90. sentence_transformers-2.7.0.dist-info/RECORD +92 -0
  91. sentence_transformers-2.7.0.dist-info/WHEEL +5 -0
  92. sentence_transformers-2.7.0.dist-info/top_level.txt +1 -0
@@ -0,0 +1,55 @@
1
+ import logging
2
+ import tqdm
3
+
4
+
5
+ class LoggingHandler(logging.Handler):
6
+ def __init__(self, level=logging.NOTSET):
7
+ super().__init__(level)
8
+
9
+ def emit(self, record):
10
+ try:
11
+ msg = self.format(record)
12
+ tqdm.tqdm.write(msg)
13
+ self.flush()
14
+ except (KeyboardInterrupt, SystemExit):
15
+ raise
16
+ except Exception:
17
+ self.handleError(record)
18
+
19
+
20
+ def install_logger(given_logger, level=logging.WARNING, fmt="%(levelname)s:%(name)s:%(message)s"):
21
+ """Configures the given logger; format, logging level, style, etc"""
22
+ import coloredlogs
23
+
24
+ def add_notice_log_level():
25
+ """Creates a new 'notice' logging level"""
26
+ # inspired by:
27
+ # https://stackoverflow.com/questions/2183233/how-to-add-a-custom-loglevel-to-pythons-logging-facility
28
+ NOTICE_LEVEL_NUM = 25
29
+ logging.addLevelName(NOTICE_LEVEL_NUM, "NOTICE")
30
+
31
+ def notice(self, message, *args, **kws):
32
+ if self.isEnabledFor(NOTICE_LEVEL_NUM):
33
+ self._log(NOTICE_LEVEL_NUM, message, args, **kws)
34
+
35
+ logging.Logger.notice = notice
36
+
37
+ # Add an extra logging level above INFO and below WARNING
38
+ add_notice_log_level()
39
+
40
+ # More style info at:
41
+ # https://coloredlogs.readthedocs.io/en/latest/api.html
42
+ field_styles = coloredlogs.DEFAULT_FIELD_STYLES.copy()
43
+ field_styles["asctime"] = {}
44
+ level_styles = coloredlogs.DEFAULT_LEVEL_STYLES.copy()
45
+ level_styles["debug"] = {"color": "white", "faint": True}
46
+ level_styles["notice"] = {"color": "cyan", "bold": True}
47
+
48
+ coloredlogs.install(
49
+ logger=given_logger,
50
+ level=level,
51
+ use_chroot=False,
52
+ fmt=fmt,
53
+ level_styles=level_styles,
54
+ field_styles=field_styles,
55
+ )