vectorizer.guava / README.md
claeyzre's picture
Update README.md
6193cfd verified
---
pipeline_tag: sentence-similarity
tags:
- feature-extraction
- sentence-similarity
language:
- de
- en
- es
- fr
- it
- nl
- ja
- pt
- zh
- pl
---
# Model Card for `vectorizer.guava`
This model is a vectorizer developed by Sinequa. It produces an embedding vector given a passage or a query. The
passage vectors are stored in our vector index and the query vector is used at query time to look up relevant passages
in the index.
Model name: `vectorizer.guava`
## Supported Languages
The model was trained and tested in the following languages:
- English
- French
- German
- Spanish
- Italian
- Dutch
- Japanese
- Portuguese
- Chinese (simplified)
- Chinese (traditional)
- Polish
Besides these languages, basic support can be expected for additional 91 languages that were used during the pretraining
of the base model (see Appendix A of XLM-R paper).
## Scores
| Metric | Value |
|:-------------------------------|------:|
| English Relevance (Recall@100) | 0.616 |
Note that the relevance scores are computed as an average over several retrieval datasets (see
[details below](#evaluation-metrics)).
## Inference Times
| GPU | Quantization type | Batch size 1 | Batch size 32 |
|:------------------------------------------|:------------------|---------------:|---------------:|
| NVIDIA A10 | FP16 | 1 ms | 5 ms |
| NVIDIA A10 | FP32 | 2 ms | 18 ms |
| NVIDIA T4 | FP16 | 1 ms | 12 ms |
| NVIDIA T4 | FP32 | 3 ms | 52 ms |
| NVIDIA L4 | FP16 | 2 ms | 5 ms |
| NVIDIA L4 | FP32 | 4 ms | 24 ms |
## Gpu Memory usage
| Quantization type | Memory |
|:-------------------------------------------------|-----------:|
| FP16 | 550 MiB |
| FP32 | 1050 MiB |
Note that GPU memory usage only includes how much GPU memory the actual model consumes on an NVIDIA T4 GPU with a batch
size of 32. It does not include the fix amount of memory that is consumed by the ONNX Runtime upon initialization which
can be around 0.5 to 1 GiB depending on the used GPU.
## Requirements
- Minimal Sinequa version: 11.10.0
- Minimal Sinequa version for using FP16 models and GPUs with CUDA compute capability of 8.9+ (like NVIDIA L4): 11.11.0
- [Cuda compute capability](https://developer.nvidia.com/cuda-gpus): above 5.0 (above 6.0 for FP16 use)
## Model Details
### Overview
- Number of parameters: 107 million
- Base language
model: [mMiniLMv2-L6-H384-distilled-from-XLMR-Large](https://huggingface.co/nreimers/mMiniLMv2-L6-H384-distilled-from-XLMR-Large) ([Paper](https://arxiv.org/abs/2012.15828), [GitHub](https://github.com/microsoft/unilm/tree/master/minilm))
- Insensitive to casing and accents
- Output dimensions: 256 (reduced with an additional dense layer)
- Training procedure: Query-passage-negative triplets for datasets that have mined hard negative data, Query-passage
pairs for the rest. Number of negatives is augmented with in-batch negative strategy
### Training Data
The model have been trained using all datasets that are cited in
the [all-MiniLM-L6-v2](https://huggingface.co/sentence-transformers/all-MiniLM-L6-v2) model.
In addition to that, this model has been trained on the datasets cited
in [this paper](https://arxiv.org/pdf/2108.13897.pdf) on the first 9 aforementioned languages.
It has also been trained on [this dataset](https://huggingface.co/datasets/clarin-knext/msmarco-pl) for polish capacities, and a translated version of msmarco-zh for traditional chinese capacities.
### Evaluation Metrics
#### English
To determine the relevance score, we averaged the results that we obtained when evaluating on the datasets of the
[BEIR benchmark](https://github.com/beir-cellar/beir). Note that all these datasets are in **English**.
| Dataset | Recall@100 |
|:------------------|-----------:|
| Average | 0.616 |
| | |
| Arguana | 0.956 |
| CLIMATE-FEVER | 0.471 |
| DBPedia Entity | 0.379 |
| FEVER | 0.824 |
| FiQA-2018 | 0.642 |
| HotpotQA | 0.579 |
| MS MARCO | 0.85 |
| NFCorpus | 0.289 |
| NQ | 0.765 |
| Quora | 0.993 |
| SCIDOCS | 0.467 |
| SciFact | 0.899 |
| TREC-COVID | 0.104 |
| Webis-Touche-2020 | 0.407 |
#### Traditional Chinese
This model has traditional chinese capacities, that are being evaluated over the same dev set at msmarco-zh, translated in traditional chinese.
| Dataset | Recall@100 |
|:---------------------------------|-----------:|
| msmarco-zh-traditional | 0.738 |
In comparison, [raspberry](https://huggingface.co/sinequa/vectorizer.raspberry) scores a 0.693 on this dataset.
#### Other languages
We evaluated the model on the datasets of the [MIRACL benchmark](https://github.com/project-miracl/miracl) to test its
multilingual capacities. Note that not all training languages are part of the benchmark, so we only report the metrics
for the existing languages.
| Language | Recall@100 |
|:----------------------|-----------:|
| French | 0.672 |
| German | 0.594 |
| Spanish | 0.632 |
| Japanese | 0.603 |
| Chinese (simplified) | 0.702 |