CoolFace
Modelpublic

colabbear/bge-reranker-v2-m3-ko-bnb-4bit

sourceHugging Faceapache-2.0updated 1y agoView on Hugging Face
0likes10downloads
Model Card

dragonkue/bge-reranker-v2-m3-ko (Quantized)

Description

This model is a quantized version of the original model `dragonkue/bge-reranker-v2-m3-ko`.

It's quantized using the BitsAndBytes library to 4-bit using the bnb-my-repo space.

Quantization Details

  • —Quantization Type: int4
  • —bnb_4bit_quant_type: nf4
  • —bnb_4bit_use_double_quant: True
  • —bnb_4bit_compute_dtype: bfloat16
  • —bnb_4bit_quant_storage: uint8

📄 Original Model Information

<img src="https://cdn-uploads.huggingface.co/production/uploads/642b0c2fecec03b4464a1d9b/IxcqY5qbGNuGpqDciIcOI.webp" width="600">

Reranker (Cross-Encoder)

Different from embedding model, reranker uses question and document as input and directly output similarity instead of embedding. You can get a relevance score by inputting query and passage to the reranker. And the score can be mapped to a float value in [0,1] by sigmoid function.

Model Details

  • —Base model : BAAI/bge-reranker-v2-m3
  • —The multilingual model has been optimized for Korean.

Usage with Transformers

python
from transformers import AutoTokenizer, AutoModelForSequenceClassification
import torch

model = AutoModelForSequenceClassification.from_pretrained('dragonkue/bge-reranker-v2-m3-ko')
tokenizer = AutoTokenizer.from_pretrained('dragonkue/bge-reranker-v2-m3-ko')

features = tokenizer([['몇 년도에 지방세외수입법이 시행됐을까?', '실무교육을 통해 ‘지방세외수입법’에 대한 자치단체의 관심을 제고하고 자치단체의 차질 없는 업무 추진을 지원하였다. 이러한 준비과정을 거쳐 2014년 8월 7일부터 ‘지방세외수입법’이 시행되었다.'], 
['몇 년도에 지방세외수입법이 시행됐을까?', '식품의약품안전처는 21일 국내 제약기업 유바이오로직스가 개발 중인 신종 코로나바이러스 감염증(코로나19) 백신 후보물질 ‘유코백-19’의 임상시험 계획을 지난 20일 승인했다고 밝혔다.']],  padding=True, truncation=True, return_tensors="pt")

model.eval()
with torch.no_grad():
    logits = model(**features).logits
    scores = torch.sigmoid(logits)
    print(scores)
# [9.9997962e-01 5.0702977e-07]

Usage with SentenceTransformers

First install the Sentence Transformers library:

pip install -U sentence-transformers
python
from sentence_transformers import CrossEncoder

model = CrossEncoder('dragonkue/bge-reranker-v2-m3-ko', default_activation_function=torch.nn.Sigmoid())

scores = model.predict([['몇 년도에 지방세외수입법이 시행됐을까?', '실무교육을 통해 ‘지방세외수입법’에 대한 자치단체의 관심을 제고하고 자치단체의 차질 없는 업무 추진을 지원하였다. 이러한 준비과정을 거쳐 2014년 8월 7일부터 ‘지방세외수입법’이 시행되었다.'], 
['몇 년도에 지방세외수입법이 시행됐을까?', '식품의약품안전처는 21일 국내 제약기업 유바이오로직스가 개발 중인 신종 코로나바이러스 감염증(코로나19) 백신 후보물질 ‘유코백-19’의 임상시험 계획을 지난 20일 승인했다고 밝혔다.']])
print(scores)
# [9.9997962e-01 5.0702977e-07]

Usage with FlagEmbedding

First install the FlagEmbedding library:

pip install -U FlagEmbedding
python
from FlagEmbedding import FlagReranker

reranker = FlagReranker('dragonkue/bge-reranker-v2-m3-ko')

scores = reranker.compute_score([['몇 년도에 지방세외수입법이 시행됐을까?', '실무교육을 통해 ‘지방세외수입법’에 대한 자치단체의 관심을 제고하고 자치단체의 차질 없는 업무 추진을 지원하였다. 이러한 준비과정을 거쳐 2014년 8월 7일부터 ‘지방세외수입법’이 시행되었다.'], 
['몇 년도에 지방세외수입법이 시행됐을까?', '식품의약품안전처는 21일 국내 제약기업 유바이오로직스가 개발 중인 신종 코로나바이러스 감염증(코로나19) 백신 후보물질 ‘유코백-19’의 임상시험 계획을 지난 20일 승인했다고 밝혔다.']], normalize=True)
print(scores)
# [9.9997962e-01 5.0702977e-07]

