跳转到内容

回调函数

LlamaIndex 提供回调函数来帮助调试、追踪和跟踪库的内部运作。 通过回调管理器,可以根据需要添加任意数量的回调函数。

除了记录与事件相关的数据外,您还可以追踪每个事件的持续时间和发生次数。

此外,还会记录事件追踪图,回调函数可以随意使用这些数据。例如,默认情况下,LlamaDebugHandler 会在大多数操作后打印事件追踪记录。

回调事件类型 虽然每个回调可能不会利用所有事件类型,但以下事件可供追踪:

  • CHUNKING -> 文本拆分前后的日志记录。
  • NODE_PARSING -> 记录文档及其解析成的节点的日志。
  • EMBEDDING -> 记录已嵌入文本数量的日志。
  • LLM -> 记录LLM调用的模板和响应日志。
  • QUERY -> 记录每个查询的开始和结束位置。
  • RETRIEVE -> 查询所检索节点的日志。
  • SYNTHESIZE -> 用于记录合成调用结果的日志。
  • TREE -> 用于记录生成的摘要及摘要级别的日志。
  • SUB_QUESTION -> 记录生成的子问题与答案的日志。

您可以实现自己的回调函数来跟踪和追踪这些事件,或使用现有的回调函数。

当前支持的回调函数如下:

  • TokenCountingHandler -> 为提示词、补全和嵌入词元使用提供灵活的词元计数功能。查看迁移详情
  • LlamaDebugHanlder -> 事件的基础跟踪与追踪功能。示例用法可在下方笔记本中找到。
  • WandbCallbackHandler -> 使用Wandb Prompts前端进行事件和轨迹追踪。更多细节请参阅下方笔记本或访问Wandb
  • AimCallback -> 追踪大语言模型的输入与输出。具体使用示例可在下方笔记本中找到。
  • OpenInferenceCallbackHandler -> 追踪AI模型推理过程。使用示例可在下方笔记本中找到。
  • OpenAIFineTuningHandler -> 记录所有LLM输入和输出。然后提供一个函数 save_finetuning_events(),用于以适用于OpenAI微调的格式保存输入和输出。