From b737bda40d1bd5db9d591f55d188ede51b417234 Mon Sep 17 00:00:00 2001 From: Marcus Schiesser <mail@marcusschiesser.de> Date: Thu, 18 Jan 2024 08:46:08 +0700 Subject: [PATCH] refactor: encourage using parameter objects for functions with more than 4 parameters (#398) --- .eslintrc.js | 3 +++ packages/core/src/PromptHelper.ts | 1 + packages/core/src/embeddings/utils.ts | 3 +++ packages/core/src/indices/summary/SummaryIndexRetriever.ts | 1 + packages/core/src/readers/SimpleMongoReader.ts | 1 + packages/core/src/synthesizers/builders.ts | 1 + 6 files changed, 10 insertions(+) diff --git a/.eslintrc.js b/.eslintrc.js index 5b999efa4..077771bc0 100644 --- a/.eslintrc.js +++ b/.eslintrc.js @@ -7,4 +7,7 @@ module.exports = { rootDir: ["apps/*/"], }, }, + rules: { + "max-params": ["error", 4], + }, }; diff --git a/packages/core/src/PromptHelper.ts b/packages/core/src/PromptHelper.ts index 556b28652..8b497df93 100644 --- a/packages/core/src/PromptHelper.ts +++ b/packages/core/src/PromptHelper.ts @@ -37,6 +37,7 @@ export class PromptHelper { tokenizer: (text: string) => Uint32Array; separator = " "; + // eslint-disable-next-line max-params constructor( contextWindow = DEFAULT_CONTEXT_WINDOW, numOutput = DEFAULT_NUM_OUTPUTS, diff --git a/packages/core/src/embeddings/utils.ts b/packages/core/src/embeddings/utils.ts index 097e9d78c..1e3821b87 100644 --- a/packages/core/src/embeddings/utils.ts +++ b/packages/core/src/embeddings/utils.ts @@ -66,6 +66,7 @@ export function similarity( * @param similarityCutoff minimum similarity score * @returns */ +// eslint-disable-next-line max-params export function getTopKEmbeddings( queryEmbedding: number[], embeddings: number[][], @@ -108,6 +109,7 @@ export function getTopKEmbeddings( return [resultSimilarities, resultIds]; } +// eslint-disable-next-line max-params export function getTopKEmbeddingsLearner( queryEmbedding: number[], embeddings: number[][], @@ -120,6 +122,7 @@ export function getTopKEmbeddingsLearner( // https://github.com/mljs/libsvm which itself hasn't been updated in a while } +// eslint-disable-next-line max-params export function getTopKMMREmbeddings( queryEmbedding: number[], embeddings: number[][], diff --git a/packages/core/src/indices/summary/SummaryIndexRetriever.ts b/packages/core/src/indices/summary/SummaryIndexRetriever.ts index aeb703ee2..173b58d00 100644 --- a/packages/core/src/indices/summary/SummaryIndexRetriever.ts +++ b/packages/core/src/indices/summary/SummaryIndexRetriever.ts @@ -61,6 +61,7 @@ export class SummaryIndexLLMRetriever implements BaseRetriever { parseChoiceSelectAnswerFn: ChoiceSelectParserFunction; serviceContext: ServiceContext; + // eslint-disable-next-line max-params constructor( index: SummaryIndex, choiceSelectPrompt?: ChoiceSelectPrompt, diff --git a/packages/core/src/readers/SimpleMongoReader.ts b/packages/core/src/readers/SimpleMongoReader.ts index 1c2b0dc76..73d6bb7d5 100644 --- a/packages/core/src/readers/SimpleMongoReader.ts +++ b/packages/core/src/readers/SimpleMongoReader.ts @@ -36,6 +36,7 @@ export class SimpleMongoReader implements BaseReader { * @returns {Promise<Document[]>} * @throws If a field specified in fieldNames or metadataNames is not found in a MongoDB document. */ + // eslint-disable-next-line max-params public async loadData( dbName: string, collectionName: string, diff --git a/packages/core/src/synthesizers/builders.ts b/packages/core/src/synthesizers/builders.ts index 460ca06e7..1e8db1ab2 100644 --- a/packages/core/src/synthesizers/builders.ts +++ b/packages/core/src/synthesizers/builders.ts @@ -168,6 +168,7 @@ export class Refine implements ResponseBuilder { return response; } + // eslint-disable-next-line max-params private async refineResponseSingle( initialReponse: string, queryStr: string, -- GitLab