依赖项¶
无论是pip install kedro还是conda install -c conda-forge kedro都会安装Kedro核心模块,其中包含CLI工具、项目模板、管道抽象框架以及配置支持。
当你创建一个项目时,会为其执行的任务引入额外的依赖项。
声明项目特定依赖项¶
当你创建一个新的Kedro项目时,Kedro会在项目根目录生成一个requirements.txt文件。该文件包含核心依赖项以及你选择包含在项目中的相关工具依赖。在requirements.txt文件中明确指定项目的精确依赖关系,可以方便未来运行项目,并避免下游的版本冲突。
安装项目特定依赖项¶
当有人克隆你的项目时,他们可以通过导航到项目的根目录并运行以下命令来安装项目特定的依赖项:
pip install -r requirements.txt
可复现的环境¶
为确保项目依赖项和传递依赖项固定到特定版本,请使用pip-tools将requirements.txt文件编译成requirements.lock文件。
要在虚拟环境中安装pip-tools,请运行以下命令:
pip install pip-tools
要在项目中添加或移除依赖项,请编辑requirements.txt文件,然后运行以下命令:
pip-compile <project_root>/requirements.txt --output-file <project_root>/requirements.lock
这将通过pip compile命令将requirements.txt文件中列出的依赖项编译为requirements.lock文件,该文件会锁定所有项目依赖的具体版本号(严格版本限制)。您还可以在命令中添加额外的CLI参数,例如使用--generate-hashes来启用pip的哈希校验模式,或使用--upgrade-package来将特定包更新至最新或指定版本。
查看pip-tools文档获取更多信息。
注意
requirements.txt文件包含"源"依赖项,而requirements.lock包含这些依赖项的编译版本且无需手动更新。如需更新依赖项,请修改requirements.txt文件并重新运行pip-compile命令。