sentence-transformers 2.2.2__tar.gz → 2.3.0__tar.gz

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 (109) hide show
  1. {sentence-transformers-2.2.2/sentence_transformers.egg-info → sentence-transformers-2.3.0}/PKG-INFO +17 -10
  2. {sentence-transformers-2.2.2 → sentence-transformers-2.3.0}/README.md +2 -2
  3. {sentence-transformers-2.2.2 → sentence-transformers-2.3.0}/sentence_transformers/LoggingHandler.py +5 -6
  4. sentence-transformers-2.3.0/sentence_transformers/SentenceTransformer.py +1158 -0
  5. sentence-transformers-2.3.0/sentence_transformers/__init__.py +16 -0
  6. {sentence-transformers-2.2.2 → sentence-transformers-2.3.0}/sentence_transformers/cross_encoder/CrossEncoder.py +109 -59
  7. sentence-transformers-2.3.0/sentence_transformers/cross_encoder/__init__.py +3 -0
  8. {sentence-transformers-2.2.2 → sentence-transformers-2.3.0}/sentence_transformers/cross_encoder/evaluation/CEBinaryAccuracyEvaluator.py +13 -4
  9. {sentence-transformers-2.2.2 → sentence-transformers-2.3.0}/sentence_transformers/cross_encoder/evaluation/CEBinaryClassificationEvaluator.py +33 -9
  10. {sentence-transformers-2.2.2 → sentence-transformers-2.3.0}/sentence_transformers/cross_encoder/evaluation/CECorrelationEvaluator.py +5 -4
  11. {sentence-transformers-2.2.2 → sentence-transformers-2.3.0}/sentence_transformers/cross_encoder/evaluation/CERerankingEvaluator.py +25 -13
  12. {sentence-transformers-2.2.2 → sentence-transformers-2.3.0}/sentence_transformers/cross_encoder/evaluation/CESoftmaxAccuracyEvaluator.py +6 -4
  13. {sentence-transformers-2.2.2 → sentence-transformers-2.3.0}/sentence_transformers/cross_encoder/evaluation/__init__.py +8 -0
  14. {sentence-transformers-2.2.2 → sentence-transformers-2.3.0}/sentence_transformers/datasets/DenoisingAutoEncoderDataset.py +42 -42
  15. {sentence-transformers-2.2.2 → sentence-transformers-2.3.0}/sentence_transformers/datasets/NoDuplicatesDataLoader.py +2 -2
  16. {sentence-transformers-2.2.2 → sentence-transformers-2.3.0}/sentence_transformers/datasets/ParallelSentencesDataset.py +43 -15
  17. {sentence-transformers-2.2.2 → sentence-transformers-2.3.0}/sentence_transformers/datasets/SentenceLabelDataset.py +15 -7
  18. {sentence-transformers-2.2.2 → sentence-transformers-2.3.0}/sentence_transformers/datasets/SentencesDataset.py +3 -7
  19. {sentence-transformers-2.2.2 → sentence-transformers-2.3.0}/sentence_transformers/datasets/__init__.py +8 -0
  20. {sentence-transformers-2.2.2 → sentence-transformers-2.3.0}/sentence_transformers/evaluation/BinaryClassificationEvaluator.py +75 -36
  21. {sentence-transformers-2.2.2 → sentence-transformers-2.3.0}/sentence_transformers/evaluation/EmbeddingSimilarityEvaluator.py +72 -20
  22. {sentence-transformers-2.2.2 → sentence-transformers-2.3.0}/sentence_transformers/evaluation/InformationRetrievalEvaluator.py +116 -86
  23. {sentence-transformers-2.2.2 → sentence-transformers-2.3.0}/sentence_transformers/evaluation/LabelAccuracyEvaluator.py +8 -7
  24. {sentence-transformers-2.2.2 → sentence-transformers-2.3.0}/sentence_transformers/evaluation/MSEEvaluator.py +26 -9
  25. {sentence-transformers-2.2.2 → sentence-transformers-2.3.0}/sentence_transformers/evaluation/MSEEvaluatorFromDataFrame.py +25 -20
  26. {sentence-transformers-2.2.2 → sentence-transformers-2.3.0}/sentence_transformers/evaluation/ParaphraseMiningEvaluator.py +38 -17
  27. sentence-transformers-2.3.0/sentence_transformers/evaluation/RerankingEvaluator.py +243 -0
  28. {sentence-transformers-2.2.2 → sentence-transformers-2.3.0}/sentence_transformers/evaluation/SentenceEvaluator.py +27 -27
  29. {sentence-transformers-2.2.2 → sentence-transformers-2.3.0}/sentence_transformers/evaluation/SequentialEvaluator.py +22 -20
  30. {sentence-transformers-2.2.2 → sentence-transformers-2.3.0}/sentence_transformers/evaluation/SimilarityFunction.py +8 -8
  31. {sentence-transformers-2.2.2 → sentence-transformers-2.3.0}/sentence_transformers/evaluation/TranslationEvaluator.py +37 -16
  32. {sentence-transformers-2.2.2 → sentence-transformers-2.3.0}/sentence_transformers/evaluation/__init__.py +17 -1
  33. {sentence-transformers-2.2.2 → sentence-transformers-2.3.0}/sentence_transformers/losses/BatchAllTripletLoss.py +11 -10
  34. {sentence-transformers-2.2.2 → sentence-transformers-2.3.0}/sentence_transformers/losses/BatchHardSoftMarginTripletLoss.py +10 -8
  35. {sentence-transformers-2.2.2 → sentence-transformers-2.3.0}/sentence_transformers/losses/BatchHardTripletLoss.py +10 -7
  36. {sentence-transformers-2.2.2 → sentence-transformers-2.3.0}/sentence_transformers/losses/BatchSemiHardTripletLoss.py +16 -8
  37. sentence-transformers-2.3.0/sentence_transformers/losses/CachedMultipleNegativesRankingLoss.py +211 -0
  38. {sentence-transformers-2.2.2 → sentence-transformers-2.3.0}/sentence_transformers/losses/ContrastiveLoss.py +15 -11
  39. {sentence-transformers-2.2.2 → sentence-transformers-2.3.0}/sentence_transformers/losses/ContrastiveTensionLoss.py +30 -22
  40. {sentence-transformers-2.2.2 → sentence-transformers-2.3.0}/sentence_transformers/losses/CosineSimilarityLoss.py +4 -5
  41. {sentence-transformers-2.2.2 → sentence-transformers-2.3.0}/sentence_transformers/losses/DenoisingAutoEncoderLoss.py +38 -43
  42. {sentence-transformers-2.2.2 → sentence-transformers-2.3.0}/sentence_transformers/losses/MSELoss.py +3 -3
  43. {sentence-transformers-2.2.2 → sentence-transformers-2.3.0}/sentence_transformers/losses/MarginMSELoss.py +5 -3
  44. {sentence-transformers-2.2.2 → sentence-transformers-2.3.0}/sentence_transformers/losses/MegaBatchMarginLoss.py +28 -15
  45. sentence-transformers-2.3.0/sentence_transformers/losses/MultipleNegativesRankingLoss.py +65 -0
  46. sentence-transformers-2.3.0/sentence_transformers/losses/MultipleNegativesSymmetricRankingLoss.py +62 -0
  47. {sentence-transformers-2.2.2 → sentence-transformers-2.3.0}/sentence_transformers/losses/OnlineContrastiveLoss.py +4 -2
  48. {sentence-transformers-2.2.2 → sentence-transformers-2.3.0}/sentence_transformers/losses/SoftmaxLoss.py +17 -11
  49. {sentence-transformers-2.2.2 → sentence-transformers-2.3.0}/sentence_transformers/losses/TripletLoss.py +11 -7
  50. sentence-transformers-2.3.0/sentence_transformers/losses/__init__.py +48 -0
  51. {sentence-transformers-2.2.2 → sentence-transformers-2.3.0}/sentence_transformers/model_card_templates.py +36 -26
  52. {sentence-transformers-2.2.2 → sentence-transformers-2.3.0}/sentence_transformers/models/Asym.py +22 -19
  53. {sentence-transformers-2.2.2 → sentence-transformers-2.3.0}/sentence_transformers/models/BoW.py +22 -12
  54. {sentence-transformers-2.2.2 → sentence-transformers-2.3.0}/sentence_transformers/models/CLIPModel.py +12 -16
  55. {sentence-transformers-2.2.2 → sentence-transformers-2.3.0}/sentence_transformers/models/CNN.py +24 -22
  56. {sentence-transformers-2.2.2 → sentence-transformers-2.3.0}/sentence_transformers/models/Dense.py +26 -11
  57. {sentence-transformers-2.2.2 → sentence-transformers-2.3.0}/sentence_transformers/models/Dropout.py +5 -7
  58. {sentence-transformers-2.2.2 → sentence-transformers-2.3.0}/sentence_transformers/models/LSTM.py +77 -62
  59. {sentence-transformers-2.2.2 → sentence-transformers-2.3.0}/sentence_transformers/models/LayerNorm.py +10 -10
  60. {sentence-transformers-2.2.2 → sentence-transformers-2.3.0}/sentence_transformers/models/Normalize.py +3 -1
  61. sentence-transformers-2.3.0/sentence_transformers/models/Pooling.py +198 -0
  62. {sentence-transformers-2.2.2 → sentence-transformers-2.3.0}/sentence_transformers/models/Transformer.py +82 -38
  63. {sentence-transformers-2.2.2 → sentence-transformers-2.3.0}/sentence_transformers/models/WeightedLayerPooling.py +21 -13
  64. {sentence-transformers-2.2.2 → sentence-transformers-2.3.0}/sentence_transformers/models/WordEmbeddings.py +66 -30
  65. {sentence-transformers-2.2.2 → sentence-transformers-2.3.0}/sentence_transformers/models/WordWeights.py +17 -13
  66. {sentence-transformers-2.2.2 → sentence-transformers-2.3.0}/sentence_transformers/models/__init__.py +17 -0
  67. {sentence-transformers-2.2.2 → sentence-transformers-2.3.0}/sentence_transformers/models/tokenizer/PhraseTokenizer.py +28 -11
  68. {sentence-transformers-2.2.2 → sentence-transformers-2.3.0}/sentence_transformers/models/tokenizer/WhitespaceTokenizer.py +75 -64
  69. sentence-transformers-2.3.0/sentence_transformers/models/tokenizer/WordTokenizer.py +414 -0
  70. {sentence-transformers-2.2.2 → sentence-transformers-2.3.0}/sentence_transformers/models/tokenizer/__init__.py +2 -0
  71. {sentence-transformers-2.2.2 → sentence-transformers-2.3.0}/sentence_transformers/readers/InputExample.py +2 -1
  72. {sentence-transformers-2.2.2 → sentence-transformers-2.3.0}/sentence_transformers/readers/LabelSentenceReader.py +3 -3
  73. {sentence-transformers-2.2.2 → sentence-transformers-2.3.0}/sentence_transformers/readers/NLIDataReader.py +46 -47
  74. {sentence-transformers-2.2.2 → sentence-transformers-2.3.0}/sentence_transformers/readers/PairedFilesReader.py +45 -44
  75. {sentence-transformers-2.2.2 → sentence-transformers-2.3.0}/sentence_transformers/readers/STSDataReader.py +89 -54
  76. {sentence-transformers-2.2.2 → sentence-transformers-2.3.0}/sentence_transformers/readers/TripletReader.py +50 -40
  77. sentence-transformers-2.3.0/sentence_transformers/readers/__init__.py +14 -0
  78. {sentence-transformers-2.2.2 → sentence-transformers-2.3.0}/sentence_transformers/util.py +226 -164
  79. {sentence-transformers-2.2.2 → sentence-transformers-2.3.0/sentence_transformers.egg-info}/PKG-INFO +17 -10
  80. {sentence-transformers-2.2.2 → sentence-transformers-2.3.0}/sentence_transformers.egg-info/SOURCES.txt +12 -1
  81. sentence-transformers-2.3.0/sentence_transformers.egg-info/requires.txt +10 -0
  82. {sentence-transformers-2.2.2 → sentence-transformers-2.3.0}/setup.cfg +1 -1
  83. {sentence-transformers-2.2.2 → sentence-transformers-2.3.0}/setup.py +17 -18
  84. sentence-transformers-2.3.0/tests/test_cmnrl.py +148 -0
  85. sentence-transformers-2.3.0/tests/test_compute_embeddings.py +85 -0
  86. sentence-transformers-2.3.0/tests/test_cross_encoder.py +95 -0
  87. sentence-transformers-2.3.0/tests/test_evaluator.py +94 -0
  88. sentence-transformers-2.3.0/tests/test_image_embeddings.py +28 -0
  89. sentence-transformers-2.3.0/tests/test_multi_process.py +32 -0
  90. sentence-transformers-2.3.0/tests/test_pretrained_stsb.py +151 -0
  91. sentence-transformers-2.3.0/tests/test_sentence_transformer.py +188 -0
  92. sentence-transformers-2.3.0/tests/test_train_stsb.py +159 -0
  93. sentence-transformers-2.3.0/tests/test_util.py +81 -0
  94. sentence-transformers-2.2.2/sentence_transformers/SentenceTransformer.py +0 -912
  95. sentence-transformers-2.2.2/sentence_transformers/__init__.py +0 -8
  96. sentence-transformers-2.2.2/sentence_transformers/cross_encoder/__init__.py +0 -1
  97. sentence-transformers-2.2.2/sentence_transformers/evaluation/RerankingEvaluator.py +0 -193
  98. sentence-transformers-2.2.2/sentence_transformers/losses/MultipleNegativesRankingLoss.py +0 -67
  99. sentence-transformers-2.2.2/sentence_transformers/losses/MultipleNegativesSymmetricRankingLoss.py +0 -64
  100. sentence-transformers-2.2.2/sentence_transformers/losses/__init__.py +0 -18
  101. sentence-transformers-2.2.2/sentence_transformers/models/Pooling.py +0 -120
  102. sentence-transformers-2.2.2/sentence_transformers/models/tokenizer/WordTokenizer.py +0 -27
  103. sentence-transformers-2.2.2/sentence_transformers/readers/__init__.py +0 -5
  104. sentence-transformers-2.2.2/sentence_transformers.egg-info/requires.txt +0 -10
  105. {sentence-transformers-2.2.2 → sentence-transformers-2.3.0}/LICENSE +0 -0
  106. {sentence-transformers-2.2.2 → sentence-transformers-2.3.0}/NOTICE.txt +0 -0
  107. {sentence-transformers-2.2.2 → sentence-transformers-2.3.0}/sentence_transformers/evaluation/TripletEvaluator.py +0 -0
  108. {sentence-transformers-2.2.2 → sentence-transformers-2.3.0}/sentence_transformers.egg-info/dependency_links.txt +0 -0
  109. {sentence-transformers-2.2.2 → sentence-transformers-2.3.0}/sentence_transformers.egg-info/top_level.txt +0 -0
