Wyrażenia w zestawie AZURE Machine Learning SDK i interfejsie wiersza polecenia w wersji 2
Za pomocą zestawu AZURE Machine Learning SDK i interfejsu wiersza polecenia w wersji 2 można użyć wyrażeń , gdy wartość może nie być znana podczas tworzenia zadania lub składnika. Po przesłaniu zadania lub wywołaniu składnika wyrażenie jest oceniane, a wartość jest zastępowana.
Format wyrażenia to ${{ <expression> }}
. Niektóre wyrażenia są oceniane na kliencie podczas przesyłania zadania lub składnika. Inne wyrażenia są oceniane na serwerze (obliczenia, w którym działa zadanie lub składnik).
Wyrażenia klienta
Uwaga
"klient", który ocenia wyrażenie, to miejsce, w którym zadanie jest przesyłane lub jest uruchamiany składnik. Na przykład maszyna lokalna lub wystąpienie obliczeniowe.
Expression | opis | Scope |
---|---|---|
${{inputs.<input_name>}} |
Odwołania do wejściowego zasobu danych lub modelu. | Działa dla wszystkich zadań. |
${{outputs.<output_name>}} |
Odwołania do wyjściowego zasobu danych lub modelu. | Działa dla wszystkich zadań. |
${{search_space.<hyperparameter>}} |
Odwołuje się do hiperparametrów do użycia w zadaniu zamiatania. Wartości hiperparametrów dla każdej wersji próbnej są wybierane na podstawie wartości search_space . |
Tylko zamiatanie zadań. |
${{parent.inputs.<input_name>}} |
Wiąże dane wejściowe zadania podrzędnego (krok potoku) w potoku z danymi wejściowymi zadania nadrzędnego nadrzędnego najwyższego poziomu. | Tylko zadania potoku. |
${{parent.outputs.<output_name>}} |
Wiąże dane wyjściowe zadania podrzędnego (krok potoku) w potoku z danymi wyjściowymi nadrzędnego zadania potoku najwyższego poziomu. | Tylko zadania potoku. |
${{parent.jobs.<step-name>.inputs.<input-name>}} |
Wiąże się z danymi wejściowymi innego kroku w potoku. | Tylko zadania potoku. |
${{parent.jobs.<step-name>.outputs.<output-name>}} |
Wiąże się z danymi wyjściowymi innego kroku w potoku. | Tylko zadania potoku. |
Wyrażenia serwera
Ważne
Następujące wyrażenia są rozpoznawane po stronie serwera , a nie po stronie klienta . W przypadku zaplanowanych zadań, w których czas tworzenia zadania i czas przesyłania zadania są różne, wyrażenia są rozwiązywane po przesłaniu zadania. Ponieważ te wyrażenia są rozpoznawane po stronie serwera, używają bieżącego stanu obszaru roboczego, a nie stanu obszaru roboczego podczas tworzenia zaplanowanego zadania. Jeśli na przykład zmienisz domyślny magazyn danych obszaru roboczego po utworzeniu zaplanowanego zadania, wyrażenie ${{default_datastore}}
zostanie rozpoznane w nowym domyślnym magazynie danych, a nie domyślnym magazynie danych podczas tworzenia zaplanowanego zadania.
Expression | opis | Scope |
---|---|---|
${{default_datastore}} |
Jeśli domyślny magazyn danych potoku jest skonfigurowany, zostanie rozpoznany jako domyślna nazwa magazynu danych potoku; w przeciwnym razie jest rozpoznawana jako domyślna nazwa magazynu danych obszaru roboczego. Domyślny magazyn danych potoku można kontrolować za pomocą polecenia pipeline_job.settings.default_datastore . |
Działa dla wszystkich zadań. Zadania potoku mają konfigurowalny domyślny magazyn danych potoku. |
${{name}} |
Nazwa zadania. W przypadku potoków jest to nazwa zadania kroku, a nie nazwa zadania potoku. | Działa dla wszystkich zadań |
${{output_name}} |
Nazwa danych wyjściowych zadania | Działa dla wszystkich zadań |
Jeśli na przykład azureml://datastores/${{default_datastore}}/paths/${{name}}/${{output_name}}
jest używana jako ścieżka wyjściowa, w czasie wykonywania jest rozpoznawana jako ścieżka azureml://datastores/workspaceblobstore/paths/<job-name>/model_path
.
Następne kroki
Aby uzyskać więcej informacji na temat tych wyrażeń, zobacz następujące artykuły i przykłady:
- Składnia YAML podstawowego interfejsu wiersza polecenia w wersji 2
- Dostrajanie hiperparametrów modelu
- Samouczek: potoki uczenia maszynowego z zestawem Python SDK w wersji 2
- Tworzenie i uruchamianie potoków uczenia maszynowego opartego na składnikach (CLI)
- Przykład: notes przewidywania wsadowego Iris
- Przykład: plik YAML potoku