Logo

Qdrant Vector Store

qdrant.tech

To run this example, you need to have a Qdrant instance running. You can run it with Docker:

docker pull qdrant/qdrant
docker run -p 6333:6333 qdrant/qdrant

Installation

npm install llamaindex @llamaindex/qdrant

Importing the modules

import fs from "node:fs/promises";
import { Document, VectorStoreIndex } from "llamaindex";
import { QdrantVectorStore } from "@llamaindex/qdrant";

Load the documents

const path = "node_modules/llamaindex/examples/abramov.txt";
const essay = await fs.readFile(path, "utf-8");

Setup Qdrant

const vectorStore = new QdrantVectorStore({
  url: "http://localhost:6333",
});

Setup the index

const document = new Document({ text: essay, id_: path });
 
const index = await VectorStoreIndex.fromDocuments([document], {
  vectorStore,
});

Query the index

const queryEngine = index.asQueryEngine();
 
const response = await queryEngine.query({
  query: "What did the author do in college?",
});
 
// Output response
console.log(response.toString());

Full code

import fs from "node:fs/promises";
import { Document, VectorStoreIndex } from "llamaindex";
import { QdrantVectorStore } from "@llamaindex/qdrant";
 
async function main() {
  const path = "node_modules/llamaindex/examples/abramov.txt";
  const essay = await fs.readFile(path, "utf-8");
 
  const vectorStore = new QdrantVectorStore({
    url: "http://localhost:6333",
  });
 
  const document = new Document({ text: essay, id_: path });
 
  const index = await VectorStoreIndex.fromDocuments([document], {
    vectorStore,
  });
 
  const queryEngine = index.asQueryEngine();
 
  const response = await queryEngine.query({
    query: "What did the author do in college?",
  });
 
  // Output response
  console.log(response.toString());
}
 
main().catch(console.error);

API Reference

Edit on GitHub

Last updated on

On this page