@@ -4,7 +4,19 @@ import { IDB } from "./services/db/db.types";
44import { IEmbeddingModel } from "./services/embeddings/embeddings.types" ;
55import { ILLMModel } from "./services/llm/llm.types" ;
66
7+ /**
8+ * The Query namespace provides functions for querying a database and retrieving nodes based on various criteria.
9+ */
710export namespace Query {
11+ /**
12+ * Retrieves database nodes based on a vector query.
13+ *
14+ * @param {IDB } db - The database instance.
15+ * @param {string } indexName - The name of the index to query.
16+ * @param {number[] } vector - The vector to query with.
17+ * @param {number } threshold - The minimum score threshold for the query results.
18+ * @returns {Promise<DBNode[]> } - A promise that resolves to an array of DBNode objects.
19+ */
820 export async function getDBNodesFromVectorQuery (
921 db : IDB ,
1022 indexName : string ,
@@ -40,6 +52,14 @@ export namespace Query {
4052 return nodes ;
4153 }
4254
55+ /**
56+ * Retrieves code nodes from the database based on a list of keywords.
57+ *
58+ * @param {IDB } db - The database object.
59+ * @param {IEmbeddingModel } embeddingModel - The embedding model used for generating query vectors.
60+ * @param {string[] } keywords - The list of keywords to search for.
61+ * @returns {Promise<DBNode[]> } - A promise that resolves to an array of DBNode objects matching the keywords.
62+ */
4363 export async function getCodeNodesFromKeywords (
4464 db : IDB ,
4565 embeddingModel : IEmbeddingModel ,
@@ -62,6 +82,13 @@ export namespace Query {
6282 return results ;
6383 }
6484
85+ /**
86+ * Retrieves database keywords from a given query using a language model.
87+ *
88+ * @param llm - The language model used to generate the keywords.
89+ * @param query - The query string to extract keywords from.
90+ * @returns A promise that resolves to an array of database keywords extracted from the query.
91+ */
6592 export async function getDBKeywordsFromQuery (
6693 llm : ILLMModel ,
6794 query : string
0 commit comments