language:
- ja
library_name: transformers
license: apache-2.0
pipeline_tag: sentence-similarity
tags:
- feature-extraction
- sentence-similarity
- transformers
PLaMo-Embedding-1B
日本語版README/Japanese README
模型概述
PLaMo-Embedding-1B是由Preferred Networks公司开发的日语文本嵌入模型。
该模型能将日语文本输入转化为数值向量,可广泛应用于信息检索、文本分类和聚类等场景。
截至2025年4月上旬,该模型在日语文本嵌入基准测试JMTEB中取得了顶级评分,尤其在检索任务中表现尤为突出。
PLaMo-Embedding-1B采用Apache v2.0许可协议发布,允许包括商业用途在内的自由使用。
技术细节请参阅技术博客文章(日文版):https://tech.preferred.jp/ja/blog/plamo-embedding-1b/
使用方法
环境要求
sentencepiece
torch
transformers
示例代码
import torch
import torch.nn.functional as F
from transformers import AutoModel, AutoTokenizer
tokenizer = AutoTokenizer.from_pretrained("pfnet/plamo-embedding-1b", trust_remote_code=True)
model = AutoModel.from_pretrained("pfnet/plamo-embedding-1b", trust_remote_code=True)
device = "cuda" if torch.cuda.is_available() else "cpu"
model = model.to(device)
query = "PLaMo-Embedding-1B是什么?"
documents = [
"PLaMo-Embedding-1B是由Preferred Networks公司开发的日语文本嵌入模型",
"最近天气真是越来越暖和了呢"
]
with torch.inference_mode():
query_embedding = model.encode_query(query, tokenizer)
document_embeddings = model.encode_document(documents, tokenizer)
similarities = F.cosine_similarity(query_embedding, document_embeddings)
print(similarities)
注意:对于encode_document
和encode_query
方法,超过模型最大上下文长度4096的文本会被截断。特别注意encode_query
方法内部会添加前缀,实际有效上下文长度会稍短。
基准测试
我们使用日语文本嵌入基准测试JMTEB进行了性能评估。
(*):测试时采用1024上下文长度。虽然模型支持最大4096上下文长度,但由于训练时最大使用1024长度,故采用该设置测试。但已知使用4096长度评估不会显著影响平均得分(参考:技术博客(日文))。
模型详情
- 模型规模:10亿参数
- 最大上下文长度:4096 tokens
- 嵌入维度:2048维
- 相似度计算:余弦相似度
- 开发机构:Preferred Networks公司
- 适用语言:日语
- 许可协议:Apache v2.0
许可声明
PLaMo-Embedding-1B采用Apache v2.0许可协议发布,允许包括商业用途在内的自由使用。
引用方式
@online{PLaMoEmbedding1B,
author = {Preferred Networks, Inc},
title = {PLaMo-Embedding-1B},
year = {2025},
url = {https://huggingface.co/pfnet/plamo-embedding-1b},
urldate = {2025-04-17}
}