/ Модель

Характеристики

Контекст
40 960 токенов
Параметры
307 млн
Размер весов
1,7 ГБ
Лицензия
Apache 2.0
Архитектура
qwen3 · dense
Библиотека
sentence-transformers
Опубликована
16 янв 2026

voyage-4-nano-ONNX

ЭмбеддингиТекст → embedding9 профессий

ONNX-модель Voyage 4 Nano для создания 2048-мерных текстовых эмбеддингов, семантического поиска и retrieval-систем.

191скачиваний за 30 дней5лайковвеса обновлены28 апр 2026

Бенчмарки

Как модель справилась с задачами пользователей ailist и что о ней публикуют открытые лидерборды

Публичные оценки

Из открытых лидербордов. Сравнивайте результаты одного теста при одинаковых условиях — отсутствие оценки не значит, что модель хуже.

В подключённых источниках результатов для этой модели пока нет.

Что умеет модель

Описание составлено по карточке модели и метаданным Hugging Face

voyage-4-nano-ONNX — это ONNX-экспорт модели voyage-4-nano от Voyage AI, подготовленный для CPU-инференса с библиотекой sentence-transformers и интеграции с Vespa. Модель предназначена для получения векторных представлений текстов, семантического поиска, построения retrieval-систем и сравнения текстов по косинусному сходству.

Модель имеет 306,6 млн параметров, формирует L2-нормализованные эмбеддинги размерности 2048 и использует mean pooling. В метаданных указана нативная длина контекста 40960 токенов; в README максимальная длина последовательности указана как 32K токенов. Доступны варианты FP32 размером около 1,3 ГБ и INT8 для AVX512 размером 332 МБ; INT8 рекомендован для экономии памяти и сохраняет косинусное сходство около 0,96 относительно FP32.

Для retrieval-сценариев запросы следует кодировать с префиксом «Represent the query for retrieving supporting documents: », а документы — без префикса. Модель распространяется по лицензии Apache 2.0. Она предназначена для эмбеддингов, а не для генерации текста; качество INT8 может немного отличаться от FP32, а использование требует ONNX Runtime или sentence-transformers с ONNX-бэкендом.

Сценарии применения

  • семантический поиск по документам
  • поиск релевантных документов по запросу
  • построение RAG-систем
  • индексация текстов в Vespa
  • сравнение текстов по смысловой близости
  • кластеризация и дедупликация текстов

Ограничения

Модель предназначена для извлечения эмбеддингов, а не для генерации текста. Для retrieval-запросов необходим специальный префикс; INT8-вариант имеет косинусное сходство около 0,96 с FP32 и может давать небольшие отличия в результатах.

Для каких профессий подходит9

Разделы каталога профессий, в задачах которых используется эта модель

Все профессии

Также подходит для

Карточка модели

README от автора на Hugging Face, как он его опубликовал

Открыть на Hugging Face

voyage-4-nano-ONNX

ONNX export of voyageai/voyage-4-nano optimized for CPU inference with sentence-transformers and Vespa.

Note: This is an ONNX-only model. Ignore the auto-generated snippet above - use the code below with backend="onnx".

Model Variants

VariantFileSizeNotes
FP32onnx/model.onnx + model.onnx.data~1.3GBHighest accuracy, external data file
INT8onnx/model_qint8_avx512.onnx332MBRecommended - 4x smaller, cosine sim ~0.96 vs FP32

Specifications

  • Embedding dimension: 2048
  • Max sequence length: 32K tokens
  • Pooling: Mean pooling
  • Normalization: L2 normalized embeddings
  • Model inputs: input_ids, attention_mask (no position_ids required)

Quick Start with sentence-transformers

from sentence_transformers import SentenceTransformer

# Load the ONNX model
model = SentenceTransformer(
    "thomasht86/voyage-4-nano-ONNX",
    backend="onnx",
    model_kwargs={"file_name": "onnx/model_qint8_avx512.onnx"},
)

# For documents (no prefix needed)
docs = ["The quick brown fox jumps over the lazy dog."]
doc_embeddings = model.encode(docs)

# For queries (use the prompt name)
queries = ["What animal jumps over the dog?"]
query_embeddings = model.encode(queries, prompt_name="query")

print(f"Embedding shape: {doc_embeddings.shape}")  # (1, 2048)

ONNX Runtime Direct Usage

import onnxruntime as ort
import numpy as np
from transformers import AutoTokenizer

# Load tokenizer and model
tokenizer = AutoTokenizer.from_pretrained("thomasht86/voyage-4-nano-ONNX")
session = ort.InferenceSession("onnx/model_qint8_avx512.onnx")

# Tokenize
text = "The quick brown fox jumps over the lazy dog."
inputs = tokenizer(text, return_tensors="np", padding=True, truncation=True)

# Run inference (only input_ids and attention_mask needed)
outputs = session.run(
    None,
    {
        "input_ids": inputs["input_ids"],
        "attention_mask": inputs["attention_mask"],
    },
)

# outputs[0] is token embeddings, outputs[1] is sentence embedding (pooled + normalized)
token_embeddings = outputs[0]  # Shape: (batch, seq_len, 2048)
sentence_embedding = outputs[1]  # Shape: (batch, 2048)

print(f"Sentence embedding shape: {sentence_embedding.shape}")

Query Prefix Convention

For retrieval tasks, prepend queries with the instruction prefix:

query_prefix = "Represent the query for retrieving supporting documents: "
query = query_prefix + "What is the capital of France?"

Documents should be encoded without any prefix.

Vespa Configuration

Use this model with Vespa's hugging-face-embedder:

services.xml

<component id="voyage" type="hugging-face-embedder">
    <transformer-model url="https://huggingface.co/thomasht86/voyage-4-nano-ONNX/resolve/main/onnx/model_qint8_avx512.onnx"/>
    <tokenizer-model url="https://huggingface.co/thomasht86/voyage-4-nano-ONNX/raw/main/tokenizer.json"/>
    <pooling-strategy>mean</pooling-strategy>
    <normalize>true</normalize>
    <prepend>
        <query>Represent the query for retrieving supporting documents: </query>
    </prepend>
</component>

Schema

schema doc {
    document doc {
        field text type string {
            indexing: summary | index
        }
    }

    field embedding type tensor<float>(x[2048]) {
        indexing: input text | embed voyage | attribute | index
        attribute {
            distance-metric: angular
        }
        index {
            hnsw {
                max-links-per-node: 16
                neighbors-to-explore-at-insert: 200
            }
        }
    }
}

Benchmarks

Cosine similarity between FP32 and INT8 embeddings on sample texts:

Text TypeCosine Similarity
Short sentences~0.96
Long paragraphs~0.96

The INT8 quantized model maintains high fidelity to the FP32 model while being 4x smaller.

License

Apache 2.0 - See the original voyage-4-nano model card for details.

Acknowledgments

Как запустить

На своей GPU в ailist. Цена — по текущим предложениям провайдеров

GPU в ailist

Универсальный рантайм · sentence-transformers

Нельзя запустить

В репозитории нет весов в формате PyTorch/safetensors.

Класс архитектуры
Qwen3ForCausalLM
Ревизия весов
fcf290d

0 моделей