ONNX 模型库
返回模型

说明文档

🧠 统一多语言 Distiluse 文本嵌入器(ONNX + 分词器合并)

这是一个高度优化、量化且完全独立的模型,用于从多语言文本生成句子嵌入,支持乌克兰语、英语、波兰语等多种语言。

该模型基于 distiluse-base-multilingual-cased-v2 构建,具有以下特点:

  • 🔁 与分词器合并为单个 ONNX 文件
  • ⚙️ 扩展了自定义预处理层
  • 量化为 INT8,支持 ARM64
  • 🧪 在实际 NLP 任务中经过广泛测试
  • 🛠️ 修复了错误——原始 sentence-transformers 量化版本会产生不准确的余弦相似度

🚀 主要特性

  • 🧩 单文件架构:无需外部分词器、词表或 transformers 库。
  • 在移动端推理速度提升 93%(相比原始模型)。
  • 🗣️ 多语言支持:在多种语言上表现稳健,包括低资源语言。
  • 🧠 输出 = 纯嵌入向量:传入字符串,获得 768 维向量。就这么简单。
  • 🛠️ 生产就绪:体积小、速度快、精度高、易于集成。
  • 📱 非常适合边缘 AI、移动端和离线场景。

🤖 作者 @vlad-m-dev 为边缘 AI/手机/平板离线场景而构建 Telegram: https://t.me/dwight_schrute_engineer


🐍 Python 示例

import numpy as np
import onnxruntime as ort
from onnxruntime_extensions import get_library_path

sess_options = ort.SessionOptions()
sess_options.register_custom_ops_library(get_library_path())

session = ort.InferenceSession(
    'model.onnx',
    sess_options=sess_options,
    providers=['CPUExecutionProvider']
)

input_feed = {"text": np.asarray(['something..'])}
outputs = session.run(None, input_feed)
embedding = outputs[0]

🐛 JS 示例

const session = await InferenceSession.create(EMBEDDING_FULL_MODEL_PATH); 
const inputTensor = new Tensor('string', ['something..'], [1]); 
const feeds = { text: inputTensor };
const outputMap = await session.run(feeds);
const embedding = outputMap.text_embedding.data;

onnx-community/distiluse-base-multilingual-v2-merged-onnx

作者 onnx-community

feature-extraction sentence-transformers
↓ 0 ♥ 1

创建时间: 2025-06-26 20:56:13+00:00

更新时间: 2025-06-26 20:56:59+00:00

在 Hugging Face 上查看

文件 (3)

.gitattributes
README.md
combined_tokenizer_embedded_model.onnx ONNX