@@ -1,23 +1,32 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: sentence-transformers
3
- Version: 2.2.2
3
+ Version: 2.3.0
4
4
  Summary: Multilingual text embeddings
5
- Home-page: https://github.com/UKPLab/sentence-transformers
5
+ Home-page: https://www.SBERT.net
6
+ Download-URL: https://github.com/UKPLab/sentence-transformers/
6
7
  Author: Nils Reimers
7
8
  Author-email: info@nils-reimers.de
8
9
  License: Apache License 2.0
9
- Download-URL: https://github.com/UKPLab/sentence-transformers/archive/v2.2.1.zip
10
10
  Keywords: Transformer Networks BERT XLNet sentence embedding PyTorch NLP deep learning
11
- Platform: UNKNOWN
12
11
  Classifier: Development Status :: 5 - Production/Stable
13
12
  Classifier: Intended Audience :: Science/Research
14
13
  Classifier: License :: OSI Approved :: Apache Software License
15
- Classifier: Programming Language :: Python :: 3.6
14
+ Classifier: Programming Language :: Python :: 3.8
16
15
  Classifier: Topic :: Scientific/Engineering :: Artificial Intelligence
17
- Requires-Python: >=3.6.0
16
+ Requires-Python: >=3.8.0
18
17
  Description-Content-Type: text/markdown
