Virtualenv 对同一DAG中的不同任务使用不同版本(气流)

Virtualenv 对同一DAG中的不同任务使用不同版本(气流),virtualenv,airflow,Virtualenv,Airflow,假设我有两个任务,使用两个版本的熊猫 #我的任务# 将熊猫作为pd#熊猫1.0.0导入 def f1(数据): . . 返回0 及 #我的任务(二) 将熊猫作为pd#版本2.0.0导入 def f2(数据): . . 返回0 在my airflow(本地,无Docker)中,是否有方法为每个任务创建venv或需求文件,例如 #dag.py t1=蟒蛇算子( 任务_id=“t1”, python_callable=f1, requirements=“my_task_one_requiremen

假设我有两个任务,使用两个版本的熊猫

#我的任务#
将熊猫作为pd#熊猫1.0.0导入
def f1(数据):
.
.
返回0

#我的任务(二)
将熊猫作为pd#版本2.0.0导入
def f2(数据):
.
.
返回0
在my airflow(本地,无Docker)中,是否有方法为每个任务创建venv或需求文件,例如

#dag.py
t1=蟒蛇算子(
任务_id=“t1”,
python_callable=f1,
requirements=“my_task_one_requirement.txt”#如何设置此任务的需求?
)
t2=蟒蛇算子(
任务_id=“t2”,
python_callable=f2,
requirements=“my_task_two_requirement.txt”#如何设置此任务的需求?
)
t1>>t2
如果不能在同一个DAG文件中,是否有方法指定给定DAG文件的要求,例如将
t1
t2
分别放置在
DAG1
DAG2
中,但使用不同的包/要求文件?

适合此用例

t1 = PythonVirtualenvOperator(
    task_id="t1",
    python_callable=f1,
    requirements=["pandas==1.0.0"],
)

t2 = PythonVirtualenvOperator(
    task_id="t2",
    python_callable=f2,
    requirements=["pandas==2.0.0"],
)

你知道吗,如果你能解析从哪里下载软件包?例如
pyTorch
https://download.pytorch.org/whl/torch_stable.html