Fine-tune

Refer to https://github.com/FlagOpen/FlagEmbedding

Evaluation

Bi-encoder and Cross-encoder

Bi-Encoders convert texts into fixed-size vectors and efficiently calculate similarities between them. They are fast and ideal for tasks like semantic search and classification, making them suitable for processing large datasets quickly.

Cross-Encoders directly compare pairs of texts to compute similarity scores, providing more accurate results. While they are slower due to needing to process each pair, they excel in re-ranking top results and are important in Advanced RAG techniques for enhancing text generation.

Korean Embedding Benchmark with AutoRAG

(https://github.com/Marker-Inc-Korea/AutoRAG-example-korean-embedding-benchmark)

This is a Korean embedding benchmark for the financial sector.

Top-k 1

Bi-Encoder (Sentence Transformer)

Model nameF1RecallPrecision
paraphrase-multilingual-mpnet-base-v20.35960.35960.3596
KoSimCSE-roberta0.42980.42980.4298
Cohere embed-multilingual-v3.00.35960.35960.3596
openai ada 0020.47370.47370.4737
multilingual-e5-large-instruct0.46490.46490.4649
Upstage Embedding0.65790.65790.6579
paraphrase-multilingual-MiniLM-L12-v20.29820.29820.2982
openaiembed3_small0.54390.54390.5439
ko-sroberta-multitask0.42110.42110.4211
openaiembed3_large0.60530.60530.6053
KU-HIAI-ONTHEIT-large-v10.71050.71050.7105
KU-HIAI-ONTHEIT-large-v1.10.71930.71930.7193
kf-deberta-multitask0.45610.45610.4561
gte-multilingual-base0.58770.58770.5877
KoE50.70180.70180.7018
BGE-m30.65780.65780.6578
bge-m3-korean0.53510.53510.5351
BGE-m3-ko0.74560.74560.7456

Cross-Encoder (Reranker)

Model nameF1RecallPrecision
gte-multilingual-reranker-base0.72810.72810.7281
jina-reranker-v2-base-multilingual0.80700.80700.8070
bge-reranker-v2-m30.87720.87720.8772
upskyy/ko-reranker-8k0.86840.86840.8684
upskyy/ko-reranker0.83330.83330.8333
mncai/bge-ko-reranker-560M0.00880.00880.0088
Dongjin-kr/ko-reranker0.85090.85090.8509
bge-reranker-v2-m3-ko0.91230.91230.9123

Top-k 3

Bi-Encoder (Sentence Transformer)

Model nameF1RecallPrecision
paraphrase-multilingual-mpnet-base-v20.23680.47370.1579
KoSimCSE-roberta0.30260.60530.2018
Cohere embed-multilingual-v3.00.28510.57020.1901
openai ada 0020.35530.71050.2368
multilingual-e5-large-instruct0.33330.66670.2222
Upstage Embedding0.42110.84210.2807
paraphrase-multilingual-MiniLM-L12-v20.20610.41230.1374
openaiembed3_small0.36400.72810.2427
ko-sroberta-multitask0.29390.58770.1959
openaiembed3_large0.39470.78950.2632
KU-HIAI-ONTHEIT-large-v10.43860.87720.2924
KU-HIAI-ONTHEIT-large-v1.10.44300.88600.2953
kf-deberta-multitask0.31580.63160.2105
gte-multilingual-base0.40350.80700.2690
KoE50.42540.85090.2836
BGE-m30.42540.85080.2836
bge-m3-korean0.36840.73680.2456
BGE-m3-ko0.45170.90350.3011

Cross-Encoder (Reranker)

Model nameF1RecallPrecision
gte-multilingual-reranker-base0.46050.92110.3070
jina-reranker-v2-base-multilingual0.46490.92980.3099
bge-reranker-v2-m30.47810.95610.3187
upskyy/ko-reranker-8k0.47810.95610.3187
upskyy/ko-reranker0.46490.92980.3099
mncai/bge-ko-reranker-560M0.00440.00880.0029
Dongjin-kr/ko-reranker0.47370.94740.3158
bge-reranker-v2-m3-ko0.48250.96490.3216