# ruri-large.py import torch.nn.functional as F from sentence_transformers import SentenceTransformer # Download from the 🤗 Hub model = SentenceTransformer("cl-nagoya/ruri-large") # Don't forget to add the prefix "クエリ: " for query-side or "文章: " for passage-side texts. sentences = [ "クエリ: 瑠璃色はどんな色?", "文章: 瑠璃色(るりいろ)は、紫みを帯びた濃い青。名は、半貴石の瑠璃(ラピスラズリ、英: lapis lazuli)による。JIS慣用色名では「こい紫みの青」(略号 dp-pB)と定義している[1][2]。", "クエリ: ワシやタカのように、鋭いくちばしと爪を持った大型の鳥類を総称して「何類」というでしょう?", "文章: ワシ、タカ、ハゲワシ、ハヤブサ、コンドル、フクロウが代表的である。これらの猛禽類はリンネ前後の時代(17~18世紀)には鷲類・鷹類・隼類及び梟類に分類された。ちなみにリンネは狩りをする鳥を単一の目(もく)にまとめ、vultur(コンドル、ハゲワシ)、falco(ワシ、タカ、ハヤブサなど)、strix(フクロウ)、lanius(モズ)の4属を含めている。", ] embeddings = model.encode(sentences, convert_to_tensor=True) print(embeddings.size()) # [4, 1024] similarities = F.cosine_similarity(embeddings.unsqueeze(0), embeddings.unsqueeze(1), dim=2) print(similarities) # [[1.0000, 0.9429, 0.6565, 0.6997], # [0.9429, 1.0000, 0.6579, 0.6768], # [0.6565, 0.6579, 1.0000, 0.8933], # [0.6997, 0.6768, 0.8933, 1.0000]]