Code Monkey home page Code Monkey logo

nextjs-sentence-embeddings's Introduction

Here is a draft README for the Sentence Embeddings with NextJS project:

Sentence Embeddings with NextJS

This project demonstrates generating sentence embeddings using a Transformer model in a Next.js application.

Overview

The app allows users to input a query sentence and a list of other sentences. It then uses a background Web Worker to generate embeddings for each sentence using the @xenova/transformers library and a MiniLM model.

The query embedding is compared to the other sentence embeddings using cosine similarity to find the most similar sentences.

local embeddings

The results are displayed on the page, ranked by similarity score.

Running the app

To run the app locally:

  1. Clone the repo
  2. Run npm install
  3. Run npm run dev
  4. Open http://localhost:3000 in your browser

Implementation

The app is implemented using:

  • Next.js framework (React)
  • Tailwind CSS for styling
  • Web Workers for background processing
  • @xenova/transformers for generating embeddings

The worker script worker.js handles loading the model and generating embeddings. It communicates with the main app using message passing.

The main App component manages:

  • User input for query/sentences
  • Passing input to worker
  • Receiving and displaying results
  • Loading state

nextjs-sentence-embeddings's People

Contributors

ashgansh avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.