追踪和调试#
调试和追踪应用程序的运行是理解和优化它的关键。LlamaIndex 提供了多种方法来实现这一点。
基本日志记录#
了解应用程序的操作最简单的方法就是打开调试日志记录。可以在应用程序的任何位置执行以下操作:
import logging
import sys
logging.basicConfig(stream=sys.stdout, level=logging.DEBUG)
logging.getLogger().addHandler(logging.StreamHandler(stream=sys.stdout))
回调处理程序#
LlamaIndex 提供了回调函数来帮助调试、跟踪和追踪库的内部工作。使用回调管理器,可以添加任意数量的回调函数。
除了记录与事件相关的数据之外,还可以跟踪每个事件的持续时间和发生次数。
此外,还会记录事件的追踪图,回调函数可以根据需要使用这些数据。例如,LlamaDebugHandler
默认会在大多数操作之后打印事件的追踪信息。
可以这样获取一个简单的回调处理程序:
import llama_index.core
llama_index.core.set_global_handler("simple")
您还可以了解如何构建自己的自定义回调处理程序。
可观测性#
LlamaIndex 提供了一键式可观测性,使您能够在生产环境中构建合乎原则的 LLM 应用程序。
此功能允许您将 LlamaIndex 库与我们合作伙伴提供的强大的可观测性/评估工具无缝集成。只需配置一次变量,您就可以执行以下操作:
- 查看 LLM/prompt 输入/输出
- 确保任何组件的输出(LLMs、嵌入)表现如预期
- 查看索引和查询的调用跟踪
要了解更多信息,请查看我们的可观测性文档。