langchain.prompts.example_selector.length_based.LengthBasedExampleSelector¶

class langchain.prompts.example_selector.length_based.LengthBasedExampleSelector(*, examples: ~typing.List[dict], example_prompt: ~langchain.prompts.prompt.PromptTemplate, get_text_length: ~typing.Callable[[str], int] = <function _get_length_based>, max_length: int = 2048, example_text_lengths: ~typing.List[int] = [])[source]¶

Bases: BaseExampleSelector, BaseModel

Select examples based on length.

Create a new model by parsing and validating input data from keyword arguments.

Raises ValidationError if the input data cannot be parsed to form a valid model.

param example_prompt: langchain.prompts.prompt.PromptTemplate [Required]¶

Prompt template used to format the examples.

param examples: List[dict] [Required]¶

A list of the examples that the prompt template expects.

param get_text_length: Callable[[str], int] = <function _get_length_based>¶

Function to measure prompt length. Defaults to word count.

param max_length: int = 2048¶

Max length for the prompt, beyond which examples are cut.

add_example(example: Dict[str, str]) None[source]¶

Add new example to list.

validator calculate_example_text_lengths  »  example_text_lengths[source]¶

Calculate text lengths if they don’t exist.

select_examples(input_variables: Dict[str, str]) List[dict][source]¶

Select which examples to use based on the input lengths.