LlamaIndex 查询管道模块使用指南
在数据处理和分析的世界中,LlamaIndex 提供了一个强大的工具——QueryPipeline,它允许你将不同的模块串联起来,以创建复杂的工作流程。本文将详细介绍如何在 QueryPipeline 中使用各种 LlamaIndex 模块,并展示如何定义你自己的自定义组件。
支持的 LlamaIndex 模块
目前,以下 LlamaIndex 模块可以在 QueryPipeline 中使用。记住,你也可以定义自己的模块!
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 定义为另一个查询管道中的模块。这使得你可以轻松地将复杂的工作流程串联起来。
自定义组件
如果你需要更高级的功能,可以定义自己的自定义组件。详细信息请参阅我们的自定义组件指南。
结语
通过 QueryPipeline,LlamaIndex 提供了一个强大而灵活的工具,帮助你构建复杂的数据处理和分析工作流程。无论你是处理简单的任务还是复杂的业务逻辑,QueryPipeline 都能满足你的需求。希望这篇指南能帮助你更好地利用 LlamaIndex 的功能,提升你的工作效率。
如果你有任何问题或需要进一步的帮助,请随时联系我们的支持团队。祝你使用愉快!