46c04ede创建于 2024年11月18日历史提交

license: mit datasets:

  • hotchpotch/JQaRA
  • shunk031/JGLUE
  • miracl/miracl
  • castorini/mr-tydi
  • unicamp-dl/mmarco language:
  • ja library_name: sentence-transformers

japanese-reranker-cross-encoder-small-v1

日本語で学習させた Reranker (CrossEncoder) シリーズです。

モデル名 layers hidden_size
hotchpotch/japanese-reranker-cross-encoder-xsmall-v1 6 384
hotchpotch/japanese-reranker-cross-encoder-small-v1 12 384
hotchpotch/japanese-reranker-cross-encoder-base-v1 12 768
[hotchpotch/japanese-reranker-cross-encoder-large-v1] 24 1024
[hotchpotch/japanese-bge-reranker-v2-m3-v1] 24 1024

Reranker についてや、技術レポート・評価等は以下を参考ください。

使い方

推理

import argparse
import torch
from sentence_transformers import CrossEncoder
from openmind import is_torch_npu_available

def parse_args():
    parser = argparse.ArgumentParser()
    parser.add_argument(
        "--model_name_or_path",
        type=str,
        help="Path to model",
        default=None,
    )
    args = parser.parse_args()
    return args

def main():
    args = parse_args()
    MODEL_NAME = args.model_name_or_path
    if is_torch_npu_available():
        device = "npu:0"
    else:
        device = "cpu"
    model = CrossEncoder(MODEL_NAME, max_length=512, device=device)
    model.model.half()
    query = "感動的な映画について"
    passages = [
        "深いテーマを持ちながらも、観る人の心を揺さぶる名作。登場人物の心情描写が秀逸で、ラストは涙なしでは見られない。",
        "重要なメッセージ性は評価できるが、暗い話が続くので気分が落ち込んでしまった。もう少し明るい要素があればよかった。",
        "どうにもリアリティに欠ける展開が気になった。もっと深みのある人間ドラマが見たかった。",
        "アクションシーンが楽しすぎる。見ていて飽きない。ストーリーはシンプルだが、それが逆に良い。",
    ]
    scores = model.predict([(query, passage) for passage in passages])
    print(scores)
    
if __name__ == "__main__":
    main()



評価結果

Model Name [JQaRA] [JaCWIR] [MIRACL] [JSQuAD]
japanese-reranker-cross-encoder-xsmall-v1 0.6136 0.9376 0.7411 0.9602
japanese-reranker-cross-encoder-small-v1 0.6247 0.939 0.7776 0.9604
japanese-reranker-cross-encoder-base-v1 0.6711 0.9337 0.818 0.9708
[japanese-reranker-cross-encoder-large-v1] 0.7099 0.9364 0.8406 0.9773
[japanese-bge-reranker-v2-m3-v1] 0.6918 0.9372 0.8423 0.9624
[bge-reranker-v2-m3] 0.673 0.9343 0.8374 0.9599
[bge-reranker-large] 0.4718 0.7332 0.7666 0.7081
[bge-reranker-base] 0.2445 0.4905 0.6792 0.5757
[cross-encoder-mmarco-mMiniLMv2-L12-H384-v1] 0.5588 0.9211 0.7158 0.932
[shioriha-large-reranker] 0.5775 0.8458 0.8084 0.9262
[bge-m3+all] 0.576 0.904 0.7926 0.9226
[bge-m3+dense] 0.539 0.8642 0.7753 0.8815
[bge-m3+colbert] 0.5656 0.9064 0.7902 0.9297
[bge-m3+sparse] 0.5088 0.8944 0.6941 0.9184
[JaColBERTv2] 0.5847 0.9185 0.6861 0.9247
[multilingual-e5-large] 0.554 0.8759 0.7722 0.8892
[multilingual-e5-small] 0.4917 0.869 0.7025 0.8565
bm25 0.458 0.8408 0.4387 0.9002

ライセンス

MIT License