A chain for comparing two outputs, such as the outputs of two models, prompts, or outputs of a single model on similar inputs, with labeled preferences.

Hierarchy (view full)

Constructors

Properties

llm: BaseLanguageModelInterface<any, BaseLanguageModelCallOptions>
outputKey: string = "text"
prompt: BasePromptTemplate<any, BasePromptValueInterface, any>
requiresInput: boolean = true
requiresReference: boolean = true
skipReferenceWarning: string = ...
criterionName?: string
evaluationName?: string = ...
llmKwargs?: any
memory?: BaseMemory
skipInputWarning?: string = ...

Accessors

Methods

  • Parameters

    • inputs: ChainValues[]
    • Optional config: (RunnableConfig | CallbackManager | (BaseCallbackHandler | BaseCallbackHandlerMethodsClass)[])[]

    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.

    Parameters

    • values: any
    • Optional config: BaseCallbackConfig | CallbackManager | (BaseCallbackHandler | BaseCallbackHandlerMethodsClass)[]

    Returns Promise<ChainValues>

  • Check if the evaluation arguments are valid.

    Parameters

    • Optional reference: string

      The reference label.

    • Optional input: string

      The input string.

    Returns void

    Throws

    If the evaluator requires an input string but none is provided, or if the evaluator requires a reference label but none is provided.

  • Evaluate the output string pairs.

    Parameters

    • args: LLMPairwiseStringEvaluatorArgs
    • Optional callOptions: BaseLanguageModelCallOptions
    • Optional config: BaseCallbackConfig | CallbackManager | (BaseCallbackHandler | BaseCallbackHandlerMethodsClass)[]

    Returns Promise<ChainValues>

    A dictionary containing the preference, scores, and/or other information.

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

    Parameters

    • input: ChainValues

      Input values for the chain run.

    • Optional options: RunnableConfig

    Returns Promise<ChainValues>

    Promise that resolves with the output of the chain run.

  • Format prompt with values and pass to LLM

    Parameters

    • values: any

      keys to pass to prompt template

    • Optional callbackManager: CallbackManager

      CallbackManager to use

    Returns Promise<EvalOutputType>

    Completion from LLM.

    Example

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

    • input: any
    • Optional config: RunnableConfig | CallbackManager | (BaseCallbackHandler | BaseCallbackHandlerMethodsClass)[]

    Returns Promise<string>

    Deprecated

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

  • Create a new instance of the PairwiseStringEvalChain.

    Parameters

    • llm: BaseLanguageModelInterface<any, BaseLanguageModelCallOptions>
    • Optional criteria: "detail" | ConstitutionalPrinciple | {
          [key: string]: string;
      } | "conciseness" | "relevance" | "correctness" | "coherence" | "harmfulness" | "maliciousness" | "helpfulness" | "controversiality" | "misogyny" | "criminality" | "insensitivity" | "depth" | "creativity"

      The criteria to use for evaluation.

    • Optional chainOptions: Partial<Omit<LLMEvalChainInput<EvalOutputType, BaseLanguageModelInterface<any, BaseLanguageModelCallOptions>>, "llm">>

      Options to pass to the chain.

    Returns Promise<PairwiseStringEvalChain>

Generated using TypeDoc