Skip to content

回调函数#

概念#

LlamaIndex 提供回调函数来帮助调试、跟踪和追踪库的内部工作。使用回调管理器,可以添加任意数量的回调函数。

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

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

回调事件类型 虽然每个回调函数可能不会利用每种事件类型,但可以跟踪以下事件:

  • CHUNKING -> 记录文本分割前后的日志。
  • NODE_PARSING -> 记录文档和它们被解析成的节点的日志。
  • EMBEDDING -> 记录嵌入的文本数量的日志。
  • LLM -> 记录 LLM 调用的模板和响应的日志。
  • QUERY -> 跟踪每个查询的开始和结束。
  • RETRIEVE -> 记录查询检索到的节点的日志。
  • SYNTHESIZE -> 记录合成调用的结果的日志。
  • TREE -> 记录生成的摘要和摘要级别的日志。
  • SUB_QUESTION -> 记录生成的子问题和答案的日志。

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

模块#

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

  • TokenCountingHandler -> 用于提示、完成和嵌入标记使用的灵活标记计数。有关迁移详细信息,请参阅迁移详情
  • LlamaDebugHanlder -> 用于事件的基本跟踪和追踪。示例用法可以在下面的笔记本中找到。
  • WandbCallbackHandler -> 使用 Wandb Prompts 前端跟踪事件和追踪。更多详细信息请参阅下面的笔记本或Wandb
  • AimCallback -> 跟踪 LLM 输入和输出。示例用法可以在下面的笔记本中找到。
  • OpenInferenceCallbackHandler -> 跟踪 AI 模型推理。示例用法可以在下面的笔记本中找到。
  • OpenAIFineTuningHandler -> 记录所有 LLM 输入和输出。然后,提供一个名为 save_finetuning_events() 的函数,以适合与 OpenAI 进行微调的格式保存输入和输出。