Kedro-API-Hook

本文介绍了Kedro的Hook机制,它允许在执行关键操作时添加额外行为,如监听任务进度、数据验证和跟踪机器学习指标。Hook由规范和实例组成,通过在`project_hooks.py`中注册。Kedro提供了多种Hook类型,如CLI hooks和异常处理Hook。文章详细讲解了Hook的命名规则、实例创建及注册方法,并提到了自动注册插件的禁用方式。
摘要由CSDN通过智能技术生成

介绍

Hook是一种机制,以简单一致的方式为Kedro的主要执行添加额外的行为,可用于监听任务执行进度、做出额外指定行为等功能。一些示例可能包括:

  • 加载数据目录后添加日志语句
  • 在节点运行之前将数据验证添加到输入,并在节点运行后将数据验证添加到输出。这使得与其他工具(如Great-Expect)集成成为可能。
  • 在整个管道运行过程中添加机器学习指标跟踪,例如使用MLflow

概念

钩子由钩子规范和钩子实例组成。要将 Hooks 添加到项目中,您必须:

  • 根据现有的Kedro的Hook规范,创建或修改<your_project>/src/<package_name>/hooks.py文件来定义一个Hook实例。
  • src/<your_project>/settings.py 文件中的HOOKS 键下注册 Hook实例。

Hook详述

Kedro为特定的执行点定义了Hook规范,用户可以在其中注入额外的行为。目前,kedro.framework.hooks 中提供了以下 Hook 规范:

  • after_catalog_created
  • before_node_run
  • after_node_run
  • on_node_error
  • before_pipeline_run
  • after_pipeline_run
  • on_pipeline_error
  • before_dataset_loaded
  • after_dataset_loaded
  • before_dataset_saved
  • after_dataset_saved
  • after_context_created

一般Hook函数命名规则:
一般Hook函数命名规则:<before/after>_<noun>_<past_participle>
其中:

  • <before/after>并指 Hook 执行的时间,例如 或。<past_participle>before
    was runafter was created
  • <before/after><past_participle>指的是Hook执行的时间点(前/后),例如before <something> was run or after <something> was created.
  • <noun>是指 Kedro 执行时间线中的相关组件,Kedro为这类 Hook 为其添加了额外的行为,例如 catalognodepipeline

处理异常的Hook函数命名规则:
处理异常的Hook函数命名规则:on_<noun>_error
其中:

  • <noun>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值