Xenova HF staff commited on
Commit
78fe1aa
1 Parent(s): 8e62bfd

Add Transformers.js sample code

Browse files
Files changed (1) hide show
  1. README.md +29 -0
README.md CHANGED
@@ -9173,6 +9173,35 @@ for query, query_scores in zip(queries, scores):
9173
  print(score, document)
9174
  ```
9175
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
9176
 
9177
  ## Contact
9178
 
 
9173
  print(score, document)
9174
  ```
9175
 
9176
+ ### Using Huggingface Transformers.js
9177
+
9178
+ If you haven't already, you can install the [Transformers.js](https://huggingface.co/docs/transformers.js) JavaScript library from [NPM](https://www.npmjs.com/package/@huggingface/transformers) using:
9179
+ ```bash
9180
+ npm i @huggingface/transformers
9181
+ ```
9182
+
9183
+ You can then use the model for retrieval, as follows:
9184
+
9185
+ ```js
9186
+ import { pipeline, dot } from '@huggingface/transformers';
9187
+
9188
+ // Create feature extraction pipeline
9189
+ const extractor = await pipeline('feature-extraction', 'Snowflake/snowflake-arctic-embed-m-v2.0');
9190
+
9191
+ // Generate sentence embeddings
9192
+ const sentences = [
9193
+ 'query: what is snowflake?',
9194
+ 'The Data Cloud!',
9195
+ 'Mexico City of Course!',
9196
+ ]
9197
+ const output = await extractor(sentences, { normalize: true, pooling: 'cls' });
9198
+
9199
+ // Compute similarity scores
9200
+ const [source_embeddings, ...document_embeddings ] = output.tolist();
9201
+ const similarities = document_embeddings.map(x => dot(source_embeddings, x));
9202
+ console.log(similarities); // [0.32719788157046004, 0.06960141111667434]
9203
+ ```
9204
+
9205
 
9206
  ## Contact
9207