par Xenova
Open source · 31k downloads · 1 likes
Le modèle *Jina Embeddings v2 Small EN* est une version optimisée pour le web du modèle d'embeddings de texte en anglais, conçue pour générer des représentations vectorielles compactes et performantes. Il permet de transformer des phrases ou des documents en vecteurs numériques, facilitant ainsi des tâches comme la recherche sémantique, la classification ou la comparaison de similarité entre textes. Ses principaux cas d'usage incluent l'amélioration des moteurs de recherche, l'analyse de sentiments ou l'organisation automatique de contenus textuels. Ce qui le distingue, c'est son adaptation aux contraintes des environnements web grâce à des poids ONNX, garantissant une exécution fluide et efficace même dans des navigateurs ou des applications JavaScript.
https://huggingface.co/jinaai/jina-embeddings-v2-small-en with ONNX weights to be compatible with Transformers.js.
If you haven't already, you can install the Transformers.js JavaScript library from NPM using:
npm i @huggingface/transformers
You can then use the model as follows:
import { pipeline, cos_sim } from '@huggingface/transformers';
// Create feature extraction pipeline
const extractor = await pipeline('feature-extraction', 'Xenova/jina-embeddings-v2-small-en',
{ dtype: "fp32" } // Options: "fp32", "fp16", "q8", "q4"
);
// Generate embeddings
const output = await extractor(
['How is the weather today?', 'What is the current weather like today?'],
{ pooling: 'mean' }
);
// Compute cosine similarity
console.log(cos_sim(output[0].data, output[1].data)); // 0.9399812684139274 (unquantized) vs. 0.9341121503699659 (quantized)
Note: Having a separate repo for ONNX weights is intended to be a temporary solution until WebML gains more traction. If you would like to make your models web-ready, we recommend converting to ONNX using 🤗 Optimum and structuring your repo like this one (with ONNX weights located in a subfolder named onnx).