JSPM

@energetic-ai/embeddings

0.2.0
  • ESM via JSPM
  • ES Module Entrypoint
  • Export Map
  • Keywords
  • License
  • Repository URL
  • TypeScript Types
  • README
  • Created
  • Published
  • Downloads 426
  • Score
    100M100P100Q102420F
  • License Apache-2.0

Fast, easy-to-use AI text embeddings, optimized for serverless functions.

Package Exports

  • @energetic-ai/embeddings
  • @energetic-ai/embeddings/dist/index.js

This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (@energetic-ai/embeddings) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.

Readme

EnergeticAI

Fast, easy-to-use AI sentence embeddings, optimized for serverless functions.

EnergeticAI Embeddings

EnergeticAI Embeddings is a library for computing sentence embeddings, which are vector representations of sentences that capture their meaning.

Sentence embeddings can be used for semantic search, recommendations, clustering, and more.

It leverages the Universal Sentence Encoder model from Google Research, which is trained on a variety of data sources and outputs 512-dimensional embeddings.

Install

Install this package, along with @energetic-ai/core and model weights (e.g. @energetic-ai/model-embeddings-en):

npm install @energetic-ai/core @energetic-ai/embeddings @energetic-ai/model-embeddings-en

Usage

You can easily call this method to compute embeddings for a list of sentences, and compare distances:

import { initModel, distance } from "@energetic-ai/embeddings";
import { modelSource } from "@energetic-ai/model-embeddings-en";
(async () => {
  const model = await initModel(modelSource);
  const embeddings = await model.embed(["hello", "world"]);
  console.log(distance(embeddings[0], embeddings[1])));
})();

Examples

See the examples directory for examples.

Development

This repository uses Lerna to manage packages, and Vitest to run tests.

Run tests with this method:

npm run test

License

Apache 2.0, except for dependencies.

Acknowledgements

This project is derived from TensorFlow.js and the Universal Sentence Encoder model library, which are also Apache 2.0 licensed.