Class LLMChain<T, Model>

Chain to run queries against LLMs.


import { LLMChain } from "langchain/chains";
import { OpenAI } from "langchain/llms/openai";
import { PromptTemplate } from "langchain/prompts";

const prompt = PromptTemplate.fromTemplate("Tell me a {adjective} joke");
const llm = new LLMChain({ llm: new OpenAI(), prompt });

Type Parameters

  • T extends string | object = string

  • Model extends LLMType = LLMType

Hierarchy (view full)




llm: Model

LLM Wrapper to use

outputKey: string = "text"

Key to use for output, defaults to text

prompt: BasePromptTemplate

Prompt object to use

llmKwargs?: CallOptionsIfAvailable<Model>

Kwargs to pass to LLM

memory?: any
outputParser?: any

OutputParser to use



  • Parameters

    • inputs: ChainValues[]
    • Optional config: any[]

    Returns Promise<ChainValues[]>

    ⚠️ Deprecated ⚠️

    Use .batch() instead. Will be removed in 0.2.0.

    This feature is deprecated and will be removed in the future.

    It is not recommended for use.

    Call the chain on all inputs in the list

  • Run the core logic of this chain and add to output if desired.

    Wraps _call and handles memory.


    • values: any
    • Optional config: any

    Returns Promise<ChainValues>

  • Invoke the chain with the provided input and returns the output.


    • input: ChainValues

      Input values for the chain run.

    • Optional options: any

    Returns Promise<ChainValues>

    Promise that resolves with the output of the chain run.

  • Format prompt with values and pass to LLM


    • values: any

      keys to pass to prompt template

    • Optional callbackManager: any

      CallbackManager to use

    Returns Promise<T>

    Completion from LLM.


    llm.predict({ adjective: "funny" })
  • Parameters

    • inputs: Record<string, unknown>
    • outputs: Record<string, unknown>
    • returnOnlyOutputs: boolean = false

    Returns Promise<Record<string, unknown>>

  • Parameters

    • input: any
    • Optional config: any

    Returns Promise<string>


    Use .invoke() instead. Will be removed in 0.2.0.

Generated using TypeDoc