模块使用指南#
当前 QueryPipeline 中支持以下 LlamaIndex 模块。请注意,您也可以自定义模块!
LLM(包括补全和聊天模型)#
- 基类:
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 定义为另一个查询管道中的模块,这便于您串联复杂的工作流程。
自定义组件#
详情请参阅我们的自定义组件指南。