青蛙小白
目录

Example selectors

https://python.langchain.com/docs/concepts/#example-selectors

示例选择器 - 一种常见的提示技巧是将示例作为提示的一部分来提高性能,这被称为少样本提示(few-shot prompting)。这为语言模型提供了具体的行为示例。

有时这些示例是硬编码到提示中的,但在更高级的情况下,可能需要动态选择它们。示例选择器是负责选择并将示例格式化为提示(prompts)的类。

有关如何使用示例选择器的具体说明,请参阅此处的相关操作指南

classDiagram
class PromptTemplate {
    +input_variables: list
    +template: str
}
class FewShotPromptTemplate {
    +example_selector: ExampleSelector
    +example_prompt: PromptTemplate
    +prefix: str
    +suffix: str
    +input_variables: list
}
class BaseExampleSelector {
    +add_example(example: dict)
    +select_examples(input_variables: dict): list
}
class LengthBasedExampleSelector {
    +examples: list
    +example_prompt: PromptTemplate
    +max_length: int
    +get_text_length: Callable
}
FewShotPromptTemplate --> BaseExampleSelector
FewShotPromptTemplate --> PromptTemplate
LengthBasedExampleSelector --|> BaseExampleSelector
LengthBasedExampleSelector --> PromptTemplate

class MaxMarginalRelevanceExampleSelector {
    +examples: list
    +embedding: Embeddings
    +vectorstore: VectorStore
    +k: int
}
MaxMarginalRelevanceExampleSelector --|> BaseExampleSelector
class SemanticSimilarityExampleSelector {
    +examples: list
    +embedding: Embeddings
    +vectorstore: VectorStore
    +k: int
}
SemanticSimilarityExampleSelector --|> BaseExampleSelector
class NGramOverlapExampleSelector {
    +examples: list
    +example_prompt: PromptTemplate
    +threshold: float
}
NGramOverlapExampleSelector --|> BaseExampleSelector
评论