模块使用#
目前,QueryPipeline 中支持以下 LlamaIndex 模块。请记住,您也可以定义自己的模块!
LLMs(包括完成和聊天)#
- 基础类:
LLM
- 模块指南
- 如果是聊天模型:
- 输入:
messages
。接受任何List[ChatMessage]
或任何可转换为字符串的输入。 - 输出:
output
。输出ChatResponse
(可转换为字符串) - 如果是完成模型:
- 输入:
prompt
。接受任何可转换为字符串的输入。 - 输出:
output
。输出CompletionResponse
(可转换为字符串)
提示#
- 基础类:
PromptTemplate
- 模块指南
- 输入:提示模板变量。每个变量都可以是可转换为字符串的输入。
- 输出:
output
。输出格式化的提示字符串(可转换为字符串)
查询引擎#
- 基础类:
BaseQueryEngine
- 模块指南
- 输入:
input
。接受任何可转换为字符串的输入。 - 输出:
output
。输出Response
(可转换为字符串)
查询转换器#
- 基础类:
BaseQueryTransform
- 模块指南
- 输入:
query_str
,metadata
(可选)。query_str
是任何可转换为字符串的输入。 - 输出:
query_str
。输出字符串。
检索器#
- 基础类:
BaseRetriever
- 模块指南
- 输入:
input
。接受任何可转换为字符串的输入。 - 输出:
output
。输出节点列表List[BaseNode]
。
输出解析器#
- 基础类:
BaseOutputParser
- 模块指南
- 输入:
input
。接受任何可转换为字符串的输入。 - 输出:
output
。输出解析器应该解析的任何类型输出。
后处理器/重新排序器#
- 基础类:
BaseNodePostprocessor
- 模块指南
- 输入:
nodes
,query_str
(可选)。nodes
是List[BaseNode]
,query_str
是任何可转换为字符串的输入。 - 输出:
nodes
。输出节点列表List[BaseNode]
。
响应合成器#
- 基础类:
BaseSynthesizer
- 模块指南
- 输入:
nodes
,query_str
。nodes
是List[BaseNode]
,query_str
是任何可转换为字符串的输入。 - 输出:
output
。输出Response
对象(可转换为字符串)。
其他 QueryPipeline 对象#
您可以将 QueryPipeline
定义为另一个查询管道中的模块。这样可以轻松地将复杂的工作流串在一起。
自定义组件#
查看我们的自定义组件指南获取更多详细信息。