UNPKG

@langchain/community

Version:
108 lines (107 loc) 4.17 kB
import { GenerationChunk } from "@langchain/core/outputs"; import { BaseLanguageModelCallOptions } from "@langchain/core/language_models/base"; import { BaseLLMParams, LLM } from "@langchain/core/language_models/llms"; import { CallbackManagerForLLMRun } from "@langchain/core/callbacks/manager"; //#region src/experimental/llms/chrome_ai.d.ts interface AILanguageModelFactory { create(options?: AILanguageModelCreateOptions): Promise<AILanguageModel>; capabilities(): Promise<AILanguageModelCapabilities>; } interface AILanguageModel extends EventTarget { prompt(input: AILanguageModelPromptInput, options?: AILanguageModelPromptOptions): Promise<string>; promptStreaming(input: AILanguageModelPromptInput, options?: AILanguageModelPromptOptions): ReadableStream; countPromptTokens(input: AILanguageModelPromptInput, options?: AILanguageModelPromptOptions): Promise<number>; get maxTokens(): number; get tokensSoFar(): number; get tokensLeft(): number; get topK(): number; get temperature(): number; oncontextoverflow: (event: Event) => void; clone(options?: AILanguageModelCloneOptions): Promise<AILanguageModel>; destroy(): void; } interface AILanguageModelCapabilities { readonly available: AICapabilityAvailability; languageAvailable(languageTag: string): AICapabilityAvailability; get defaultTopK(): number | undefined; get maxTopK(): number | undefined; get defaultTemperature(): number | undefined; get maxTemperature(): number | undefined; } interface AILanguageModelCreateOptions { signal?: AbortSignal; monitor?: AICreateMonitorCallback; systemPrompt?: string; initialPrompts?: AILanguageModelInitialPrompt[]; topK: number; temperature: number; } interface AILanguageModelInitialPrompt { role: AILanguageModelInitialPromptRole; content: string; } interface AILanguageModelPrompt { role: AILanguageModelPromptRole; content: string; } interface AILanguageModelPromptOptions { signal?: AbortSignal; } interface AILanguageModelCloneOptions { signal?: AbortSignal; } type AILanguageModelPromptInput = string | AILanguageModelPrompt | AILanguageModelPrompt[]; declare enum AILanguageModelInitialPromptRole { "system" = 0, "user" = 1, "assistant" = 2 } declare enum AILanguageModelPromptRole { "user" = 0, "assistant" = 1 } type AICapabilityAvailability = "yes" | "no"; type AICreateMonitorCallback = () => void; interface ChromeAIInputs extends BaseLLMParams { topK?: number; temperature?: number; systemPrompt?: string; } interface ChromeAICallOptions extends BaseLanguageModelCallOptions {} /** * To use this model you need to have the `Built-in AI Early Preview Program` * for Chrome. You can find more information about the program here: * @link https://developer.chrome.com/docs/ai/built-in * * @example * ```typescript * // Initialize the ChromeAI model. * const model = new ChromeAI({ * temperature: 0.5, // Optional. Default is 0.5. * topK: 40, // Optional. Default is 40. * }); * * // Call the model with a message and await the response. * const response = await model.invoke([ * new HumanMessage({ content: "My name is John." }), * ]); * ``` */ declare class ChromeAI extends LLM<ChromeAICallOptions> { temperature?: number; topK?: number; systemPrompt?: string; static lc_name(): string; constructor(inputs?: ChromeAIInputs); _llmType(): string; /** * Initialize the model. This method may be called before invoking the model * to set up a chat session in advance. */ protected createSession(): Promise<any>; _streamResponseChunks(prompt: string, _options: this["ParsedCallOptions"], runManager?: CallbackManagerForLLMRun): AsyncGenerator<GenerationChunk>; _call(prompt: string, options: this["ParsedCallOptions"], runManager?: CallbackManagerForLLMRun): Promise<string>; } //#endregion export { AICapabilityAvailability, AICreateMonitorCallback, AILanguageModel, AILanguageModelCloneOptions, AILanguageModelFactory, AILanguageModelInitialPrompt, AILanguageModelPrompt, AILanguageModelPromptInput, AILanguageModelPromptOptions, ChromeAI, ChromeAICallOptions, ChromeAIInputs }; //# sourceMappingURL=chrome_ai.d.ts.map