19
18
  License-File: LICENSE
20
19
  License-File: NOTICE.txt
20
+ Requires-Dist: transformers<5.0.0,>=4.32.0
21
+ Requires-Dist: tqdm
22
+ Requires-Dist: torch>=1.11.0
23
+ Requires-Dist: numpy
24
+ Requires-Dist: scikit-learn
25
+ Requires-Dist: scipy
26
+ Requires-Dist: nltk
27
+ Requires-Dist: sentencepiece
28
+ Requires-Dist: huggingface-hub>=0.15.1
29
+ Requires-Dist: Pillow
21
30
 
22
31
  <!--- BADGES: START --->
23
32
  [![GitHub - License](https://img.shields.io/github/license/UKPLab/sentence-transformers?logo=github&style=flat&color=green)][#github-license]
@@ -39,7 +48,7 @@ License-File: NOTICE.txt
39
48
 
40
49
  # Sentence Transformers: Multilingual Sentence, Paragraph, and Image Embeddings using BERT & Co.
41
50
 
42
- This framework provides an easy method to compute dense vector representations for **sentences**, **paragraphs**, and **images**. The models are based on transformer networks like BERT / RoBERTa / XLM-RoBERTa etc. and achieve state-of-the-art performance in various task. Text is embedding in vector space such that similar text is close and can efficiently be found using cosine similarity.
51
+ This framework provides an easy method to compute dense vector representations for **sentences**, **paragraphs**, and **images**. The models are based on transformer networks like BERT / RoBERTa / XLM-RoBERTa etc. and achieve state-of-the-art performance in various tasks. Text is embedded in vector space such that similar text are closer and can efficiently be found using cosine similarity.
43
52
 
44
53
  We provide an increasing number of **[state-of-the-art pretrained models](https://www.sbert.net/docs/pretrained_models.html)** for more than 100 languages, fine-tuned for various use-cases.
45
54
 
@@ -58,7 +67,7 @@ The following publications are integrated in this framework:
58
67
 
59
68
  ## Installation
60
69
 
61
- We recommend **Python 3.6** or higher, **[PyTorch 1.6.0](https://pytorch.org/get-started/locally/)** or higher and **[transformers v4.6.0](https://github.com/huggingface/transformers)** or higher. The code does **not** work with Python 2.7.
70
+ We recommend **Python 3.8** or higher, **[PyTorch 1.11.0](https://pytorch.org/get-started/locally/)** or higher and **[transformers v4.32.0](https://github.com/huggingface/transformers)** or higher. The code does **not** work with Python 2.7.
62
71
 
63
72
  **Install with pip**
64
73
 
@@ -201,5 +210,3 @@ https://www.ukp.tu-darmstadt.de/
201
210
  Don't hesitate to send us an e-mail or report an issue, if something is broken (and it shouldn't be) or if you have further questions.
202
211
 
203
212
  > This repository contains experimental software and is published for the sole purpose of giving additional background details on the respective publication.
204
-
205
-
@@ -18,7 +18,7 @@
18
18
 
19
19
  # Sentence Transformers: Multilingual Sentence, Paragraph, and Image Embeddings using BERT & Co.
20
20
 
21
- This framework provides an easy method to compute dense vector representations for **sentences**, **paragraphs**, and **images**. The models are based on transformer networks like BERT / RoBERTa / XLM-RoBERTa etc. and achieve state-of-the-art performance in various task. Text is embedding in vector space such that similar text is close and can efficiently be found using cosine similarity.
21
+ This framework provides an easy method to compute dense vector representations for **sentences**, **paragraphs**, and **images**. The models are based on transformer networks like BERT / RoBERTa / XLM-RoBERTa etc. and achieve state-of-the-art performance in various tasks. Text is embedded in vector space such that similar text are closer and can efficiently be found using cosine similarity.
22
22
 
23
23
  We provide an increasing number of **[state-of-the-art pretrained models](https://www.sbert.net/docs/pretrained_models.html)** for more than 100 languages, fine-tuned for various use-cases.
24
24
 
@@ -37,7 +37,7 @@ The following publications are integrated in this framework:
37
37
 
38
38
  ## Installation
39
39
 
40
- We recommend **Python 3.6** or higher, **[PyTorch 1.6.0](https://pytorch.org/get-started/locally/)** or higher and **[transformers v4.6.0](https://github.com/huggingface/transformers)** or higher. The code does **not** work with Python 2.7.
40
+ We recommend **Python 3.8** or higher, **[PyTorch 1.11.0](https://pytorch.org/get-started/locally/)** or higher and **[transformers v4.32.0](https://github.com/huggingface/transformers)** or higher. The code does **not** work with Python 2.7.
41
41
 
42
42
  **Install with pip**
43
43
 
@@ -1,6 +1,7 @@
1
1
  import logging
2
2
  import tqdm
3
3
 
4
+
4
5
  class LoggingHandler(logging.Handler):
5
6
  def __init__(self, level=logging.NOTSET):
6
7
  super().__init__(level)
@@ -12,18 +13,16 @@ class LoggingHandler(logging.Handler):
12
13
  self.flush()
13
14
  except (KeyboardInterrupt, SystemExit):
14
15
  raise
15
- except:
16
+ except Exception:
16
17
  self.handleError(record)
17
18
 
18
19
 
19
- def install_logger(
20
- given_logger, level = logging.WARNING, fmt="%(levelname)s:%(name)s:%(message)s"
21
- ):
22
- """ Configures the given logger; format, logging level, style, etc """
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"""
23
22
  import coloredlogs
24
23
 
25
24
  def add_notice_log_level():
26
- """ Creates a new 'notice' logging level """
25
+ """Creates a new 'notice' logging level"""
27
26
  # inspired by:
28
27
  # https://stackoverflow.com/questions/2183233/how-to-add-a-custom-loglevel-to-pythons-logging-facility
29
28
  NOTICE_LEVEL_NUM = 25