@genkit-ai/dev-local-vectorstore
TypeScript icon, indicating that this package has built-in type declarations

1.7.0 • Public • Published

Dev Local Vector Store for Genkit

This is a simple implementation of a vector store that can be used to local development and testing.

This plugin is not meant to be used in production.

Installing the plugin

npm i --save @genkit-ai/dev-local-vectorstore

Using the plugin

import { Document, genkit } from 'genkit';
import {
  googleAI,
  gemini20Flash, // Replaced gemini15Flash with gemini20Flash
  textEmbeddingGecko001,
} from '@genkit-ai/googleai';
import {
  devLocalVectorstore,
  devLocalIndexerRef,
  devLocalRetrieverRef,
} from '@genkit-ai/dev-local-vectorstore';

const ai = genkit({
  plugins: [
    googleAI(),
    devLocalVectorstore([
      {
        indexName: 'BobFacts',
        embedder: textEmbeddingGecko001,
      },
    ]),
  ],
  model: gemini20Flash, // Use gemini20Flash
});

// Reference to a local vector database storing Genkit documentation
const indexer = devLocalIndexerRef('BobFacts');
const retriever = devLocalRetrieverRef('BobFacts');

async function main() {
  // Add documents to the index. Only do it once.
  await ai.index({
    indexer: indexer,
    documents: [
      Document.fromText('Bob lives on the moon.'),
      Document.fromText('Bob is 42 years old.'),
      Document.fromText('Bob likes bananas.'),
      Document.fromText('Bob has 11 cats.'),
    ],
  });

  const question = 'How old is Bob?';

  // Consistent API to retrieve most relevant documents based on semantic similarity to query
  const docs = await ai.retrieve({
    retriever: retriever,
    query: question,
  });

  const result = await ai.generate({
    prompt: `Use the provided context from the Genkit documentation to answer this query: ${question}`,
    docs, // Pass retrieved documents to the model
  });

  console.log(result.text);
}

main();

The sources for this package are in the main Genkit repo. Please file issues and pull requests against that repo.

Usage information and reference details can be found in Genkit documentation.

License: Apache 2.0

/@genkit-ai/dev-local-vectorstore/

    Package Sidebar

    Install

    npm i @genkit-ai/dev-local-vectorstore

    Weekly Downloads

    638

    Version

    1.7.0

    License

    Apache-2.0

    Unpacked Size

    52.5 kB

    Total Files

    13

    Last publish

    Collaborators

    • pavelgj
    • i2amsam
    • apascal07
    • google-wombot