From f9520d937463f076a24c8740566ccde6518d5c63 Mon Sep 17 00:00:00 2001 From: Sourabh Desai <sourabhdesai@gmail.com> Date: Mon, 10 Jul 2023 08:14:32 +0000 Subject: [PATCH] small bugs --- apps/simple/listIndex.ts | 4 ++-- packages/core/src/index/list/ListIndex.ts | 9 ++++++--- packages/core/src/index/list/utils.ts | 4 ++-- packages/core/src/storage/docStore/utils.ts | 2 +- 4 files changed, 11 insertions(+), 8 deletions(-) diff --git a/apps/simple/listIndex.ts b/apps/simple/listIndex.ts index 5b7a5203b..8ada0b32d 100644 --- a/apps/simple/listIndex.ts +++ b/apps/simple/listIndex.ts @@ -1,11 +1,11 @@ import { Document } from "@llamaindex/core/src/Node"; -import { ListIndex } from "@llamaindex/core/src/index/list"; +import { ListIndex, ListRetrieverMode } from "@llamaindex/core/src/index/list"; import essay from "./essay"; async function main() { const document = new Document({ text: essay }); const index = await ListIndex.fromDocuments([document]); - const queryEngine = index.asQueryEngine(); + const queryEngine = index.asQueryEngine(ListRetrieverMode.LLM); const response = await queryEngine.aquery( "What did the author do growing up?" ); diff --git a/packages/core/src/index/list/ListIndex.ts b/packages/core/src/index/list/ListIndex.ts index dcf7925c9..1b9026b9d 100644 --- a/packages/core/src/index/list/ListIndex.ts +++ b/packages/core/src/index/list/ListIndex.ts @@ -6,7 +6,10 @@ import { storageContextFromDefaults, } from "../../storage/StorageContext"; import { BaseRetriever } from "../../Retriever"; -import { ListIndexRetriever } from "./ListIndexRetriever"; +import { + ListIndexRetriever, + ListIndexLLMRetriever, +} from "./ListIndexRetriever"; import { ServiceContext, serviceContextFromDefaults, @@ -98,7 +101,7 @@ export class ListIndex extends BaseIndex<IndexList> { case ListRetrieverMode.DEFAULT: return new ListIndexRetriever(this); case ListRetrieverMode.LLM: - throw new Error(`Support for LLM retriever mode is not implemented`); + return new ListIndexLLMRetriever(this); default: throw new Error(`Unknown retriever mode: ${mode}`); } @@ -107,7 +110,7 @@ export class ListIndex extends BaseIndex<IndexList> { asQueryEngine( mode: ListRetrieverMode = ListRetrieverMode.DEFAULT ): BaseQueryEngine { - return new RetrieverQueryEngine(this.asRetriever()); + return new RetrieverQueryEngine(this.asRetriever(mode)); } static async _buildIndexFromNodes( diff --git a/packages/core/src/index/list/utils.ts b/packages/core/src/index/list/utils.ts index b7a1d3f8f..ec248514b 100644 --- a/packages/core/src/index/list/utils.ts +++ b/packages/core/src/index/list/utils.ts @@ -57,9 +57,9 @@ export const defaultParseChoiceSelectAnswerFn: ChoiceSelectParserFunction = ( throw new Error( `Invalid answer number: ${docNum}. Answer number must be between 1 and ${numChoices}` ); - } else { - parseResult[docNum] = answerRelevance; } + } else { + parseResult[docNum] = answerRelevance; } } catch (e) { if (raiseErr) { diff --git a/packages/core/src/storage/docStore/utils.ts b/packages/core/src/storage/docStore/utils.ts index 3df1c1b30..273420026 100644 --- a/packages/core/src/storage/docStore/utils.ts +++ b/packages/core/src/storage/docStore/utils.ts @@ -12,7 +12,7 @@ export function docToJson(doc: BaseNode): Record<string, any> { export function jsonToDoc(docDict: Record<string, any>): BaseNode { let docType = docDict[TYPE_KEY]; - let dataDict = docDict[DATA_KEY]; + let dataDict = JSON.parse(docDict[DATA_KEY]); let doc: BaseNode; if (docType === ObjectType.DOCUMENT) { -- GitLab