ONNX 模型库
返回模型

说明文档

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

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

该模型基于 distiluse-base-multilingual-cased-v2 构建,并进行了以下处理:

  • 🔁 将分词器合并到单个 ONNX 文件中
  • ⚙️ 扩展了自定义预处理层
  • 量化为 INT8 并支持 ARM64
  • 🧪 在实际 NLP 任务中进行了广泛测试
  • 🛠️ 修复了 Bug —— 原始 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;

vlad-m-dev/distiluse-base-multilingual-v2-merged-onnx

作者 vlad-m-dev

feature-extraction sentence-transformers
↓ 0 ♥ 1

创建时间: 2025-06-20 22:51:28+00:00

更新时间: 2025-10-29 18:05:44+00:00

在 Hugging Face 上查看

文件 (9)

.gitattributes
README.md
combined_tokenizer_embedded_model.onnx ONNX
dense_768to512.onnx ONNX
future_intent_classifier.onnx ONNX
label_encoder_temporal_intent.json
merged_sentence_model.onnx ONNX
past_intent_classifier.onnx ONNX
temporal_intent_classifier.onnx ONNX