Azure / Azure/MachineLearningNotebooks
Misleading error message when using Pipeline Parameters with same name
- 主要語言
- Jupyter Notebook
- 星號
- 4.4k
- 分支
- 2.6k
- PR 合併指標
- 30 天內沒有已合併 PR
描述
I accidently provided the same parameter name for two different pipeline parameters used in different steps, what lead to the error message:
```
ValueError: PipelineDataset does not have a name.
> /anaconda/envs/azureml_py38/lib/python3.8/site-packages/azureml/pipeline/core/graph.py(4538)__str__()
4536 """
4537 if not self.name:
-> 4538 raise ValueError("PipelineDataset does not have a name.")
4539 return "$AZUREML_DATAREFERENCE_{0}".format(self.name)
4540
```
Sample code leading to the issue (assuming default_input_ds: TabularDataset, output_loc: PipelineData, run configs and computetarget are initialized)
```
input_ds_pipeline_param = PipelineParameter(
name="input_ds_param", default_value=default_input_ds
)
input_ds_consumption = DatasetConsumptionConfig(
"tabular_dataset", input_ds_pipeline_param
)
scoring_step = ParallelRunStep(
name="scoringstep",
inputs=[input_ds_consumption],
output=output_loc,
parallel_run_config=score_run_config,
allow_reuse=False,
)
destination_path = PipelineParameter(
name="input_ds_param",
default_value="samplepath/sampleoutput.parquet",
)
copying_step = PythonScriptStep(
name="scorecopystep",
script_name="scoring/parallel_batchscore_copyoutput.py",
source_directory="../aml_sourcedir",
arguments=["--output_path", output_loc, "--destination_path", destination_path],
inputs=[output_loc],
allow_reuse=False,
compute_target=aml_compute_score,
runconfig=copy_run_config,
)
Pipeline(workspace=ws, steps=[scoring_step, copying_step])
---
#### Document Details
⚠ *Do not edit this section. It is required for docs.microsoft.com ➟ GitHub issue linking.*
* ID: 696d753e-ad1b-3e09-6756-425de691b1be
* Version Independent ID: 42ba9f58-3c4d-4cf7-1f89-1fea2a2efa62
* Content: [azureml.pipeline.core.graph module - Azure Machine Learning Python](https://docs.microsoft.com/en-us/python/api/azureml-pipeline-core/azureml.pipeline.core.graph?view=azure-ml-py)
* Content Source: [AzureML-Docset/stable/docs-ref-autogen/azureml-pipeline-core/azureml.pipeline.core.graph.yml](https://github.com/MicrosoftDocs/MachineLearning-Python-pr/blob/live/AzureML-Docset/stable/docs-ref-autogen/azureml-pipeline-core/azureml.pipeline.core.graph.yml)
* Service: **machine-learning**
* Sub-service: **core**
* GitHub Login: @DebFro
* Microsoft Alias: **debfro**
貢獻指南
這個儲存庫沒有索引到貢獻指南
研究方向
從 azureml/pipeline/core/graph.py 中第 4538 行附近的 __str__ 開始,使用兩個名稱相同的 PipelineParameter 物件重現該範例。追蹤重複名稱的處理位置;當衝突產生一則能夠識別重複參數的資訊性錯誤,而不是「PipelineDataset does not have a name.」時,即表示完成。
由索引模型根據 Issue 內容生成。
評估
- 技術堆疊
- python
- 領域
- machine-learning
- Issue 類型
- 缺陷
- 難度
- 4/5
- 預估耗時
- 3-5 天
- 活躍度
- 停滯
- 描述清晰度
- 基本清楚
- 新手友好度
- 30/100