From 2a7a2b832f704f85b3f786a4bd3044a1e5dafc08 Mon Sep 17 00:00:00 2001 From: Denny Wang <75592161+rd4cake@users.noreply.github.com> Date: Mon, 11 Nov 2024 19:13:40 -0500 Subject: [PATCH] fix(community) : Upgrade node-llama-cpp to be compatible with version 3 (#7135) Co-authored-by: Jacky Chen --- .../docs/integrations/chat/llama_cpp.mdx | 4 +- .../docs/integrations/llms/llama_cpp.mdx | 4 +- .../integrations/text_embedding/llama_cpp.mdx | 4 +- examples/src/embeddings/llama_cpp_basic.ts | 2 +- examples/src/embeddings/llama_cpp_docs.ts | 2 +- .../src/models/chat/integration_llama_cpp.ts | 2 +- .../chat/integration_llama_cpp_chain.ts | 5 +- .../chat/integration_llama_cpp_stream.ts | 5 +- .../integration_llama_cpp_stream_invoke.ts | 5 +- .../integration_llama_cpp_stream_multi.ts | 5 +- .../chat/integration_llama_cpp_system.ts | 2 +- examples/src/models/llm/llama_cpp.ts | 2 +- examples/src/models/llm/llama_cpp_stream.ts | 5 +- libs/langchain-community/package.json | 2 +- .../src/chat_models/llama_cpp.ts | 93 +- .../tests/chatllama_cpp.int.test.ts | 23 +- .../src/embeddings/llama_cpp.ts | 30 +- .../embeddings/tests/llama_cpp.int.test.ts | 10 +- .../langchain-community/src/llms/llama_cpp.ts | 50 +- .../src/llms/tests/llama_cpp.int.test.ts | 21 +- .../src/utils/llama_cpp.ts | 56 +- yarn.lock | 1041 +++++++++++------ 22 files changed, 908 insertions(+), 465 deletions(-) diff --git a/docs/core_docs/docs/integrations/chat/llama_cpp.mdx b/docs/core_docs/docs/integrations/chat/llama_cpp.mdx index c0190f3041f6..dbff7089dece 100644 --- a/docs/core_docs/docs/integrations/chat/llama_cpp.mdx +++ b/docs/core_docs/docs/integrations/chat/llama_cpp.mdx @@ -12,14 +12,14 @@ This module is based on the [node-llama-cpp](https://github.com/withcatai/node-l ## Setup -You'll need to install major version `2` of the [node-llama-cpp](https://github.com/withcatai/node-llama-cpp) module to communicate with your local model. +You'll need to install major version `3` of the [node-llama-cpp](https://github.com/withcatai/node-llama-cpp) module to communicate with your local model. import IntegrationInstallTooltip from "@mdx_components/integration_install_tooltip.mdx"; ```bash npm2yarn -npm install -S node-llama-cpp@2 @langchain/community @langchain/core +npm install -S node-llama-cpp@3 @langchain/community @langchain/core ``` You will also need a local Llama 2 model (or a model supported by [node-llama-cpp](https://github.com/withcatai/node-llama-cpp)). You will need to pass the path to this model to the LlamaCpp module as a part of the parameters (see example). diff --git a/docs/core_docs/docs/integrations/llms/llama_cpp.mdx b/docs/core_docs/docs/integrations/llms/llama_cpp.mdx index 576ea560440b..508229ac13b6 100644 --- a/docs/core_docs/docs/integrations/llms/llama_cpp.mdx +++ b/docs/core_docs/docs/integrations/llms/llama_cpp.mdx @@ -12,10 +12,10 @@ This module is based on the [node-llama-cpp](https://github.com/withcatai/node-l ## Setup -You'll need to install major version `2` of the [node-llama-cpp](https://github.com/withcatai/node-llama-cpp) module to communicate with your local model. +You'll need to install major version `3` of the [node-llama-cpp](https://github.com/withcatai/node-llama-cpp) module to communicate with your local model. ```bash npm2yarn -npm install -S node-llama-cpp@2 +npm install -S node-llama-cpp@3 ``` import IntegrationInstallTooltip from "@mdx_components/integration_install_tooltip.mdx"; diff --git a/docs/core_docs/docs/integrations/text_embedding/llama_cpp.mdx b/docs/core_docs/docs/integrations/text_embedding/llama_cpp.mdx index b4cb6868dd83..35ec34988a9c 100644 --- a/docs/core_docs/docs/integrations/text_embedding/llama_cpp.mdx +++ b/docs/core_docs/docs/integrations/text_embedding/llama_cpp.mdx @@ -12,10 +12,10 @@ This module is based on the [node-llama-cpp](https://github.com/withcatai/node-l ## Setup -You'll need to install major version `2` of the [node-llama-cpp](https://github.com/withcatai/node-llama-cpp) module to communicate with your local model. +You'll need to install major version `3` of the [node-llama-cpp](https://github.com/withcatai/node-llama-cpp) module to communicate with your local model. ```bash npm2yarn -npm install -S node-llama-cpp@2 +npm install -S node-llama-cpp@3 ``` import IntegrationInstallTooltip from "@mdx_components/integration_install_tooltip.mdx"; diff --git a/examples/src/embeddings/llama_cpp_basic.ts b/examples/src/embeddings/llama_cpp_basic.ts index 1f956f785eff..cf89ffd4262f 100644 --- a/examples/src/embeddings/llama_cpp_basic.ts +++ b/examples/src/embeddings/llama_cpp_basic.ts @@ -2,7 +2,7 @@ import { LlamaCppEmbeddings } from "@langchain/community/embeddings/llama_cpp"; const llamaPath = "/Replace/with/path/to/your/model/gguf-llama2-q4_0.bin"; -const embeddings = new LlamaCppEmbeddings({ +const embeddings = await LlamaCppEmbeddings.initialize({ modelPath: llamaPath, }); diff --git a/examples/src/embeddings/llama_cpp_docs.ts b/examples/src/embeddings/llama_cpp_docs.ts index 8a2b5f773745..19e9ee404abe 100644 --- a/examples/src/embeddings/llama_cpp_docs.ts +++ b/examples/src/embeddings/llama_cpp_docs.ts @@ -4,7 +4,7 @@ const llamaPath = "/Replace/with/path/to/your/model/gguf-llama2-q4_0.bin"; const documents = ["Hello World!", "Bye Bye!"]; -const embeddings = new LlamaCppEmbeddings({ +const embeddings = await LlamaCppEmbeddings.initialize({ modelPath: llamaPath, }); diff --git a/examples/src/models/chat/integration_llama_cpp.ts b/examples/src/models/chat/integration_llama_cpp.ts index edad8fe7cfa0..bdd2f7818c3c 100644 --- a/examples/src/models/chat/integration_llama_cpp.ts +++ b/examples/src/models/chat/integration_llama_cpp.ts @@ -3,7 +3,7 @@ import { HumanMessage } from "@langchain/core/messages"; const llamaPath = "/Replace/with/path/to/your/model/gguf-llama2-q4_0.bin"; -const model = new ChatLlamaCpp({ modelPath: llamaPath }); +const model = await ChatLlamaCpp.initialize({ modelPath: llamaPath }); const response = await model.invoke([ new HumanMessage({ content: "My name is John." }), diff --git a/examples/src/models/chat/integration_llama_cpp_chain.ts b/examples/src/models/chat/integration_llama_cpp_chain.ts index fa4778e2d6c6..3499929b7ef7 100644 --- a/examples/src/models/chat/integration_llama_cpp_chain.ts +++ b/examples/src/models/chat/integration_llama_cpp_chain.ts @@ -4,7 +4,10 @@ import { PromptTemplate } from "@langchain/core/prompts"; const llamaPath = "/Replace/with/path/to/your/model/gguf-llama2-q4_0.bin"; -const model = new ChatLlamaCpp({ modelPath: llamaPath, temperature: 0.5 }); +const model = await ChatLlamaCpp.initialize({ + modelPath: llamaPath, + temperature: 0.5, +}); const prompt = PromptTemplate.fromTemplate( "What is a good name for a company that makes {product}?" diff --git a/examples/src/models/chat/integration_llama_cpp_stream.ts b/examples/src/models/chat/integration_llama_cpp_stream.ts index 2f5072dca0f3..33697fedd876 100644 --- a/examples/src/models/chat/integration_llama_cpp_stream.ts +++ b/examples/src/models/chat/integration_llama_cpp_stream.ts @@ -2,7 +2,10 @@ import { ChatLlamaCpp } from "@langchain/community/chat_models/llama_cpp"; const llamaPath = "/Replace/with/path/to/your/model/gguf-llama2-q4_0.bin"; -const model = new ChatLlamaCpp({ modelPath: llamaPath, temperature: 0.7 }); +const model = await ChatLlamaCpp.initialize({ + modelPath: llamaPath, + temperature: 0.7, +}); const stream = await model.stream("Tell me a short story about a happy Llama."); diff --git a/examples/src/models/chat/integration_llama_cpp_stream_invoke.ts b/examples/src/models/chat/integration_llama_cpp_stream_invoke.ts index 7685b687955f..f452b9764fd8 100644 --- a/examples/src/models/chat/integration_llama_cpp_stream_invoke.ts +++ b/examples/src/models/chat/integration_llama_cpp_stream_invoke.ts @@ -3,7 +3,10 @@ import { SystemMessage, HumanMessage } from "@langchain/core/messages"; const llamaPath = "/Replace/with/path/to/your/model/gguf-llama2-q4_0.bin"; -const model = new ChatLlamaCpp({ modelPath: llamaPath, temperature: 0.7 }); +const model = await ChatLlamaCpp.initialize({ + modelPath: llamaPath, + temperature: 0.7, +}); const controller = new AbortController(); diff --git a/examples/src/models/chat/integration_llama_cpp_stream_multi.ts b/examples/src/models/chat/integration_llama_cpp_stream_multi.ts index de4dcafe9224..9d2d337d0284 100644 --- a/examples/src/models/chat/integration_llama_cpp_stream_multi.ts +++ b/examples/src/models/chat/integration_llama_cpp_stream_multi.ts @@ -3,7 +3,10 @@ import { SystemMessage, HumanMessage } from "@langchain/core/messages"; const llamaPath = "/Replace/with/path/to/your/model/gguf-llama2-q4_0.bin"; -const llamaCpp = new ChatLlamaCpp({ modelPath: llamaPath, temperature: 0.7 }); +const llamaCpp = await ChatLlamaCpp.initialize({ + modelPath: llamaPath, + temperature: 0.7, +}); const stream = await llamaCpp.stream([ new SystemMessage( diff --git a/examples/src/models/chat/integration_llama_cpp_system.ts b/examples/src/models/chat/integration_llama_cpp_system.ts index 4c371491eeaf..ec53a8aac4b7 100644 --- a/examples/src/models/chat/integration_llama_cpp_system.ts +++ b/examples/src/models/chat/integration_llama_cpp_system.ts @@ -3,7 +3,7 @@ import { SystemMessage, HumanMessage } from "@langchain/core/messages"; const llamaPath = "/Replace/with/path/to/your/model/gguf-llama2-q4_0.bin"; -const model = new ChatLlamaCpp({ modelPath: llamaPath }); +const model = await ChatLlamaCpp.initialize({ modelPath: llamaPath }); const response = await model.invoke([ new SystemMessage( diff --git a/examples/src/models/llm/llama_cpp.ts b/examples/src/models/llm/llama_cpp.ts index 3411837ee9fd..da7d8b487930 100644 --- a/examples/src/models/llm/llama_cpp.ts +++ b/examples/src/models/llm/llama_cpp.ts @@ -3,7 +3,7 @@ import { LlamaCpp } from "@langchain/community/llms/llama_cpp"; const llamaPath = "/Replace/with/path/to/your/model/gguf-llama2-q4_0.bin"; const question = "Where do Llamas come from?"; -const model = new LlamaCpp({ modelPath: llamaPath }); +const model = await LlamaCpp.initialize({ modelPath: llamaPath }); console.log(`You: ${question}`); const response = await model.invoke(question); diff --git a/examples/src/models/llm/llama_cpp_stream.ts b/examples/src/models/llm/llama_cpp_stream.ts index b95fddebc33a..022da280ff5d 100644 --- a/examples/src/models/llm/llama_cpp_stream.ts +++ b/examples/src/models/llm/llama_cpp_stream.ts @@ -2,7 +2,10 @@ import { LlamaCpp } from "@langchain/community/llms/llama_cpp"; const llamaPath = "/Replace/with/path/to/your/model/gguf-llama2-q4_0.bin"; -const model = new LlamaCpp({ modelPath: llamaPath, temperature: 0.7 }); +const model = await LlamaCpp.initialize({ + modelPath: llamaPath, + temperature: 0.7, +}); const prompt = "Tell me a short story about a happy Llama."; diff --git a/libs/langchain-community/package.json b/libs/langchain-community/package.json index a1f60050f981..23517ee984d2 100644 --- a/libs/langchain-community/package.json +++ b/libs/langchain-community/package.json @@ -187,7 +187,7 @@ "mongodb": "^5.2.0", "mysql2": "^3.9.8", "neo4j-driver": "^5.17.0", - "node-llama-cpp": "^2", + "node-llama-cpp": "3.1.1", "notion-to-md": "^3.1.0", "officeparser": "^4.0.4", "pdf-parse": "1.1.1", diff --git a/libs/langchain-community/src/chat_models/llama_cpp.ts b/libs/langchain-community/src/chat_models/llama_cpp.ts index 94685dc087df..960228c1bb29 100644 --- a/libs/langchain-community/src/chat_models/llama_cpp.ts +++ b/libs/langchain-community/src/chat_models/llama_cpp.ts @@ -3,7 +3,11 @@ import { LlamaModel, LlamaContext, LlamaChatSession, - type ConversationInteraction, + type Token, + ChatUserMessage, + ChatModelResponse, + ChatHistoryItem, + getLlama, } from "node-llama-cpp"; import { @@ -47,7 +51,7 @@ export interface LlamaCppCallOptions extends BaseLanguageModelCallOptions { * @example * ```typescript * // Initialize the ChatLlamaCpp model with the path to the model binary file. - * const model = new ChatLlamaCpp({ + * const model = await ChatLlamaCpp.initialize({ * modelPath: "/Replace/with/path/to/your/model/gguf-llama2-q4_0.bin", * temperature: 0.5, * }); @@ -87,20 +91,35 @@ export class ChatLlamaCpp extends SimpleChatModel { return "ChatLlamaCpp"; } - constructor(inputs: LlamaCppInputs) { + public constructor(inputs: LlamaCppInputs) { super(inputs); this.maxTokens = inputs?.maxTokens; this.temperature = inputs?.temperature; this.topK = inputs?.topK; this.topP = inputs?.topP; this.trimWhitespaceSuffix = inputs?.trimWhitespaceSuffix; - this._model = createLlamaModel(inputs); - this._context = createLlamaContext(this._model, inputs); this._session = null; } + /** + * Initializes the llama_cpp model for usage in the chat models wrapper. + * @param inputs - the inputs passed onto the model. + * @returns A Promise that resolves to the ChatLlamaCpp type class. + */ + public static async initialize( + inputs: LlamaBaseCppInputs + ): Promise { + const instance = new ChatLlamaCpp(inputs); + const llama = await getLlama(); + + instance._model = await createLlamaModel(inputs, llama); + instance._context = await createLlamaContext(instance._model, inputs); + + return instance; + } + _llmType() { - return "llama2_cpp"; + return "llama_cpp"; } /** @ignore */ @@ -146,7 +165,9 @@ export class ChatLlamaCpp extends SimpleChatModel { signal: options.signal, onToken: async (tokens: number[]) => { options.onToken?.(tokens); - await runManager?.handleLLMNewToken(this._context.decode(tokens)); + await runManager?.handleLLMNewToken( + this._model.detokenize(tokens.map((num) => num as Token)) + ); }, maxTokens: this?.maxTokens, temperature: this?.temperature, @@ -180,20 +201,23 @@ export class ChatLlamaCpp extends SimpleChatModel { }; const prompt = this._buildPrompt(input); + const sequence = this._context.getSequence(); const stream = await this.caller.call(async () => - this._context.evaluate(this._context.encode(prompt), promptOptions) + sequence.evaluate(this._model.tokenize(prompt), promptOptions) ); for await (const chunk of stream) { yield new ChatGenerationChunk({ - text: this._context.decode([chunk]), + text: this._model.detokenize([chunk]), message: new AIMessageChunk({ - content: this._context.decode([chunk]), + content: this._model.detokenize([chunk]), }), generationInfo: {}, }); - await runManager?.handleLLMNewToken(this._context.decode([chunk]) ?? ""); + await runManager?.handleLLMNewToken( + this._model.detokenize([chunk]) ?? "" + ); } } @@ -202,12 +226,12 @@ export class ChatLlamaCpp extends SimpleChatModel { let prompt = ""; let sysMessage = ""; let noSystemMessages: BaseMessage[] = []; - let interactions: ConversationInteraction[] = []; + let interactions: ChatHistoryItem[] = []; // Let's see if we have a system message - if (messages.findIndex((msg) => msg._getType() === "system") !== -1) { + if (messages.findIndex((msg) => msg.getType() === "system") !== -1) { const sysMessages = messages.filter( - (message) => message._getType() === "system" + (message) => message.getType() === "system" ); const systemMessageContent = sysMessages[sysMessages.length - 1].content; @@ -222,7 +246,7 @@ export class ChatLlamaCpp extends SimpleChatModel { // Now filter out the system messages noSystemMessages = messages.filter( - (message) => message._getType() !== "system" + (message) => message.getType() !== "system" ); } else { noSystemMessages = messages; @@ -231,9 +255,7 @@ export class ChatLlamaCpp extends SimpleChatModel { // Lets see if we just have a prompt left or are their previous interactions? if (noSystemMessages.length > 1) { // Is the last message a prompt? - if ( - noSystemMessages[noSystemMessages.length - 1]._getType() === "human" - ) { + if (noSystemMessages[noSystemMessages.length - 1].getType() === "human") { const finalMessageContent = noSystemMessages[noSystemMessages.length - 1].content; if (typeof finalMessageContent !== "string") { @@ -261,23 +283,23 @@ export class ChatLlamaCpp extends SimpleChatModel { // Now lets construct a session according to what we got if (sysMessage !== "" && interactions.length > 0) { this._session = new LlamaChatSession({ - context: this._context, - conversationHistory: interactions, + contextSequence: this._context.getSequence(), systemPrompt: sysMessage, }); + this._session.setChatHistory(interactions); } else if (sysMessage !== "" && interactions.length === 0) { this._session = new LlamaChatSession({ - context: this._context, + contextSequence: this._context.getSequence(), systemPrompt: sysMessage, }); } else if (sysMessage === "" && interactions.length > 0) { this._session = new LlamaChatSession({ - context: this._context, - conversationHistory: interactions, + contextSequence: this._context.getSequence(), }); + this._session.setChatHistory(interactions); } else { this._session = new LlamaChatSession({ - context: this._context, + contextSequence: this._context.getSequence(), }); } @@ -287,8 +309,8 @@ export class ChatLlamaCpp extends SimpleChatModel { // This builds a an array of interactions protected _convertMessagesToInteractions( messages: BaseMessage[] - ): ConversationInteraction[] { - const result: ConversationInteraction[] = []; + ): ChatHistoryItem[] { + const result: ChatHistoryItem[] = []; for (let i = 0; i < messages.length; i += 2) { if (i + 1 < messages.length) { @@ -299,10 +321,13 @@ export class ChatLlamaCpp extends SimpleChatModel { "ChatLlamaCpp does not support non-string message content." ); } - result.push({ - prompt, - response, - }); + const llamaPrompt: ChatUserMessage = { type: "user", text: prompt }; + const llamaResponse: ChatModelResponse = { + type: "model", + response: [response], + }; + result.push(llamaPrompt); + result.push(llamaResponse); } } @@ -313,11 +338,11 @@ export class ChatLlamaCpp extends SimpleChatModel { const prompt = input .map((message) => { let messageText; - if (message._getType() === "human") { + if (message.getType() === "human") { messageText = `[INST] ${message.content} [/INST]`; - } else if (message._getType() === "ai") { + } else if (message.getType() === "ai") { messageText = message.content; - } else if (message._getType() === "system") { + } else if (message.getType() === "system") { messageText = `<> ${message.content} <>`; } else if (ChatMessage.isInstance(message)) { messageText = `\n\n${message.role[0].toUpperCase()}${message.role.slice( @@ -325,7 +350,7 @@ export class ChatLlamaCpp extends SimpleChatModel { )}: ${message.content}`; } else { console.warn( - `Unsupported message type passed to llama_cpp: "${message._getType()}"` + `Unsupported message type passed to llama_cpp: "${message.getType()}"` ); messageText = ""; } diff --git a/libs/langchain-community/src/chat_models/tests/chatllama_cpp.int.test.ts b/libs/langchain-community/src/chat_models/tests/chatllama_cpp.int.test.ts index 488e15c0874e..54b43217ab41 100644 --- a/libs/langchain-community/src/chat_models/tests/chatllama_cpp.int.test.ts +++ b/libs/langchain-community/src/chat_models/tests/chatllama_cpp.int.test.ts @@ -12,7 +12,7 @@ import { ChatLlamaCpp } from "../llama_cpp.js"; const llamaPath = getEnvironmentVariable("LLAMA_PATH")!; test.skip("Test predict", async () => { - const llamaCpp = new ChatLlamaCpp({ modelPath: llamaPath }); + const llamaCpp = await ChatLlamaCpp.initialize({ modelPath: llamaPath }); // @eslint-disable-next-line/@typescript-eslint/ban-ts-comment // @ts-expect-error unused var @@ -21,7 +21,7 @@ test.skip("Test predict", async () => { }); test.skip("Test call", async () => { - const llamaCpp = new ChatLlamaCpp({ modelPath: llamaPath }); + const llamaCpp = await ChatLlamaCpp.initialize({ modelPath: llamaPath }); // @eslint-disable-next-line/@typescript-eslint/ban-ts-comment // @ts-expect-error unused var @@ -32,7 +32,7 @@ test.skip("Test call", async () => { }); test.skip("Test multiple messages", async () => { - const llamaCpp = new ChatLlamaCpp({ modelPath: llamaPath }); + const llamaCpp = await ChatLlamaCpp.initialize({ modelPath: llamaPath }); // @eslint-disable-next-line/@typescript-eslint/ban-ts-comment // @ts-expect-error unused var @@ -47,7 +47,7 @@ test.skip("Test multiple messages", async () => { }); test.skip("Test system message", async () => { - const llamaCpp = new ChatLlamaCpp({ modelPath: llamaPath }); + const llamaCpp = await ChatLlamaCpp.initialize({ modelPath: llamaPath }); // @eslint-disable-next-line/@typescript-eslint/ban-ts-comment // @ts-expect-error unused var @@ -61,7 +61,10 @@ test.skip("Test system message", async () => { }); test.skip("test streaming call", async () => { - const llamaCpp = new ChatLlamaCpp({ modelPath: llamaPath, temperature: 0.7 }); + const llamaCpp = await ChatLlamaCpp.initialize({ + modelPath: llamaPath, + temperature: 0.7, + }); const stream = await llamaCpp.stream( "Tell me a short story about a happy Llama." @@ -77,7 +80,10 @@ test.skip("test streaming call", async () => { }); test.skip("test multi-mesage streaming call", async () => { - const llamaCpp = new ChatLlamaCpp({ modelPath: llamaPath, temperature: 0.7 }); + const llamaCpp = await ChatLlamaCpp.initialize({ + modelPath: llamaPath, + temperature: 0.7, + }); const stream = await llamaCpp.stream([ new SystemMessage( @@ -96,7 +102,10 @@ test.skip("test multi-mesage streaming call", async () => { }); test.skip("test multi-mesage streaming call and abort after 5s", async () => { - const llamaCpp = new ChatLlamaCpp({ modelPath: llamaPath, temperature: 0.7 }); + const llamaCpp = await ChatLlamaCpp.initialize({ + modelPath: llamaPath, + temperature: 0.7, + }); const controller = new AbortController(); setTimeout(() => { controller.abort(); diff --git a/libs/langchain-community/src/embeddings/llama_cpp.ts b/libs/langchain-community/src/embeddings/llama_cpp.ts index ab0a60cff60b..5a2103b33902 100644 --- a/libs/langchain-community/src/embeddings/llama_cpp.ts +++ b/libs/langchain-community/src/embeddings/llama_cpp.ts @@ -1,5 +1,5 @@ /* eslint-disable import/no-extraneous-dependencies */ -import { LlamaModel, LlamaContext } from "node-llama-cpp"; +import { LlamaModel, LlamaContext, getLlama } from "node-llama-cpp"; import { Embeddings, type EmbeddingsParams } from "@langchain/core/embeddings"; import { LlamaBaseCppInputs, @@ -19,8 +19,8 @@ export interface LlamaCppEmbeddingsParams * @example * ```typescript * // Initialize LlamaCppEmbeddings with the path to the model file - * const embeddings = new LlamaCppEmbeddings({ - * modelPath: "/Replace/with/path/to/your/model/gguf-llama2-q4_0.bin", + * const embeddings = await LlamaCppEmbeddings.initialize({ + * modelPath: llamaPath, * }); * * // Embed a query string using the Llama embeddings @@ -36,13 +36,27 @@ export class LlamaCppEmbeddings extends Embeddings { _context: LlamaContext; - constructor(inputs: LlamaCppEmbeddingsParams) { + public constructor(inputs: LlamaCppEmbeddingsParams) { super(inputs); const _inputs = inputs; _inputs.embedding = true; + } + + /** + * Initializes the llama_cpp model for usage in the embeddings wrapper. + * @param inputs - the inputs passed onto the model. + * @returns A Promise that resolves to the LlamaCppEmbeddings type class. + */ + public static async initialize( + inputs: LlamaBaseCppInputs + ): Promise { + const instance = new LlamaCppEmbeddings(inputs); + const llama = await getLlama(); + + instance._model = await createLlamaModel(inputs, llama); + instance._context = await createLlamaContext(instance._model, inputs); - this._model = createLlamaModel(_inputs); - this._context = createLlamaContext(this._model, _inputs); + return instance; } /** @@ -57,7 +71,7 @@ export class LlamaCppEmbeddings extends Embeddings { const encodings = await this.caller.call( () => new Promise((resolve) => { - resolve(this._context.encode(text)); + resolve(this._model.tokenize(text)); }) ); tokensArray.push(encodings); @@ -90,7 +104,7 @@ export class LlamaCppEmbeddings extends Embeddings { const encodings = await this.caller.call( () => new Promise((resolve) => { - resolve(this._context.encode(text)); + resolve(this._model.tokenize(text)); }) ); diff --git a/libs/langchain-community/src/embeddings/tests/llama_cpp.int.test.ts b/libs/langchain-community/src/embeddings/tests/llama_cpp.int.test.ts index b1819f943a21..60a805eab8fa 100644 --- a/libs/langchain-community/src/embeddings/tests/llama_cpp.int.test.ts +++ b/libs/langchain-community/src/embeddings/tests/llama_cpp.int.test.ts @@ -7,13 +7,17 @@ import { LlamaCppEmbeddings } from "../llama_cpp.js"; const llamaPath = getEnvironmentVariable("LLAMA_PATH")!; test.skip("Test LlamaCppEmbeddings.embedQuery", async () => { - const embeddings = new LlamaCppEmbeddings({ modelPath: llamaPath }); + const embeddings = await LlamaCppEmbeddings.initialize({ + modelPath: llamaPath, + }); const res = await embeddings.embedQuery("Hello Llama"); expect(typeof res[0]).toBe("number"); }); test.skip("Test LlamaCppEmbeddings.embedDocuments", async () => { - const embeddings = new LlamaCppEmbeddings({ modelPath: llamaPath }); + const embeddings = await LlamaCppEmbeddings.initialize({ + modelPath: llamaPath, + }); const res = await embeddings.embedDocuments(["Hello Llama", "Bye bye"]); expect(res).toHaveLength(2); expect(typeof res[0][0]).toBe("number"); @@ -21,7 +25,7 @@ test.skip("Test LlamaCppEmbeddings.embedDocuments", async () => { }); test.skip("Test LlamaCppEmbeddings concurrency", async () => { - const embeddings = new LlamaCppEmbeddings({ + const embeddings = await LlamaCppEmbeddings.initialize({ modelPath: llamaPath, batchSize: 1, }); diff --git a/libs/langchain-community/src/llms/llama_cpp.ts b/libs/langchain-community/src/llms/llama_cpp.ts index e39831299829..24fcc529a864 100644 --- a/libs/langchain-community/src/llms/llama_cpp.ts +++ b/libs/langchain-community/src/llms/llama_cpp.ts @@ -5,6 +5,7 @@ import { LlamaChatSession, LlamaJsonSchemaGrammar, LlamaGrammar, + getLlama, GbnfJsonSchema, } from "node-llama-cpp"; import { @@ -72,22 +73,38 @@ export class LlamaCpp extends LLM { return "LlamaCpp"; } - constructor(inputs: LlamaCppInputs) { + public constructor(inputs: LlamaCppInputs) { super(inputs); this.maxTokens = inputs?.maxTokens; this.temperature = inputs?.temperature; this.topK = inputs?.topK; this.topP = inputs?.topP; this.trimWhitespaceSuffix = inputs?.trimWhitespaceSuffix; - this._model = createLlamaModel(inputs); - this._context = createLlamaContext(this._model, inputs); - this._session = createLlamaSession(this._context); - this._jsonSchema = createLlamaJsonSchemaGrammar(inputs?.jsonSchema); - this._gbnf = createCustomGrammar(inputs?.gbnf); + } + + /** + * Initializes the llama_cpp model for usage. + * @param inputs - the inputs passed onto the model. + * @returns A Promise that resolves to the LlamaCpp type class. + */ + public static async initialize(inputs: LlamaCppInputs): Promise { + const instance = new LlamaCpp(inputs); + const llama = await getLlama(); + + instance._model = await createLlamaModel(inputs, llama); + instance._context = await createLlamaContext(instance._model, inputs); + instance._jsonSchema = await createLlamaJsonSchemaGrammar( + inputs?.jsonSchema, + llama + ); + instance._gbnf = await createCustomGrammar(inputs?.gbnf, llama); + instance._session = createLlamaSession(instance._context); + + return instance; } _llmType() { - return "llama2_cpp"; + return "llama_cpp"; } /** @ignore */ @@ -116,6 +133,11 @@ export class LlamaCpp extends LLM { }; const completion = await this._session.prompt(prompt, promptOptions); + + if (this._jsonSchema !== undefined && completion !== undefined) { + return this._jsonSchema.parse(completion) as unknown as string; + } + return completion; } catch (e) { throw new Error("Error getting prompt completion."); @@ -134,16 +156,24 @@ export class LlamaCpp extends LLM { topP: this?.topP, }; + if (this._context.sequencesLeft === 0) { + this._context = await createLlamaContext(this._model, LlamaCpp.inputs); + } + const sequence = this._context.getSequence(); + const tokens = this._model.tokenize(prompt); + const stream = await this.caller.call(async () => - this._context.evaluate(this._context.encode(prompt), promptOptions) + sequence.evaluate(tokens, promptOptions) ); for await (const chunk of stream) { yield new GenerationChunk({ - text: this._context.decode([chunk]), + text: this._model.detokenize([chunk]), generationInfo: {}, }); - await runManager?.handleLLMNewToken(this._context.decode([chunk]) ?? ""); + await runManager?.handleLLMNewToken( + this._model.detokenize([chunk]) ?? "" + ); } } } diff --git a/libs/langchain-community/src/llms/tests/llama_cpp.int.test.ts b/libs/langchain-community/src/llms/tests/llama_cpp.int.test.ts index 8f8d34e70a52..9f05bb0de10e 100644 --- a/libs/langchain-community/src/llms/tests/llama_cpp.int.test.ts +++ b/libs/langchain-community/src/llms/tests/llama_cpp.int.test.ts @@ -6,7 +6,7 @@ import { LlamaCpp } from "../llama_cpp.js"; const llamaPath = getEnvironmentVariable("LLAMA_PATH")!; test.skip("Test Llama_CPP", async () => { - const model = new LlamaCpp({ modelPath: llamaPath }); + const model = await LlamaCpp.initialize({ modelPath: llamaPath }); // @eslint-disable-next-line/@typescript-eslint/ban-ts-comment // @ts-expect-error unused var const res = await model.invoke("Where do Llamas live?"); @@ -14,7 +14,7 @@ test.skip("Test Llama_CPP", async () => { }, 100000); test.skip("Test Llama_CPP", async () => { - const model = new LlamaCpp({ modelPath: llamaPath }); + const model = await LlamaCpp.initialize({ modelPath: llamaPath }); // @eslint-disable-next-line/@typescript-eslint/ban-ts-comment // @ts-expect-error unused var const res = await model.invoke("Where do Pandas live?"); @@ -22,7 +22,7 @@ test.skip("Test Llama_CPP", async () => { }, 100000); test.skip("Test Llama_CPP", async () => { - const model = new LlamaCpp({ modelPath: llamaPath }); + const model = await LlamaCpp.initialize({ modelPath: llamaPath }); // Attempt to make several queries and make sure that the system prompt // is not returned as part of any follow-on query. @@ -35,7 +35,10 @@ test.skip("Test Llama_CPP", async () => { }, 100000); test.skip("Test Llama_CPP", async () => { - const model = new LlamaCpp({ modelPath: llamaPath, temperature: 0.7 }); + const model = await LlamaCpp.initialize({ + modelPath: llamaPath, + temperature: 0.7, + }); const stream = await model.stream( "Tell me a short story about a happy Llama." @@ -55,7 +58,10 @@ const gbnfListGrammer = 'root ::= item+ # Excludes various line break characters item ::= "- " [^\r\n\x0b\x0c\x85\u2028\u2029]+ "\n"'; test.skip("Test Llama_CPP", async () => { - const model = new LlamaCpp({ modelPath: llamaPath, gbnf: gbnfListGrammer }); + const model = await LlamaCpp.initialize({ + modelPath: llamaPath, + gbnf: gbnfListGrammer, + }); // @eslint-disable-next-line/@typescript-eslint/ban-ts-comment // @ts-expect-error unused var const res = await model.invoke( @@ -82,7 +88,10 @@ const schemaJSON = { }; test.skip("Test Llama_CPP", async () => { - const model = new LlamaCpp({ modelPath: llamaPath, jsonSchema: schemaJSON }); + const model = await LlamaCpp.initialize({ + modelPath: llamaPath, + jsonSchema: schemaJSON, + }); // @eslint-disable-next-line/@typescript-eslint/ban-ts-comment // @ts-expect-error unused var const res = await model.invoke("Where do llamas live?"); diff --git a/libs/langchain-community/src/utils/llama_cpp.ts b/libs/langchain-community/src/utils/llama_cpp.ts index 3bc37c6861d8..44ff601d137b 100644 --- a/libs/langchain-community/src/utils/llama_cpp.ts +++ b/libs/langchain-community/src/utils/llama_cpp.ts @@ -5,7 +5,10 @@ import { LlamaChatSession, LlamaJsonSchemaGrammar, LlamaGrammar, + type LlamaModelOptions, + LlamaContextOptions, GbnfJsonSchema, + Llama, } from "node-llama-cpp"; /** @@ -55,58 +58,59 @@ export interface LlamaBaseCppInputs { gbnf?: string; } -export function createLlamaModel(inputs: LlamaBaseCppInputs): LlamaModel { - const options = { +export async function createLlamaModel( + inputs: LlamaBaseCppInputs, + llama: Llama +): Promise { + const options: LlamaModelOptions = { gpuLayers: inputs?.gpuLayers, modelPath: inputs.modelPath, useMlock: inputs?.useMlock, useMmap: inputs?.useMmap, vocabOnly: inputs?.vocabOnly, - jsonSchema: inputs?.jsonSchema, - gbnf: inputs?.gbnf, }; - return new LlamaModel(options); + return llama.loadModel(options); } -export function createLlamaContext( +export async function createLlamaContext( model: LlamaModel, inputs: LlamaBaseCppInputs -): LlamaContext { - const options = { +): Promise { + const options: LlamaContextOptions = { batchSize: inputs?.batchSize, contextSize: inputs?.contextSize, - embedding: inputs?.embedding, - f16Kv: inputs?.f16Kv, - logitsAll: inputs?.logitsAll, - model, - prependBos: inputs?.prependBos, - seed: inputs?.seed, threads: inputs?.threads, }; - return new LlamaContext(options); + return model.createContext(options); } export function createLlamaSession(context: LlamaContext): LlamaChatSession { - return new LlamaChatSession({ context }); + return new LlamaChatSession({ contextSequence: context.getSequence() }); } -export function createLlamaJsonSchemaGrammar( - schemaString: object | undefined -): LlamaJsonSchemaGrammar | undefined { +export async function createLlamaJsonSchemaGrammar( + schemaString: object | undefined, + llama: Llama +): Promise | undefined> { if (schemaString === undefined) { return undefined; } const schemaJSON = schemaString as GbnfJsonSchema; - return new LlamaJsonSchemaGrammar(schemaJSON); + return await llama.createGrammarForJsonSchema(schemaJSON); } -export function createCustomGrammar( - filePath: string | undefined -): LlamaGrammar | undefined { - return filePath === undefined - ? undefined - : new LlamaGrammar({ grammar: filePath }); +export async function createCustomGrammar( + filePath: string | undefined, + llama: Llama +): Promise { + if (filePath === undefined) { + return undefined; + } + + return llama.createGrammar({ + grammar: filePath, + }); } diff --git a/yarn.lock b/yarn.lock index 543c3e5940ee..04aa2e456470 100644 --- a/yarn.lock +++ b/yarn.lock @@ -10441,6 +10441,13 @@ __metadata: languageName: node linkType: hard +"@huggingface/jinja@npm:^0.3.1": + version: 0.3.1 + resolution: "@huggingface/jinja@npm:0.3.1" + checksum: cd5dcc81b3690f9e4de7a6e4a236c4112b3a0e9e86e59d9b1fe49f634c459854f23492f7b66537978fd62fc125f5f3f8c8e56e299e61c633f5b3b429bb45494d + languageName: node + linkType: hard + "@humanwhocodes/config-array@npm:^0.11.11": version: 0.11.11 resolution: "@humanwhocodes/config-array@npm:0.11.11" @@ -11598,7 +11605,7 @@ __metadata: mongodb: ^5.2.0 mysql2: ^3.9.8 neo4j-driver: ^5.17.0 - node-llama-cpp: ^2 + node-llama-cpp: 3.1.1 notion-to-md: ^3.1.0 officeparser: ^4.0.4 pdf-parse: 1.1.1 @@ -13340,6 +13347,83 @@ __metadata: languageName: node linkType: hard +"@node-llama-cpp/linux-arm64@npm:3.1.1": + version: 3.1.1 + resolution: "@node-llama-cpp/linux-arm64@npm:3.1.1" + conditions: os=linux & (cpu=arm64 | cpu=x64) & libc=glibc + languageName: node + linkType: hard + +"@node-llama-cpp/linux-armv7l@npm:3.1.1": + version: 3.1.1 + resolution: "@node-llama-cpp/linux-armv7l@npm:3.1.1" + conditions: os=linux & (cpu=arm | cpu=x64) & libc=glibc + languageName: node + linkType: hard + +"@node-llama-cpp/linux-x64-cuda@npm:3.1.1": + version: 3.1.1 + resolution: "@node-llama-cpp/linux-x64-cuda@npm:3.1.1" + conditions: os=linux & cpu=x64 & libc=glibc + languageName: node + linkType: hard + +"@node-llama-cpp/linux-x64-vulkan@npm:3.1.1": + version: 3.1.1 + resolution: "@node-llama-cpp/linux-x64-vulkan@npm:3.1.1" + conditions: os=linux & cpu=x64 & libc=glibc + languageName: node + linkType: hard + +"@node-llama-cpp/linux-x64@npm:3.1.1": + version: 3.1.1 + resolution: "@node-llama-cpp/linux-x64@npm:3.1.1" + conditions: os=linux & cpu=x64 & libc=glibc + languageName: node + linkType: hard + +"@node-llama-cpp/mac-arm64-metal@npm:3.1.1": + version: 3.1.1 + resolution: "@node-llama-cpp/mac-arm64-metal@npm:3.1.1" + conditions: os=darwin & (cpu=arm64 | cpu=x64) + languageName: node + linkType: hard + +"@node-llama-cpp/mac-x64@npm:3.1.1": + version: 3.1.1 + resolution: "@node-llama-cpp/mac-x64@npm:3.1.1" + conditions: os=darwin & cpu=x64 + languageName: node + linkType: hard + +"@node-llama-cpp/win-arm64@npm:3.1.1": + version: 3.1.1 + resolution: "@node-llama-cpp/win-arm64@npm:3.1.1" + conditions: os=win32 & (cpu=arm64 | cpu=x64) + languageName: node + linkType: hard + +"@node-llama-cpp/win-x64-cuda@npm:3.1.1": + version: 3.1.1 + resolution: "@node-llama-cpp/win-x64-cuda@npm:3.1.1" + conditions: os=win32 & cpu=x64 + languageName: node + linkType: hard + +"@node-llama-cpp/win-x64-vulkan@npm:3.1.1": + version: 3.1.1 + resolution: "@node-llama-cpp/win-x64-vulkan@npm:3.1.1" + conditions: os=win32 & cpu=x64 + languageName: node + linkType: hard + +"@node-llama-cpp/win-x64@npm:3.1.1": + version: 3.1.1 + resolution: "@node-llama-cpp/win-x64@npm:3.1.1" + conditions: os=win32 & cpu=x64 + languageName: node + linkType: hard + "@nodelib/fs.scandir@npm:2.1.5": version: 2.1.5 resolution: "@nodelib/fs.scandir@npm:2.1.5" @@ -13431,76 +13515,72 @@ __metadata: languageName: node linkType: hard -"@octokit/app@npm:^14.0.0": - version: 14.0.0 - resolution: "@octokit/app@npm:14.0.0" +"@octokit/app@npm:^15.0.0": + version: 15.1.0 + resolution: "@octokit/app@npm:15.1.0" dependencies: - "@octokit/auth-app": ^6.0.0 - "@octokit/auth-unauthenticated": ^5.0.0 - "@octokit/core": ^5.0.0 - "@octokit/oauth-app": ^6.0.0 - "@octokit/plugin-paginate-rest": ^8.0.0 - "@octokit/types": ^11.1.0 - "@octokit/webhooks": ^12.0.1 - checksum: 6d1923f5e213ed52a656bd250a3d0504be67e51e95ba5f7ac9658bd19232a67c274267f61b5137905104ea98736d7e00b438dabf87f54596429f34836f14d7bf + "@octokit/auth-app": ^7.0.0 + "@octokit/auth-unauthenticated": ^6.0.0 + "@octokit/core": ^6.1.2 + "@octokit/oauth-app": ^7.0.0 + "@octokit/plugin-paginate-rest": ^11.0.0 + "@octokit/types": ^13.0.0 + "@octokit/webhooks": ^13.0.0 + checksum: 133c1b55646c85161f5fe09266aecdb877da298fe88daa0cc0b517dd45233f07462cfd4df2dc4a77452cdf4a7551bed9e8a36f2e172928519a9a2575e77aa7ad languageName: node linkType: hard -"@octokit/auth-app@npm:^6.0.0": - version: 6.0.0 - resolution: "@octokit/auth-app@npm:6.0.0" - dependencies: - "@octokit/auth-oauth-app": ^7.0.0 - "@octokit/auth-oauth-user": ^4.0.0 - "@octokit/request": ^8.0.2 - "@octokit/request-error": ^5.0.0 - "@octokit/types": ^11.0.0 - deprecation: ^2.3.1 +"@octokit/auth-app@npm:^7.0.0": + version: 7.1.1 + resolution: "@octokit/auth-app@npm:7.1.1" + dependencies: + "@octokit/auth-oauth-app": ^8.1.0 + "@octokit/auth-oauth-user": ^5.1.0 + "@octokit/request": ^9.1.1 + "@octokit/request-error": ^6.1.1 + "@octokit/types": ^13.4.1 lru-cache: ^10.0.0 - universal-github-app-jwt: ^1.1.1 - universal-user-agent: ^6.0.0 - checksum: e3eb3ff7be50557634c5712cfa1413522cfc167f87e096d4d344961fecdc4f8ec91cfb0a025705e48d2c1b663203d90a50bd5b99a6e0d667433d043f27fe3716 + universal-github-app-jwt: ^2.2.0 + universal-user-agent: ^7.0.0 + checksum: 2cad1a5eef4e458caacb16271284743c7c1d9b34a2617f6b17135b3910ddb33efe16e6a6b5b36407f1b0065324f7b7b1bfa7c2f7d338f6c59f312762e0c57a5c languageName: node linkType: hard -"@octokit/auth-oauth-app@npm:^7.0.0": - version: 7.0.0 - resolution: "@octokit/auth-oauth-app@npm:7.0.0" - dependencies: - "@octokit/auth-oauth-device": ^6.0.0 - "@octokit/auth-oauth-user": ^4.0.0 - "@octokit/request": ^8.0.2 - "@octokit/types": ^11.0.0 - "@types/btoa-lite": ^1.0.0 - btoa-lite: ^1.0.0 - universal-user-agent: ^6.0.0 - checksum: fa050fbd05cb8da888672f029d65bf6526a8b0c3da43b4c1efac396f48d423adedd0e1d80624de1c95c0e9f5a2e47ad42c71ddca39f9371d8462331905c5d452 +"@octokit/auth-oauth-app@npm:^8.0.0, @octokit/auth-oauth-app@npm:^8.1.0": + version: 8.1.1 + resolution: "@octokit/auth-oauth-app@npm:8.1.1" + dependencies: + "@octokit/auth-oauth-device": ^7.0.0 + "@octokit/auth-oauth-user": ^5.0.1 + "@octokit/request": ^9.0.0 + "@octokit/types": ^13.0.0 + universal-user-agent: ^7.0.0 + checksum: e61160a6cc6aefff7b8cb3c73c2fc26e327308800b85bf6bfcfb39009ee2cb813bc2034ce3ea29b240aca920515b2199466cf842bbef4905c5da7796aa813eb4 languageName: node linkType: hard -"@octokit/auth-oauth-device@npm:^6.0.0": - version: 6.0.0 - resolution: "@octokit/auth-oauth-device@npm:6.0.0" +"@octokit/auth-oauth-device@npm:^7.0.0, @octokit/auth-oauth-device@npm:^7.0.1": + version: 7.1.1 + resolution: "@octokit/auth-oauth-device@npm:7.1.1" dependencies: - "@octokit/oauth-methods": ^4.0.0 - "@octokit/request": ^8.0.0 - "@octokit/types": ^11.0.0 - universal-user-agent: ^6.0.0 - checksum: ba6e46a42a68ca0e6d345b10de257b4e0764e6abeedfa3b7bd27bbe4336cbabf3dc081c97eb860939e4fbcb9827c62be5c4396023342db4717f254f06cdbba43 + "@octokit/oauth-methods": ^5.0.0 + "@octokit/request": ^9.0.0 + "@octokit/types": ^13.0.0 + universal-user-agent: ^7.0.0 + checksum: 5338ae5a5ca1d03c03c3ceba21635b6e2d8d8fe9c1f9f746651ebea5a130e65388e418e730eefb394bbceba092b712181ce9a603eec761f4c8fd6f8790d7cd45 languageName: node linkType: hard -"@octokit/auth-oauth-user@npm:^4.0.0": - version: 4.0.0 - resolution: "@octokit/auth-oauth-user@npm:4.0.0" +"@octokit/auth-oauth-user@npm:^5.0.1, @octokit/auth-oauth-user@npm:^5.1.0": + version: 5.1.1 + resolution: "@octokit/auth-oauth-user@npm:5.1.1" dependencies: - "@octokit/auth-oauth-device": ^6.0.0 - "@octokit/oauth-methods": ^4.0.0 - "@octokit/request": ^8.0.2 - "@octokit/types": ^11.0.0 - btoa-lite: ^1.0.0 - universal-user-agent: ^6.0.0 - checksum: d4382d5fa3b52e5a7595da92e2bea921793bbce3f03c0c047720db10b1443f42d27c21453d00f4ee30383e2c4279175a53b613de25584b004200c201f63b5f45 + "@octokit/auth-oauth-device": ^7.0.1 + "@octokit/oauth-methods": ^5.0.0 + "@octokit/request": ^9.0.1 + "@octokit/types": ^13.0.0 + universal-user-agent: ^7.0.0 + checksum: fe2b2ec3f50a565efb37254c78be499d8fc1cf4d565f869b957037103296589c48c69cab26a0549311ed50b698dc9ae1fef5cc9a0cda2a11a519b053c30cb7fc languageName: node linkType: hard @@ -13525,13 +13605,13 @@ __metadata: languageName: node linkType: hard -"@octokit/auth-unauthenticated@npm:^5.0.0": - version: 5.0.0 - resolution: "@octokit/auth-unauthenticated@npm:5.0.0" +"@octokit/auth-unauthenticated@npm:^6.0.0, @octokit/auth-unauthenticated@npm:^6.0.0-beta.1": + version: 6.1.0 + resolution: "@octokit/auth-unauthenticated@npm:6.1.0" dependencies: - "@octokit/request-error": ^5.0.0 - "@octokit/types": ^11.0.0 - checksum: ec0715c2fbcfe5a4eaaf996c570e634d339ebbeaa00c1f336b3277c1477c96cdd09342fccdff63edc42ad80dff4ce0f02c3a5e0a6560a35188439330b6624690 + "@octokit/request-error": ^6.0.1 + "@octokit/types": ^13.0.0 + checksum: 0f8929cbca7fa34f2a4ebcdf92da7a0b5a4a2de7a5dd695b4308a827018db6cfa311e84fe326c19a0b8e66080aa152fa066ae434190e5a63eadbb1449b1d7105 languageName: node linkType: hard @@ -13550,21 +13630,6 @@ __metadata: languageName: node linkType: hard -"@octokit/core@npm:^5.0.0": - version: 5.0.0 - resolution: "@octokit/core@npm:5.0.0" - dependencies: - "@octokit/auth-token": ^4.0.0 - "@octokit/graphql": ^7.0.0 - "@octokit/request": ^8.0.2 - "@octokit/request-error": ^5.0.0 - "@octokit/types": ^11.0.0 - before-after-hook: ^2.2.0 - universal-user-agent: ^6.0.0 - checksum: 1a5d1112a2403d146aa1db7aaf81a31192ef6b0310a1e6f68c3e439fded22bd4b3a930f5071585e6ca0f2f5e7fc4a1aac68910525b71b03732c140e362d26a33 - languageName: node - linkType: hard - "@octokit/core@npm:^5.0.2": version: 5.2.0 resolution: "@octokit/core@npm:5.2.0" @@ -13580,7 +13645,7 @@ __metadata: languageName: node linkType: hard -"@octokit/core@npm:^6.1.2": +"@octokit/core@npm:^6.0.0, @octokit/core@npm:^6.1.2": version: 6.1.2 resolution: "@octokit/core@npm:6.1.2" dependencies: @@ -13616,17 +13681,6 @@ __metadata: languageName: node linkType: hard -"@octokit/endpoint@npm:^9.0.0": - version: 9.0.0 - resolution: "@octokit/endpoint@npm:9.0.0" - dependencies: - "@octokit/types": ^11.0.0 - is-plain-object: ^5.0.0 - universal-user-agent: ^6.0.0 - checksum: 0e402c4d0fbe5b8053630cedb30dde5074bb6410828a05dc93d7e0fdd6c17f9a44b66586ef1a4e4ee0baa8d34ef7d6f535e2f04d9ea42909b7fc7ff55ce56a48 - languageName: node - linkType: hard - "@octokit/endpoint@npm:^9.0.1": version: 9.0.5 resolution: "@octokit/endpoint@npm:9.0.5" @@ -13648,17 +13702,6 @@ __metadata: languageName: node linkType: hard -"@octokit/graphql@npm:^7.0.0": - version: 7.0.1 - resolution: "@octokit/graphql@npm:7.0.1" - dependencies: - "@octokit/request": ^8.0.1 - "@octokit/types": ^11.0.0 - universal-user-agent: ^6.0.0 - checksum: 7ee907987b1b8312c6f870c44455cbd3eed805bb1a4095038f4e7e62ee2e006bd766f2a71dfbe56b870cd8f7558309c602f00d3e252fe59578f4acf6249a4f17 - languageName: node - linkType: hard - "@octokit/graphql@npm:^7.1.0": version: 7.1.0 resolution: "@octokit/graphql@npm:7.1.0" @@ -13681,39 +13724,38 @@ __metadata: languageName: node linkType: hard -"@octokit/oauth-app@npm:^6.0.0": - version: 6.0.0 - resolution: "@octokit/oauth-app@npm:6.0.0" - dependencies: - "@octokit/auth-oauth-app": ^7.0.0 - "@octokit/auth-oauth-user": ^4.0.0 - "@octokit/auth-unauthenticated": ^5.0.0 - "@octokit/core": ^5.0.0 - "@octokit/oauth-authorization-url": ^6.0.2 - "@octokit/oauth-methods": ^4.0.0 +"@octokit/oauth-app@npm:^7.0.0": + version: 7.1.3 + resolution: "@octokit/oauth-app@npm:7.1.3" + dependencies: + "@octokit/auth-oauth-app": ^8.0.0 + "@octokit/auth-oauth-user": ^5.0.1 + "@octokit/auth-unauthenticated": ^6.0.0-beta.1 + "@octokit/core": ^6.0.0 + "@octokit/oauth-authorization-url": ^7.0.0 + "@octokit/oauth-methods": ^5.0.0 "@types/aws-lambda": ^8.10.83 - universal-user-agent: ^6.0.0 - checksum: 5d07c6fe15d4a670a3ca0c7c0d37c973912b3ac993375966a6bed0e084edbda972f575e2ab2dc17aa9718e5aeefbec7489f5aeb2dbc6e47768ad9633f27f842d + universal-user-agent: ^7.0.0 + checksum: 13582d8d6e2ec1be144b5ec2c559d93de2cafcdfebde5e17c2d87906148c66edf00e8fb99c06852c8f4e51c6bbccd4a053b60796eadd848703389c0418eaa7fd languageName: node linkType: hard -"@octokit/oauth-authorization-url@npm:^6.0.2": - version: 6.0.2 - resolution: "@octokit/oauth-authorization-url@npm:6.0.2" - checksum: 0f11169a3eeb782cc08312c923de1a702b25ae033b972ba40380b6d72cb3f684543c8b6a5cf6f05936fdc6b8892070d4f7581138d8efc1b4c4a55ae6d7762327 +"@octokit/oauth-authorization-url@npm:^7.0.0": + version: 7.1.1 + resolution: "@octokit/oauth-authorization-url@npm:7.1.1" + checksum: 02ad29fa4540c6b4b3a1e9f6936d40057174be91e9c7cad1afcd09d027fa2a50598dad5857699d1be25568bf70d86123dc9cd3874afe044ce6791e6805e97542 languageName: node linkType: hard -"@octokit/oauth-methods@npm:^4.0.0": - version: 4.0.0 - resolution: "@octokit/oauth-methods@npm:4.0.0" +"@octokit/oauth-methods@npm:^5.0.0": + version: 5.1.2 + resolution: "@octokit/oauth-methods@npm:5.1.2" dependencies: - "@octokit/oauth-authorization-url": ^6.0.2 - "@octokit/request": ^8.0.2 - "@octokit/request-error": ^5.0.0 - "@octokit/types": ^11.0.0 - btoa-lite: ^1.0.0 - checksum: 623f3031f56f5bfd6f142f9215bf47ba418b2f7fd9eb72d3e68cdd2b2c81345021b692edd18ad055df85e71e35497002e1fc4816235ed520dd71e677885c99cc + "@octokit/oauth-authorization-url": ^7.0.0 + "@octokit/request": ^9.1.0 + "@octokit/request-error": ^6.1.0 + "@octokit/types": ^13.0.0 + checksum: 64317d0fae0f2383ef0194bab7ed6521a1e2d698f2f0730b22dd4ffa2f103541be6e5ef4380e073d8086008ad5d311a66901e0cc6bc0f57b66dc64db6ed79922 languageName: node linkType: hard @@ -13731,12 +13773,19 @@ __metadata: languageName: node linkType: hard -"@octokit/plugin-paginate-graphql@npm:^4.0.0": - version: 4.0.0 - resolution: "@octokit/plugin-paginate-graphql@npm:4.0.0" +"@octokit/openapi-webhooks-types@npm:8.3.0": + version: 8.3.0 + resolution: "@octokit/openapi-webhooks-types@npm:8.3.0" + checksum: bc97f53a93ed11a65ccf06cc67d4fcd9987112fbedd62335bf55debe475fedffe45c100e9fd2df98833c5da7b5a2391c75e22d70354f3f6790f8c87213325b42 + languageName: node + linkType: hard + +"@octokit/plugin-paginate-graphql@npm:^5.0.0": + version: 5.2.4 + resolution: "@octokit/plugin-paginate-graphql@npm:5.2.4" peerDependencies: - "@octokit/core": ">=5" - checksum: 368121d74fc40a4cee96f2febc29ae43abd8f6b7d0b06d3520847827675128028c4fa10d0534c5f0466658e81257d103092154778625c886a9fcdd01c302e50e + "@octokit/core": ">=6" + checksum: f119999c8872f8c24eff653c3af53dea9d06b6863491ea52b888c1a9489019fcaa47423321b857073c609baaaf43fecf97ef335d780042334217abfe24b68bed languageName: node linkType: hard @@ -13774,17 +13823,6 @@ __metadata: languageName: node linkType: hard -"@octokit/plugin-paginate-rest@npm:^8.0.0": - version: 8.0.0 - resolution: "@octokit/plugin-paginate-rest@npm:8.0.0" - dependencies: - "@octokit/types": ^11.0.0 - peerDependencies: - "@octokit/core": ">=5" - checksum: b5d7cee50523862c6ce7be057f7200e14ee4dcded462f27304c822c960a37efa23ed51080ea879f5d1e56e78f74baa17d2ce32eed5d726794abc35755777e32c - languageName: node - linkType: hard - "@octokit/plugin-request-log@npm:^1.0.4": version: 1.0.4 resolution: "@octokit/plugin-request-log@npm:1.0.4" @@ -13845,39 +13883,28 @@ __metadata: languageName: node linkType: hard -"@octokit/plugin-rest-endpoint-methods@npm:^9.0.0": - version: 9.0.0 - resolution: "@octokit/plugin-rest-endpoint-methods@npm:9.0.0" - dependencies: - "@octokit/types": ^11.0.0 - peerDependencies: - "@octokit/core": ">=5" - checksum: 8795cb29be042c839098886a03c2ec6051e3fd7a29f16f4f8a487aa2d85ceb00df8a4432499a43af550369bd730ce9b1b9d7eeff768745b80a3e67698ca9a5dd - languageName: node - linkType: hard - -"@octokit/plugin-retry@npm:^6.0.0": - version: 6.0.0 - resolution: "@octokit/plugin-retry@npm:6.0.0" +"@octokit/plugin-retry@npm:^7.0.0": + version: 7.1.2 + resolution: "@octokit/plugin-retry@npm:7.1.2" dependencies: - "@octokit/request-error": ^5.0.0 - "@octokit/types": ^11.0.0 + "@octokit/request-error": ^6.0.0 + "@octokit/types": ^13.0.0 bottleneck: ^2.15.3 peerDependencies: - "@octokit/core": ">=5" - checksum: 84c047309d6b3ad8d796cd6aca9a73c61ebea3894a01067ec6bd40d6ba9aaab779a1085749c04f90b25c0fc3a100c6553474d830e5c2e0dde4ffc42b5e0a2e89 + "@octokit/core": ">=6" + checksum: 484da4d0deffb5612d9ad918e82158c7c0e98e0be76ffe9046fe48c3f11ed4b7ff2d6807d9704c470dbc7d017bfa6e89cd89346ccdad788ac4fa5d02ccc99f94 languageName: node linkType: hard -"@octokit/plugin-throttling@npm:^7.0.0": - version: 7.0.0 - resolution: "@octokit/plugin-throttling@npm:7.0.0" +"@octokit/plugin-throttling@npm:^9.0.0": + version: 9.3.2 + resolution: "@octokit/plugin-throttling@npm:9.3.2" dependencies: - "@octokit/types": ^11.0.0 + "@octokit/types": ^13.0.0 bottleneck: ^2.15.3 peerDependencies: - "@octokit/core": ^5.0.0 - checksum: 772dd3405cb89ac8e4f6e81cee4e1cbf61010461c6c88ebc9f3a557eefc8a039b2368e615b2bf5d97352f5faf0dc133d70ad8eb568fd429f58332292d29113c1 + "@octokit/core": ^6.0.0 + checksum: d3e11bd4bbee7df0885789c018f9e0cc48b2226fa4c23f9f68b53acd670eb30303762fb56034650620dbf4e72497e27620140bc9cad5355207b4b5f0e1129e90 languageName: node linkType: hard @@ -13892,17 +13919,6 @@ __metadata: languageName: node linkType: hard -"@octokit/request-error@npm:^5.0.0": - version: 5.0.0 - resolution: "@octokit/request-error@npm:5.0.0" - dependencies: - "@octokit/types": ^11.0.0 - deprecation: ^2.0.0 - once: ^1.4.0 - checksum: 2012eca66f6b8fa4038b3bfe81d65a7134ec58e2caf45d229aca13b9653ab260abd95229bd1a8c11180ee0bcf738e2556831a85de28f39b175175653c3b79fdd - languageName: node - linkType: hard - "@octokit/request-error@npm:^5.1.0": version: 5.1.0 resolution: "@octokit/request-error@npm:5.1.0" @@ -13914,6 +13930,15 @@ __metadata: languageName: node linkType: hard +"@octokit/request-error@npm:^6.0.0, @octokit/request-error@npm:^6.1.0, @octokit/request-error@npm:^6.1.1": + version: 6.1.5 + resolution: "@octokit/request-error@npm:6.1.5" + dependencies: + "@octokit/types": ^13.0.0 + checksum: a0891df29957d9911ef34281fefffac4a98baa96ffffeb1a2b8f0c8e229911ca3da2be42e5bbe6a4b994a12fd100f4d0d86be095fada60384cd6728705eae859 + languageName: node + linkType: hard + "@octokit/request-error@npm:^6.0.1": version: 6.1.4 resolution: "@octokit/request-error@npm:6.1.4" @@ -13937,19 +13962,6 @@ __metadata: languageName: node linkType: hard -"@octokit/request@npm:^8.0.0, @octokit/request@npm:^8.0.1, @octokit/request@npm:^8.0.2": - version: 8.1.1 - resolution: "@octokit/request@npm:8.1.1" - dependencies: - "@octokit/endpoint": ^9.0.0 - "@octokit/request-error": ^5.0.0 - "@octokit/types": ^11.1.0 - is-plain-object: ^5.0.0 - universal-user-agent: ^6.0.0 - checksum: dec3ba2cba14739159cd8d1653ad8ac6d58095e4ac294d312d20ce2c63c60c3cad2e5499137244dba3d681fd5cd7f74b4b5d4df024a19c0ee1831204e5a3a894 - languageName: node - linkType: hard - "@octokit/request@npm:^8.3.0, @octokit/request@npm:^8.3.1": version: 8.4.0 resolution: "@octokit/request@npm:8.4.0" @@ -13962,7 +13974,7 @@ __metadata: languageName: node linkType: hard -"@octokit/request@npm:^9.0.0": +"@octokit/request@npm:^9.0.0, @octokit/request@npm:^9.0.1, @octokit/request@npm:^9.1.0, @octokit/request@npm:^9.1.1": version: 9.1.3 resolution: "@octokit/request@npm:9.1.3" dependencies: @@ -14026,15 +14038,6 @@ __metadata: languageName: node linkType: hard -"@octokit/types@npm:^11.0.0, @octokit/types@npm:^11.1.0": - version: 11.1.0 - resolution: "@octokit/types@npm:11.1.0" - dependencies: - "@octokit/openapi-types": ^18.0.0 - checksum: 72627a94ddaf7bc14db06572bcde67649aad608cd86548818380db9305f4c0ca9ca078a62dd883858a267e8ec8fd596a0fce416aa04197c439b9548efef609a7 - languageName: node - linkType: hard - "@octokit/types@npm:^13.0.0, @octokit/types@npm:^13.1.0, @octokit/types@npm:^13.5.0": version: 13.5.0 resolution: "@octokit/types@npm:13.5.0" @@ -14044,6 +14047,15 @@ __metadata: languageName: node linkType: hard +"@octokit/types@npm:^13.4.1": + version: 13.6.1 + resolution: "@octokit/types@npm:13.6.1" + dependencies: + "@octokit/openapi-types": ^22.2.0 + checksum: 05bb427bc3c84088e2367b8d1b7a9834732116bb3d35ef51d1aae34b3919027159dd496b9362dab1cb047918da15be1dc1cafc512c97f9b77458bd273b5a2ba9 + languageName: node + linkType: hard + "@octokit/types@npm:^9.0.0, @octokit/types@npm:^9.2.3": version: 9.3.2 resolution: "@octokit/types@npm:9.3.2" @@ -14053,29 +14065,21 @@ __metadata: languageName: node linkType: hard -"@octokit/webhooks-methods@npm:^4.0.0": - version: 4.0.0 - resolution: "@octokit/webhooks-methods@npm:4.0.0" - checksum: 07010438e53a6a659f0d7d3596bf89e6795776165066553e76384d90cef077a1e259122733913468299a1a76c71536914eb871d0508fcbbd453468b21eeb30c7 - languageName: node - linkType: hard - -"@octokit/webhooks-types@npm:7.1.0": - version: 7.1.0 - resolution: "@octokit/webhooks-types@npm:7.1.0" - checksum: 5aea38c38e97cb1b8d54c805c17c4015ee937d0b1ad550adc64eaf2e90bfbaf1e00c878490c10b43e31a11563e8d02183b86268ed588b04e39b22d5fd27807cf +"@octokit/webhooks-methods@npm:^5.0.0": + version: 5.1.0 + resolution: "@octokit/webhooks-methods@npm:5.1.0" + checksum: 6b0185f62b30b1d267456c449732d1c381e22533bcfeea3002bb88bc9f50a6ec5e4863be092473e7c47bee8c01b863ebd93980dd378495860dfd8d762044a212 languageName: node linkType: hard -"@octokit/webhooks@npm:^12.0.1": - version: 12.0.3 - resolution: "@octokit/webhooks@npm:12.0.3" +"@octokit/webhooks@npm:^13.0.0": + version: 13.3.0 + resolution: "@octokit/webhooks@npm:13.3.0" dependencies: - "@octokit/request-error": ^5.0.0 - "@octokit/webhooks-methods": ^4.0.0 - "@octokit/webhooks-types": 7.1.0 - aggregate-error: ^3.1.0 - checksum: 2db63122eab1852047379f9cb0024cdb22a2bf16356907b66bc71d5a01814b069178aee07fe61faeb80cde3dcd513a39526974f8bae5ec6e26b63fe87877ace1 + "@octokit/openapi-webhooks-types": 8.3.0 + "@octokit/request-error": ^6.0.1 + "@octokit/webhooks-methods": ^5.0.0 + checksum: 4a790e7a0551f057a14cf3b5df8e20cec43c10a8f331e19db7b0e5f6bfbc7577e817ad8543c7a99fb6dd7c713d93f0bbaf2fedc3c88f858693da084e9ef1463d languageName: node linkType: hard @@ -14453,6 +14457,95 @@ __metadata: languageName: node linkType: hard +"@reflink/reflink-darwin-arm64@npm:0.1.16": + version: 0.1.16 + resolution: "@reflink/reflink-darwin-arm64@npm:0.1.16" + conditions: os=darwin & cpu=arm64 + languageName: node + linkType: hard + +"@reflink/reflink-darwin-x64@npm:0.1.16": + version: 0.1.16 + resolution: "@reflink/reflink-darwin-x64@npm:0.1.16" + conditions: os=darwin & cpu=x64 + languageName: node + linkType: hard + +"@reflink/reflink-linux-arm64-gnu@npm:0.1.16": + version: 0.1.16 + resolution: "@reflink/reflink-linux-arm64-gnu@npm:0.1.16" + conditions: os=linux & cpu=arm64 & libc=glibc + languageName: node + linkType: hard + +"@reflink/reflink-linux-arm64-musl@npm:0.1.16": + version: 0.1.16 + resolution: "@reflink/reflink-linux-arm64-musl@npm:0.1.16" + conditions: os=linux & cpu=arm64 & libc=musl + languageName: node + linkType: hard + +"@reflink/reflink-linux-x64-gnu@npm:0.1.16": + version: 0.1.16 + resolution: "@reflink/reflink-linux-x64-gnu@npm:0.1.16" + conditions: os=linux & cpu=x64 & libc=glibc + languageName: node + linkType: hard + +"@reflink/reflink-linux-x64-musl@npm:0.1.16": + version: 0.1.16 + resolution: "@reflink/reflink-linux-x64-musl@npm:0.1.16" + conditions: os=linux & cpu=x64 & libc=musl + languageName: node + linkType: hard + +"@reflink/reflink-win32-arm64-msvc@npm:0.1.16": + version: 0.1.16 + resolution: "@reflink/reflink-win32-arm64-msvc@npm:0.1.16" + conditions: os=win32 & cpu=arm64 + languageName: node + linkType: hard + +"@reflink/reflink-win32-x64-msvc@npm:0.1.16": + version: 0.1.16 + resolution: "@reflink/reflink-win32-x64-msvc@npm:0.1.16" + conditions: os=win32 & cpu=x64 + languageName: node + linkType: hard + +"@reflink/reflink@npm:^0.1.16": + version: 0.1.16 + resolution: "@reflink/reflink@npm:0.1.16" + dependencies: + "@reflink/reflink-darwin-arm64": 0.1.16 + "@reflink/reflink-darwin-x64": 0.1.16 + "@reflink/reflink-linux-arm64-gnu": 0.1.16 + "@reflink/reflink-linux-arm64-musl": 0.1.16 + "@reflink/reflink-linux-x64-gnu": 0.1.16 + "@reflink/reflink-linux-x64-musl": 0.1.16 + "@reflink/reflink-win32-arm64-msvc": 0.1.16 + "@reflink/reflink-win32-x64-msvc": 0.1.16 + dependenciesMeta: + "@reflink/reflink-darwin-arm64": + optional: true + "@reflink/reflink-darwin-x64": + optional: true + "@reflink/reflink-linux-arm64-gnu": + optional: true + "@reflink/reflink-linux-arm64-musl": + optional: true + "@reflink/reflink-linux-x64-gnu": + optional: true + "@reflink/reflink-linux-x64-musl": + optional: true + "@reflink/reflink-win32-arm64-msvc": + optional: true + "@reflink/reflink-win32-x64-msvc": + optional: true + checksum: dcc35c4a63d79a5126c5405d6e034e022c6639372486ed98ab93c1d5dd5620660adedf8f075356f9f7fbb15719b646765404d859cc188b5d124fa16b90bcf750 + languageName: node + linkType: hard + "@rockset/client@npm:^0.9.1": version: 0.9.1 resolution: "@rockset/client@npm:0.9.1" @@ -18524,6 +18617,13 @@ __metadata: languageName: node linkType: hard +"@tinyhttp/content-disposition@npm:^2.2.0": + version: 2.2.2 + resolution: "@tinyhttp/content-disposition@npm:2.2.2" + checksum: ec36962a263742b5d1303e9eb52955b616d83edee71d559a9ed051568ace9206d8bfa625de406c10694765b3fa117eaca65f1c0c5330d91282170ba9f3654dfb + languageName: node + linkType: hard + "@tokenizer/token@npm:^0.3.0": version: 0.3.0 resolution: "@tokenizer/token@npm:0.3.0" @@ -18673,13 +18773,6 @@ __metadata: languageName: node linkType: hard -"@types/btoa-lite@npm:^1.0.0": - version: 1.0.0 - resolution: "@types/btoa-lite@npm:1.0.0" - checksum: 4d0c3c36cc8aa5669d286d62ca45d925e3ea0db75222ebacb0d9f4fd7822b8e162da8773887e045c11d64c42373807d2ab2ad97a5d8a683d2e1c981e6a05ce33 - languageName: node - linkType: hard - "@types/caseless@npm:*": version: 0.12.5 resolution: "@types/caseless@npm:0.12.5" @@ -20789,7 +20882,7 @@ __metadata: languageName: node linkType: hard -"aggregate-error@npm:^3.0.0, aggregate-error@npm:^3.1.0": +"aggregate-error@npm:^3.0.0": version: 3.1.0 resolution: "aggregate-error@npm:3.1.0" dependencies: @@ -20922,6 +21015,13 @@ __metadata: languageName: node linkType: hard +"ansi-escapes@npm:^6.2.0": + version: 6.2.1 + resolution: "ansi-escapes@npm:6.2.1" + checksum: 4bdbabe0782a1d4007157798f8acab745d1d5e440c872e6792880d08025e0baababa6b85b36846e955fde7d1e4bf572cdb1fddf109de196e9388d7a1c55ce30d + languageName: node + linkType: hard + "ansi-html-community@npm:^0.0.8": version: 0.0.8 resolution: "ansi-html-community@npm:0.0.8" @@ -20977,7 +21077,7 @@ __metadata: languageName: node linkType: hard -"ansi-styles@npm:^6.0.0, ansi-styles@npm:^6.1.0": +"ansi-styles@npm:^6.0.0, ansi-styles@npm:^6.1.0, ansi-styles@npm:^6.2.1": version: 6.2.1 resolution: "ansi-styles@npm:6.2.1" checksum: ef940f2f0ced1a6347398da88a91da7930c33ecac3c77b72c5905f8b8fe402c52e6fde304ff5347f616e27a742da3f1dc76de98f6866c69251ad0b07a66776d9 @@ -22242,13 +22342,6 @@ __metadata: languageName: node linkType: hard -"btoa-lite@npm:^1.0.0": - version: 1.0.0 - resolution: "btoa-lite@npm:1.0.0" - checksum: c2d61993b801f8e35a96f20692a45459c753d9baa29d86d1343e714f8d6bbe7069f1a20a5ae868488f3fb137d5bd0c560f6fbbc90b5a71050919d2d2c97c0475 - languageName: node - linkType: hard - "buffer-alloc-unsafe@npm:^1.1.0": version: 1.1.0 resolution: "buffer-alloc-unsafe@npm:1.1.0" @@ -22374,7 +22467,7 @@ __metadata: languageName: node linkType: hard -"bytes@npm:3.1.2": +"bytes@npm:3.1.2, bytes@npm:^3.1.2": version: 3.1.2 resolution: "bytes@npm:3.1.2" checksum: e4bcd3948d289c5127591fbedf10c0b639ccbf00243504e4e127374a15c3bc8eed0d28d4aaab08ff6f1cf2abc0cce6ba3085ed32f4f90e82a5683ce0014e1b6e @@ -22829,6 +22922,13 @@ __metadata: languageName: node linkType: hard +"ci-info@npm:^4.0.0": + version: 4.0.0 + resolution: "ci-info@npm:4.0.0" + checksum: 122fe41c5eb8d0b5fa0ab6fd674c5ddcf2dc59766528b062a0144ff0d913cfb210ef925ec52110e7c2a7f4e603d5f0e8b91cfe68867e196e9212fa0b94d0a08a + languageName: node + linkType: hard + "cjs-module-lexer@npm:^1.0.0": version: 1.2.2 resolution: "cjs-module-lexer@npm:1.2.2" @@ -22904,6 +23004,15 @@ __metadata: languageName: node linkType: hard +"cli-cursor@npm:^5.0.0": + version: 5.0.0 + resolution: "cli-cursor@npm:5.0.0" + dependencies: + restore-cursor: ^5.0.0 + checksum: 1eb9a3f878b31addfe8d82c6d915ec2330cec8447ab1f117f4aa34f0137fbb3137ec3466e1c9a65bcb7557f6e486d343f2da57f253a2f668d691372dfa15c090 + languageName: node + linkType: hard + "cli-highlight@npm:^2.1.11": version: 2.1.11 resolution: "cli-highlight@npm:2.1.11" @@ -22920,15 +23029,6 @@ __metadata: languageName: node linkType: hard -"cli-progress@npm:^3.12.0": - version: 3.12.0 - resolution: "cli-progress@npm:3.12.0" - dependencies: - string-width: ^4.2.3 - checksum: e8390dc3cdf3c72ecfda0a1e8997bfed63a0d837f97366bbce0ca2ff1b452da386caed007b389f0fe972625037b6c8e7ab087c69d6184cc4dfc8595c4c1d3e6e - languageName: node - linkType: hard - "cli-spinners@npm:^2.5.0": version: 2.7.0 resolution: "cli-spinners@npm:2.7.0" @@ -22943,13 +23043,6 @@ __metadata: languageName: node linkType: hard -"cli-spinners@npm:^2.9.0": - version: 2.9.0 - resolution: "cli-spinners@npm:2.9.0" - checksum: a9c56e1f44457d4a9f4f535364e729cb8726198efa9e98990cfd9eda9e220dfa4ba12f92808d1be5e29029cdfead781db82dc8549b97b31c907d55f96aa9b0e2 - languageName: node - linkType: hard - "cli-table3@npm:^0.6.2": version: 0.6.3 resolution: "cli-table3@npm:0.6.3" @@ -23162,29 +23255,6 @@ __metadata: languageName: node linkType: hard -"cmake-js@npm:^7.2.1": - version: 7.2.1 - resolution: "cmake-js@npm:7.2.1" - dependencies: - axios: ^1.3.2 - debug: ^4 - fs-extra: ^10.1.0 - lodash.isplainobject: ^4.0.6 - memory-stream: ^1.0.0 - node-api-headers: ^0.0.2 - npmlog: ^6.0.2 - rc: ^1.2.7 - semver: ^7.3.8 - tar: ^6.1.11 - url-join: ^4.0.1 - which: ^2.0.2 - yargs: ^17.6.0 - bin: - cmake-js: bin/cmake-js - checksum: 567d83f2718b0a66d5207905214792ccaa24ed7aa2f3661f214144e91f49480f3e9464e52f609b494a57ed901db789981e2daeae493f8d0e2d4aaed5cee71c17 - languageName: node - linkType: hard - "cmake-js@npm:^7.3.0": version: 7.3.0 resolution: "cmake-js@npm:7.3.0" @@ -25172,7 +25242,7 @@ __metadata: languageName: node linkType: hard -"deprecation@npm:^2.0.0, deprecation@npm:^2.3.1": +"deprecation@npm:^2.0.0": version: 2.3.1 resolution: "deprecation@npm:2.3.1" checksum: f56a05e182c2c195071385455956b0c4106fe14e36245b00c689ceef8e8ab639235176a96977ba7c74afb173317fac2e0ec6ec7a1c6d1e6eaa401c586c714132 @@ -25708,13 +25778,6 @@ __metadata: languageName: node linkType: hard -"emoji-regex@npm:^10.2.1": - version: 10.2.1 - resolution: "emoji-regex@npm:10.2.1" - checksum: 1aa2d16881c56531fdfc03d0b36f5c2b6221cc4097499a5665b88b711dc3fb4d5b8804f0ca6f00c56e5dcf89bac75f0487eee85da1da77df3a33accc6ecbe426 - languageName: node - linkType: hard - "emoji-regex@npm:^10.3.0": version: 10.3.0 resolution: "emoji-regex@npm:10.3.0" @@ -25820,10 +25883,10 @@ __metadata: languageName: node linkType: hard -"env-var@npm:^7.3.1": - version: 7.4.1 - resolution: "env-var@npm:7.4.1" - checksum: 35cbb504d6b803d837a34b84bf9913905d5e627400aeef9529d3a0acd6af9e0b1f9d87b833ac30c76323bd97314e1890514e4ce795643f8a432f39990796e97d +"env-var@npm:^7.5.0": + version: 7.5.0 + resolution: "env-var@npm:7.5.0" + checksum: 7be2a834693cc1d03f3b86ca2d5899fa08cbdcdec3468368ada85c60f6dcd83dc166db3e5dd59f6a85a5e5995a9bdc648082a62dc6f33d8a2351f0ab7d9cab60 languageName: node linkType: hard @@ -28045,6 +28108,22 @@ __metadata: languageName: node linkType: hard +"filename-reserved-regex@npm:^3.0.0": + version: 3.0.0 + resolution: "filename-reserved-regex@npm:3.0.0" + checksum: 1803e19ce64d7cb88ee5a1bd3ce282470a5c263987269222426d889049fc857e302284fa71937de9582eba7a9f39539557d45e0562f2fa51cade8efc68c65dd9 + languageName: node + linkType: hard + +"filenamify@npm:^6.0.0": + version: 6.0.0 + resolution: "filenamify@npm:6.0.0" + dependencies: + filename-reserved-regex: ^3.0.0 + checksum: 5914b64a760d49323d0454efb1f5e33338d3840df447f40556fc68730c4649797451931d60035c66068dacf326f045a912287ce8b63e15a5fba311a961f8f4b1 + languageName: node + linkType: hard + "filesize@npm:^8.0.6": version: 8.0.7 resolution: "filesize@npm:8.0.7" @@ -30259,6 +30338,13 @@ __metadata: languageName: node linkType: hard +"ignore@npm:^5.3.2": + version: 5.3.2 + resolution: "ignore@npm:5.3.2" + checksum: 2acfd32a573260ea522ea0bfeff880af426d68f6831f973129e2ba7363f422923cf53aab62f8369cbf4667c7b25b6f8a3761b34ecdb284ea18e87a5262a865be + languageName: node + linkType: hard + "image-size@npm:^1.0.1": version: 1.0.2 resolution: "image-size@npm:1.0.2" @@ -30569,6 +30655,39 @@ __metadata: languageName: node linkType: hard +"ipull@npm:^3.7.4": + version: 3.9.0 + resolution: "ipull@npm:3.9.0" + dependencies: + "@reflink/reflink": ^0.1.16 + "@tinyhttp/content-disposition": ^2.2.0 + async-retry: ^1.3.3 + chalk: ^5.3.0 + ci-info: ^4.0.0 + cli-spinners: ^2.9.2 + commander: ^10.0.0 + eventemitter3: ^5.0.1 + filenamify: ^6.0.0 + fs-extra: ^11.1.1 + is-unicode-supported: ^2.0.0 + lifecycle-utils: ^1.3.1 + lodash.debounce: ^4.0.8 + lowdb: ^7.0.1 + pretty-bytes: ^6.1.0 + pretty-ms: ^8.0.0 + sleep-promise: ^9.1.0 + slice-ansi: ^7.1.0 + stdout-update: ^4.0.1 + strip-ansi: ^7.1.0 + dependenciesMeta: + "@reflink/reflink": + optional: true + bin: + ipull: dist/cli/cli.js + checksum: 7a9f5a0e1715e6f6a73bd4edb8916fb44640d589617a39f233601f9fe2f93709ba5652ee0603938fd7ba691870567d26ac0ccc2388ca5f327339d7daef806376 + languageName: node + linkType: hard + "is-alphabetical@npm:1.0.4, is-alphabetical@npm:^1.0.0": version: 1.0.4 resolution: "is-alphabetical@npm:1.0.4" @@ -30825,6 +30944,15 @@ __metadata: languageName: node linkType: hard +"is-fullwidth-code-point@npm:^5.0.0": + version: 5.0.0 + resolution: "is-fullwidth-code-point@npm:5.0.0" + dependencies: + get-east-asian-width: ^1.0.0 + checksum: 8dfb2d2831b9e87983c136f5c335cd9d14c1402973e357a8ff057904612ed84b8cba196319fabedf9aefe4639e14fe3afe9d9966d1d006ebeb40fe1fed4babe5 + languageName: node + linkType: hard + "is-generator-fn@npm:^2.0.0": version: 2.1.0 resolution: "is-generator-fn@npm:2.1.0" @@ -31239,6 +31367,13 @@ __metadata: languageName: node linkType: hard +"is-unicode-supported@npm:^2.1.0": + version: 2.1.0 + resolution: "is-unicode-supported@npm:2.1.0" + checksum: f254e3da6b0ab1a57a94f7273a7798dd35d1d45b227759f600d0fa9d5649f9c07fa8d3c8a6360b0e376adf916d151ec24fc9a50c5295c58bae7ca54a76a063f9 + languageName: node + linkType: hard + "is-weakmap@npm:^2.0.1": version: 2.0.1 resolution: "is-weakmap@npm:2.0.1" @@ -33213,6 +33348,13 @@ __metadata: languageName: node linkType: hard +"lifecycle-utils@npm:^1.3.1, lifecycle-utils@npm:^1.7.0": + version: 1.7.0 + resolution: "lifecycle-utils@npm:1.7.0" + checksum: 083b48cf370ff7d9284a0551bea53a104d844ee4b6b57b7b84d04dba4e7c0b157543770c4f582b9fe94aa6ceea4eaa64bf587919a5ab80479a1c5267cde44120 + languageName: node + linkType: hard + "lilconfig@npm:2.1.0, lilconfig@npm:^2.0.3, lilconfig@npm:^2.0.5, lilconfig@npm:^2.1.0": version: 2.1.0 resolution: "lilconfig@npm:2.1.0" @@ -33584,6 +33726,16 @@ __metadata: languageName: node linkType: hard +"log-symbols@npm:^7.0.0": + version: 7.0.0 + resolution: "log-symbols@npm:7.0.0" + dependencies: + is-unicode-supported: ^2.0.0 + yoctocolors: ^2.1.1 + checksum: a6cb6e90bfe9f0774a09ff783e2035cd7e375a42757d7e401b391916a67f6da382f4966b57dda89430faaebe2ed13803ea867e104f8d67caf66082943a7153f0 + languageName: node + linkType: hard + "log-update@npm:^4.0.0": version: 4.0.0 resolution: "log-update@npm:4.0.0" @@ -33667,6 +33819,15 @@ __metadata: languageName: node linkType: hard +"lowdb@npm:^7.0.1": + version: 7.0.1 + resolution: "lowdb@npm:7.0.1" + dependencies: + steno: ^4.0.2 + checksum: 124cbc41d6095ed3765fd50749815ab9d80ee9b9ace87575aaad43979c949604fd6ad055c5e33815e1f03de59940d0e37836a156166521dc16c711ea1f6e027c + languageName: node + linkType: hard + "lower-case@npm:^2.0.2": version: 2.0.2 resolution: "lower-case@npm:2.0.2" @@ -34225,6 +34386,13 @@ __metadata: languageName: node linkType: hard +"mimic-function@npm:^5.0.0": + version: 5.0.1 + resolution: "mimic-function@npm:5.0.1" + checksum: eb5893c99e902ccebbc267c6c6b83092966af84682957f79313311edb95e8bb5f39fb048d77132b700474d1c86d90ccc211e99bae0935447a4834eb4c882982c + languageName: node + linkType: hard + "mimic-response@npm:^1.0.0, mimic-response@npm:^1.0.1": version: 1.0.1 resolution: "mimic-response@npm:1.0.1" @@ -34750,6 +34918,15 @@ __metadata: languageName: node linkType: hard +"nanoid@npm:^5.0.7": + version: 5.0.8 + resolution: "nanoid@npm:5.0.8" + bin: + nanoid: bin/nanoid.js + checksum: df131a515465053ff25c8cf0450ef191e1db83b45fe125af43f50d39feddf1f161d3b2abb34cb993df35a76b427f8d6d982e16e47d67b2fbe843664af025b5e2 + languageName: node + linkType: hard + "napi-build-utils@npm:^1.0.1": version: 1.0.2 resolution: "napi-build-utils@npm:1.0.2" @@ -34984,10 +35161,12 @@ __metadata: languageName: node linkType: hard -"node-api-headers@npm:^0.0.2": - version: 0.0.2 - resolution: "node-api-headers@npm:0.0.2" - checksum: 6b0960d5a9d6bc6640329dd6398d3ee37bcdb5fb649ba8964f1104c9e9f95d96c746cdc13664aa24fd1d7cc5c7b60dd865f7aa02f4d12c7266df151eaf6934db +"node-addon-api@npm:^8.1.0": + version: 8.2.1 + resolution: "node-addon-api@npm:8.2.1" + dependencies: + node-gyp: latest + checksum: ee5e65f387d2a8c137b6f5d733633caa9ba73ee6e781fa5ed4836060fd6e8c1e610af0095fe8d01748c39ecc8eb5f872225b6153e83197bf79253cabd9c97d46 languageName: node linkType: hard @@ -35164,34 +35343,83 @@ __metadata: languageName: node linkType: hard -"node-llama-cpp@npm:^2": - version: 2.8.16 - resolution: "node-llama-cpp@npm:2.8.16" - dependencies: +"node-llama-cpp@npm:3.1.1": + version: 3.1.1 + resolution: "node-llama-cpp@npm:3.1.1" + dependencies: + "@huggingface/jinja": ^0.3.1 + "@node-llama-cpp/linux-arm64": 3.1.1 + "@node-llama-cpp/linux-armv7l": 3.1.1 + "@node-llama-cpp/linux-x64": 3.1.1 + "@node-llama-cpp/linux-x64-cuda": 3.1.1 + "@node-llama-cpp/linux-x64-vulkan": 3.1.1 + "@node-llama-cpp/mac-arm64-metal": 3.1.1 + "@node-llama-cpp/mac-x64": 3.1.1 + "@node-llama-cpp/win-arm64": 3.1.1 + "@node-llama-cpp/win-x64": 3.1.1 + "@node-llama-cpp/win-x64-cuda": 3.1.1 + "@node-llama-cpp/win-x64-vulkan": 3.1.1 + async-retry: ^1.3.3 + bytes: ^3.1.2 chalk: ^5.3.0 chmodrp: ^1.0.2 - cli-progress: ^3.12.0 - cmake-js: ^7.2.1 + cmake-js: ^7.3.0 cross-env: ^7.0.3 cross-spawn: ^7.0.3 - env-var: ^7.3.1 - fs-extra: ^11.1.1 - log-symbols: ^5.1.0 - node-addon-api: ^7.0.0 - octokit: ^3.1.0 - ora: ^7.0.1 - simple-git: ^3.19.1 - uuid: ^9.0.0 + env-var: ^7.5.0 + filenamify: ^6.0.0 + fs-extra: ^11.2.0 + ignore: ^5.3.2 + ipull: ^3.7.4 + is-unicode-supported: ^2.1.0 + lifecycle-utils: ^1.7.0 + log-symbols: ^7.0.0 + nanoid: ^5.0.7 + node-addon-api: ^8.1.0 + octokit: ^4.0.2 + ora: ^8.1.0 + pretty-ms: ^9.1.0 + proper-lockfile: ^4.1.2 + semver: ^7.6.3 + simple-git: ^3.27.0 + slice-ansi: ^7.1.0 + stdout-update: ^4.0.1 + strip-ansi: ^7.1.0 + validate-npm-package-name: ^5.0.1 which: ^4.0.0 yargs: ^17.7.2 peerDependencies: typescript: ">=5.0.0" + dependenciesMeta: + "@node-llama-cpp/linux-arm64": + optional: true + "@node-llama-cpp/linux-armv7l": + optional: true + "@node-llama-cpp/linux-x64": + optional: true + "@node-llama-cpp/linux-x64-cuda": + optional: true + "@node-llama-cpp/linux-x64-vulkan": + optional: true + "@node-llama-cpp/mac-arm64-metal": + optional: true + "@node-llama-cpp/mac-x64": + optional: true + "@node-llama-cpp/win-arm64": + optional: true + "@node-llama-cpp/win-x64": + optional: true + "@node-llama-cpp/win-x64-cuda": + optional: true + "@node-llama-cpp/win-x64-vulkan": + optional: true peerDependenciesMeta: typescript: optional: true bin: + nlc: dist/cli/cli.js node-llama-cpp: dist/cli/cli.js - checksum: 51607ec21f02a702a440fae6a8c06b00b039cbfcb09a7d92eaa16e97972ff71874285d9d2561429bae03b52da81e0d12d2d22356dd162f30ce92d37c928014c4 + checksum: 25c644a64d3f42b766b6d8ef1d84e5be84c1fa664cad961efa41001e68b4de65b0d926e25fbbc745d2702579567d9ea59cbd69df01158c2516ab68907ee0926f languageName: node linkType: hard @@ -35526,21 +35754,21 @@ __metadata: languageName: node linkType: hard -"octokit@npm:^3.1.0": - version: 3.1.0 - resolution: "octokit@npm:3.1.0" +"octokit@npm:^4.0.2": + version: 4.0.2 + resolution: "octokit@npm:4.0.2" dependencies: - "@octokit/app": ^14.0.0 - "@octokit/core": ^5.0.0 - "@octokit/oauth-app": ^6.0.0 - "@octokit/plugin-paginate-graphql": ^4.0.0 - "@octokit/plugin-paginate-rest": ^8.0.0 - "@octokit/plugin-rest-endpoint-methods": ^9.0.0 - "@octokit/plugin-retry": ^6.0.0 - "@octokit/plugin-throttling": ^7.0.0 - "@octokit/request-error": ^5.0.0 - "@octokit/types": ^11.1.0 - checksum: 148c9dcf3a65a824f69802a950bdc5dae6fd70e16024d08b1fdd65a7b080bccc037326e0145a8a4aa6b041f1ceefe1d04a7228750de8256d55e82beaa1f2df37 + "@octokit/app": ^15.0.0 + "@octokit/core": ^6.0.0 + "@octokit/oauth-app": ^7.0.0 + "@octokit/plugin-paginate-graphql": ^5.0.0 + "@octokit/plugin-paginate-rest": ^11.0.0 + "@octokit/plugin-rest-endpoint-methods": ^13.0.0 + "@octokit/plugin-retry": ^7.0.0 + "@octokit/plugin-throttling": ^9.0.0 + "@octokit/request-error": ^6.0.0 + "@octokit/types": ^13.0.0 + checksum: 6e3d6ccd67738d05b8b1a101798b9fcd5cb57560ba761761918d9d7e93e551b846b51f31125ee642fca443e37babd81b42c09a69fed79e33de0f97d8b694a8f7 languageName: node linkType: hard @@ -35620,6 +35848,15 @@ __metadata: languageName: node linkType: hard +"onetime@npm:^7.0.0": + version: 7.0.0 + resolution: "onetime@npm:7.0.0" + dependencies: + mimic-function: ^5.0.0 + checksum: eb08d2da9339819e2f9d52cab9caf2557d80e9af8c7d1ae86e1a0fef027d00a88e9f5bd67494d350df360f7c559fbb44e800b32f310fb989c860214eacbb561c + languageName: node + linkType: hard + "onnx-proto@npm:^4.0.4": version: 4.0.4 resolution: "onnx-proto@npm:4.0.4" @@ -35868,20 +36105,20 @@ __metadata: languageName: node linkType: hard -"ora@npm:^7.0.1": - version: 7.0.1 - resolution: "ora@npm:7.0.1" +"ora@npm:^8.1.0": + version: 8.1.0 + resolution: "ora@npm:8.1.0" dependencies: chalk: ^5.3.0 - cli-cursor: ^4.0.0 - cli-spinners: ^2.9.0 + cli-cursor: ^5.0.0 + cli-spinners: ^2.9.2 is-interactive: ^2.0.0 - is-unicode-supported: ^1.3.0 - log-symbols: ^5.1.0 - stdin-discarder: ^0.1.0 - string-width: ^6.1.0 + is-unicode-supported: ^2.0.0 + log-symbols: ^6.0.0 + stdin-discarder: ^0.2.2 + string-width: ^7.2.0 strip-ansi: ^7.1.0 - checksum: 0842b8b9a96a8586085cafdc25077c76fed8ade072c52c53e748cf40a214731d2215a4d6081d8fbd6203d2b897e834332bda53eb64afd1a5968da17daf020bff + checksum: 81b9a2627a687c2b16fa08b0ae0b3641b320bdbeca831eb323df0cbb1e5ddc096b94391ff342839a1db47f5a895cebb2a8d06c319a5d935fc48628f35a036107 languageName: node linkType: hard @@ -36213,6 +36450,20 @@ __metadata: languageName: node linkType: hard +"parse-ms@npm:^3.0.0": + version: 3.0.0 + resolution: "parse-ms@npm:3.0.0" + checksum: fc602bba093835562321a67a9d6c8c9687ca4f26a09459a77e07ebd7efddd1a5766725ec60eb0c83a2abe67f7a23808f7deb1c1226727776eaf7f9607ae09db2 + languageName: node + linkType: hard + +"parse-ms@npm:^4.0.0": + version: 4.0.0 + resolution: "parse-ms@npm:4.0.0" + checksum: 673c801d9f957ff79962d71ed5a24850163f4181a90dd30c4e3666b3a804f53b77f1f0556792e8b2adbb5d58757907d1aa51d7d7dc75997c2a56d72937cbc8b7 + languageName: node + linkType: hard + "parse-numeric-range@npm:^1.3.0": version: 1.3.0 resolution: "parse-numeric-range@npm:1.3.0" @@ -37411,6 +37662,13 @@ __metadata: languageName: node linkType: hard +"pretty-bytes@npm:^6.1.0": + version: 6.1.1 + resolution: "pretty-bytes@npm:6.1.1" + checksum: 43d29d909d2d88072da2c3d72f8fd0f2d2523c516bfa640aff6e31f596ea1004b6601f4cabc50d14b2cf10e82635ebe5b7d9378f3d5bae1c0067131829421b8a + languageName: node + linkType: hard + "pretty-error@npm:^4.0.0": version: 4.0.0 resolution: "pretty-error@npm:4.0.0" @@ -37476,6 +37734,24 @@ __metadata: languageName: node linkType: hard +"pretty-ms@npm:^8.0.0": + version: 8.0.0 + resolution: "pretty-ms@npm:8.0.0" + dependencies: + parse-ms: ^3.0.0 + checksum: b7d2a8182887af0e5ab93f9df331f10db9b8eda86855e2de115eb01a6c501bde5631a8813b1b0abdd7d045e79b08ae875369a8fd279a3dacd6d9e572bdd3bfa6 + languageName: node + linkType: hard + +"pretty-ms@npm:^9.1.0": + version: 9.1.0 + resolution: "pretty-ms@npm:9.1.0" + dependencies: + parse-ms: ^4.0.0 + checksum: 0f66507467f2005040cccdcb36f35b82674d7809f41c4432009235ed6c920787afa17f621c25b7ccb8ccd80b0840c7b71f7f4a3addb8f0eeef3a033ff1e5cf71 + languageName: node + linkType: hard + "pretty-time@npm:^1.1.0": version: 1.1.0 resolution: "pretty-time@npm:1.1.0" @@ -37621,6 +37897,17 @@ __metadata: languageName: node linkType: hard +"proper-lockfile@npm:^4.1.2": + version: 4.1.2 + resolution: "proper-lockfile@npm:4.1.2" + dependencies: + graceful-fs: ^4.2.4 + retry: ^0.12.0 + signal-exit: ^3.0.2 + checksum: 00078ee6a61c216a56a6140c7d2a98c6c733b3678503002dc073ab8beca5d50ca271de4c85fca13b9b8ee2ff546c36674d1850509b84a04a5d0363bcb8638939 + languageName: node + linkType: hard + "property-information@npm:^5.0.0, property-information@npm:^5.3.0": version: 5.6.0 resolution: "property-information@npm:5.6.0" @@ -38962,6 +39249,16 @@ __metadata: languageName: node linkType: hard +"restore-cursor@npm:^5.0.0": + version: 5.1.0 + resolution: "restore-cursor@npm:5.1.0" + dependencies: + onetime: ^7.0.0 + signal-exit: ^4.1.0 + checksum: 838dd54e458d89cfbc1a923b343c1b0f170a04100b4ce1733e97531842d7b440463967e521216e8ab6c6f8e89df877acc7b7f4c18ec76e99fb9bf5a60d358d2c + languageName: node + linkType: hard + "retry-axios@npm:^2.6.0": version: 2.6.0 resolution: "retry-axios@npm:2.6.0" @@ -39854,14 +40151,14 @@ __metadata: languageName: node linkType: hard -"simple-git@npm:^3.19.1": - version: 3.19.1 - resolution: "simple-git@npm:3.19.1" +"simple-git@npm:^3.27.0": + version: 3.27.0 + resolution: "simple-git@npm:3.27.0" dependencies: "@kwsites/file-exists": ^1.1.1 "@kwsites/promise-deferred": ^1.1.1 - debug: ^4.3.4 - checksum: ab7c6901130eadd5758c5f1b0d957573b13cd981549cb5853e757cf13f8cb53b79a50e1acde8eaceba88da814d252f90cf7feab9bd67c64db903250adc51b02f + debug: ^4.3.5 + checksum: bc602d67317a5421363f4cbe446bc71336387a7ea9864b23993dcbbd7e4847e346a234aa5b46bf9d80130d2448cbaeb21cf8f7b62572dce093fb4643ff7ffafd languageName: node linkType: hard @@ -39927,6 +40224,13 @@ __metadata: languageName: node linkType: hard +"sleep-promise@npm:^9.1.0": + version: 9.1.0 + resolution: "sleep-promise@npm:9.1.0" + checksum: a93359c18d2e4d586f2ecd4575cbdbc92bcbd9d387bd4bca249892abb512ca4e80075f67e53ec1279ea4555e8a1f6dc9df9e90f8aa71178ad943e9ba1f27debb + languageName: node + linkType: hard + "slice-ansi@npm:^3.0.0": version: 3.0.0 resolution: "slice-ansi@npm:3.0.0" @@ -39959,6 +40263,16 @@ __metadata: languageName: node linkType: hard +"slice-ansi@npm:^7.1.0": + version: 7.1.0 + resolution: "slice-ansi@npm:7.1.0" + dependencies: + ansi-styles: ^6.2.1 + is-fullwidth-code-point: ^5.0.0 + checksum: 10313dd3cf7a2e4b265f527b1684c7c568210b09743fd1bd74f2194715ed13ffba653dc93a5fa79e3b1711518b8990a732cb7143aa01ddafe626e99dfa6474b2 + languageName: node + linkType: hard + "smart-buffer@npm:^4.2.0": version: 4.2.0 resolution: "smart-buffer@npm:4.2.0" @@ -40289,13 +40603,32 @@ __metadata: languageName: node linkType: hard -"stdin-discarder@npm:^0.2.1": +"stdin-discarder@npm:^0.2.1, stdin-discarder@npm:^0.2.2": version: 0.2.2 resolution: "stdin-discarder@npm:0.2.2" checksum: 642ffd05bd5b100819d6b24a613d83c6e3857c6de74eb02fc51506fa61dc1b0034665163831873868157c4538d71e31762bcf319be86cea04c3aba5336470478 languageName: node linkType: hard +"stdout-update@npm:^4.0.1": + version: 4.0.1 + resolution: "stdout-update@npm:4.0.1" + dependencies: + ansi-escapes: ^6.2.0 + ansi-styles: ^6.2.1 + string-width: ^7.1.0 + strip-ansi: ^7.1.0 + checksum: 3b5207b3a747bb917ca3b4a4894f163afae83a292ab151fad759cab736d240098ecc54ccedc7266fa3fd85eb61bb0f0f73acd562f6b02da8fa42e1c5ba2fddaf + languageName: node + linkType: hard + +"steno@npm:^4.0.2": + version: 4.0.2 + resolution: "steno@npm:4.0.2" + checksum: 1d135aac18058e4629993d036e46b8a9af155e2a49260ece7047df8eb916f2c04f396b364db8543ad5b8c16d89c8747a6bdc43f3d85c79dc1728ffc9a2239a32 + languageName: node + linkType: hard + "stop-iteration-iterator@npm:^1.0.0": version: 1.0.0 resolution: "stop-iteration-iterator@npm:1.0.0" @@ -40399,18 +40732,7 @@ __metadata: languageName: node linkType: hard -"string-width@npm:^6.1.0": - version: 6.1.0 - resolution: "string-width@npm:6.1.0" - dependencies: - eastasianwidth: ^0.2.0 - emoji-regex: ^10.2.1 - strip-ansi: ^7.0.1 - checksum: 8aefb456a230c8d7fe254049b1b2d62603da1a3b6c7fc9f3332f6779583cc1c72653f9b6e4cd0c1c92befee1565d4a0a7542d09ba4ceb6d96af02fbd8425bb03 - languageName: node - linkType: hard - -"string-width@npm:^7.0.0": +"string-width@npm:^7.0.0, string-width@npm:^7.1.0, string-width@npm:^7.2.0": version: 7.2.0 resolution: "string-width@npm:7.2.0" dependencies: @@ -42460,13 +42782,10 @@ __metadata: languageName: node linkType: hard -"universal-github-app-jwt@npm:^1.1.1": - version: 1.1.1 - resolution: "universal-github-app-jwt@npm:1.1.1" - dependencies: - "@types/jsonwebtoken": ^9.0.0 - jsonwebtoken: ^9.0.0 - checksum: 31d30150b9eafa9fa8bf57bd6f97d7d91d4509ad24fa673a6e29ac2295b8f1fc293a70cb44fa807af7cfd787db1cf6edd3876fc0cae31230c5292b76677159fc +"universal-github-app-jwt@npm:^2.2.0": + version: 2.2.0 + resolution: "universal-github-app-jwt@npm:2.2.0" + checksum: 09f8e9710453749bd669fb6511157f03683674066f04696b10d42c18d87cb40d77a5b7504b5bd6f4e329229fff8715e01958217560accd941381c6b4cb7a46fe languageName: node linkType: hard @@ -42889,6 +43208,13 @@ __metadata: languageName: node linkType: hard +"validate-npm-package-name@npm:^5.0.1": + version: 5.0.1 + resolution: "validate-npm-package-name@npm:5.0.1" + checksum: 0d583a1af23aeffea7748742cf22b6802458736fb8b60323ba5949763824d46f796474b0e1b9206beb716f9d75269e19dbd7795d6b038b29d561be95dd827381 + languageName: node + linkType: hard + "value-equal@npm:^1.0.1": version: 1.0.1 resolution: "value-equal@npm:1.0.1" @@ -43986,7 +44312,7 @@ __metadata: languageName: node linkType: hard -"yargs@npm:^17.6.0, yargs@npm:^17.7.2": +"yargs@npm:^17.7.2": version: 17.7.2 resolution: "yargs@npm:17.7.2" dependencies: @@ -44025,6 +44351,13 @@ __metadata: languageName: node linkType: hard +"yoctocolors@npm:^2.1.1": + version: 2.1.1 + resolution: "yoctocolors@npm:2.1.1" + checksum: 563fbec88bce9716d1044bc98c96c329e1d7a7c503e6f1af68f1ff914adc3ba55ce953c871395e2efecad329f85f1632f51a99c362032940321ff80c42a6f74d + languageName: node + linkType: hard + "youtube-transcript@npm:^1.0.6": version: 1.0.6 resolution: "youtube-transcript@npm:1.0.6"