Command الفصل
الفئة الأساسية لعقدة الأوامر، المستخدمة لاستهلاك إصدار مكون الأمر.
يجب عدم إنشاء مثيل لهذه الفئة مباشرة. بدلا من ذلك، يجب عليك إنشاؤه باستخدام الدالة builder: command().
- توريث
-
azure.ai.ml.entities._builders.base_node.BaseNodeCommandazure.ai.ml.entities._job.pipeline._io.mixin.NodeWithGroupInputMixinCommand
الدالمنشئ
Command(*, component: str | CommandComponent, compute: str | None = None, inputs: Dict[str, Input | str | bool | int | float | Enum] | None = None, outputs: Dict[str, str | Output] | None = None, limits: CommandJobLimits | None = None, identity: ManagedIdentityConfiguration | AmlTokenConfiguration | UserIdentityConfiguration | None = None, distribution: Dict | MpiDistribution | TensorFlowDistribution | PyTorchDistribution | RayDistribution | None = None, environment: Environment | str | None = None, environment_variables: Dict | None = None, resources: JobResourceConfiguration | None = None, services: Dict[str, JobService | JupyterLabJobService | SshJobService | TensorBoardJobService | VsCodeJobService] | None = None, queue_settings: QueueSettings | None = None, **kwargs)
المعلمات
- component
- Union[str, CommandComponent]
معرف أو مثيل مكون الأمر أو الوظيفة التي سيتم تشغيلها للخطوة.
تعيين أسماء الإدخال لإدخال مصادر البيانات المستخدمة في الوظيفة.
تعيين أسماء الإخراج إلى مصادر بيانات الإخراج المستخدمة في الوظيفة.
- limits
- CommandJobLimits
حدود مكون الأمر أو الوظيفة.
- identity
- Optional[Union[ dict[str, str], ManagedIdentityConfiguration, AmlTokenConfiguration, UserIdentityConfiguration]]
الهوية التي ستستخدمها مهمة الأمر أثناء التشغيل على الحساب.
- distribution
- Optional[Union[dict, PyTorchDistribution, MpiDistribution, TensorFlowDistribution, RayDistribution]]
تكوين الوظائف الموزعة.
- environment
- Optional[Union[str, Environment]]
البيئة التي سيتم تشغيل الوظيفة فيها.
قاموس لأسماء وقيم متغيرات البيئة. يتم تعيين متغيرات البيئة هذه على العملية التي يتم فيها تنفيذ البرنامج النصي للمستخدم.
- resources
- Optional[JobResourceConfiguration]
تكوين مورد الحساب للأمر .
- services
- Optional[dict[str, Union[JobService, JupyterLabJobService, SshJobService, TensorBoardJobService, VsCodeJobService]]]
الخدمات التفاعلية للعقدة. هذه معلمة تجريبية، وقد تتغير في أي وقت. يرجى مراجعة https://aka.ms/azuremlexperimental لمزيد من المعلومات.
- queue_settings
- Optional[QueueSettings]
إعدادات قائمة الانتظار للوظيفة.
الأساليب
clear | |
copy | |
dump |
تفريغ محتوى المهمة في ملف بتنسيق YAML. |
fromkeys |
أنشئ قاموسا جديدا بمفاتيح من قابلة للتكدير وقيم معينة إلى قيمة. |
get |
إرجاع قيمة المفتاح إذا كان المفتاح في القاموس، وإلا افتراضيا. |
items | |
keys | |
pop |
إذا لم يتم العثور على المفتاح، فسترجع الإعداد الافتراضي إذا تم تعيينه؛ وإلا، قم برفع KeyError. |
popitem |
قم بإزالة وإرجاع زوج (مفتاح، قيمة) كمجموعتين. يتم إرجاع الأزواج بترتيب LIFO (آخر مرة، خروج أول). رفع KeyError إذا كانت الإملاء فارغة. |
set_limits |
تعيين حدود للأمر. |
set_queue_settings |
تعيين QueueSettings للوظيفة. |
set_resources |
تعيين الموارد ل Command. |
setdefault |
إدراج مفتاح بقيمة افتراضية إذا لم يكن المفتاح في القاموس. إرجاع قيمة المفتاح إذا كان المفتاح في القاموس، وإلا افتراضيا. |
sweep |
يحول الأمر إلى عقدة مسح مع إعداد تشغيل مسح إضافي. سيتم استخدام مكون الأمر في عقدة الأمر الحالية كمكون تجريبي له. يمكن أن تجتاح عقدة الأوامر عدة مرات، وستشارك عقدة المسح التي تم إنشاؤها نفس المكون التجريبي. |
update |
إذا كان E موجودا ولديه أسلوب .keys()، فإن له: ل k في E: D[k] = E[k] إذا كان E موجودا ويفتقر إلى أسلوب .keys()، فإن يفعل: ل k، v في E: D[k] = v في كلتا الحالتين، يتبع ذلك: ل k في F: D[k] = F[k] |
values |
clear
clear() -> None. Remove all items from D.
copy
copy() -> a shallow copy of D
dump
تفريغ محتوى المهمة في ملف بتنسيق YAML.
dump(dest: str | PathLike | IO, **kwargs) -> None
المعلمات
المسار المحلي أو دفق الملف لكتابة محتوى YAML إليه. إذا كان dest مسار ملف، فسيتم إنشاء ملف جديد. إذا كان dest ملفا مفتوحا، فستتم كتابة الملف مباشرة.
- kwargs
- dict
وسيطات إضافية لتمريرها إلى مسلسل YAML.
استثناءات
يرفع إذا كان dest هو مسار ملف والملف موجود بالفعل.
يرفع إذا كان dest ملفا مفتوحا وكان الملف غير قابل للكتابة.
fromkeys
أنشئ قاموسا جديدا بمفاتيح من قابلة للتكدير وقيم معينة إلى قيمة.
fromkeys(value=None, /)
المعلمات
- type
- iterable
- value
get
إرجاع قيمة المفتاح إذا كان المفتاح في القاموس، وإلا افتراضيا.
get(key, default=None, /)
المعلمات
- key
- default
items
items() -> a set-like object providing a view on D's items
keys
keys() -> a set-like object providing a view on D's keys
pop
إذا لم يتم العثور على المفتاح، فسترجع الإعداد الافتراضي إذا تم تعيينه؛ وإلا، قم برفع KeyError.
pop(k, [d]) -> v, remove specified key and return the corresponding value.
popitem
قم بإزالة وإرجاع زوج (مفتاح، قيمة) كمجموعتين.
يتم إرجاع الأزواج بترتيب LIFO (آخر مرة، خروج أول). رفع KeyError إذا كانت الإملاء فارغة.
popitem()
set_limits
تعيين حدود للأمر.
set_limits(*, timeout: int, **kwargs) -> None
المعلمات
- timeout
- int
مهلة الوظيفة بالثوان.
أمثلة
تعيين حد مهلة 10 ثوان على أمر.
from azure.ai.ml import Input, Output, command
command_node = command(
environment="AzureML-sklearn-1.0-ubuntu20.04-py38-cpu:33",
command='echo "hello world"',
distribution={"type": "Pytorch", "process_count_per_instance": 2},
inputs={
"training_data": Input(type="uri_folder"),
"max_epochs": 20,
"learning_rate": 1.8,
"learning_rate_schedule": "time-based",
},
outputs={"model_output": Output(type="uri_folder")},
)
command_node.set_limits(timeout=10)
set_queue_settings
تعيين QueueSettings للوظيفة.
set_queue_settings(*, job_tier: str | None = None, priority: str | None = None) -> None
المعلمات
مستوى الوظيفة. القيم المقبولة هي "Spot" أو "Basic" أو "Standard" أو "Premium".
أمثلة
تكوين إعدادات قائمة الانتظار على أمر.
from azure.ai.ml import Input, Output, command
command_node = command(
environment="AzureML-sklearn-1.0-ubuntu20.04-py38-cpu:33",
command='echo "hello world"',
distribution={"type": "Pytorch", "process_count_per_instance": 2},
inputs={
"training_data": Input(type="uri_folder"),
"max_epochs": 20,
"learning_rate": 1.8,
"learning_rate_schedule": "time-based",
},
outputs={"model_output": Output(type="uri_folder")},
)
command_node.set_queue_settings(job_tier="standard", priority="medium")
set_resources
تعيين الموارد ل Command.
set_resources(*, instance_type: str | List[str] | None = None, instance_count: int | None = None, locations: List[str] | None = None, properties: Dict | None = None, docker_args: str | None = None, shm_size: str | None = None, **kwargs) -> None
المعلمات
نوع مثيل الحساب لتشغيل المهمة عليه. إذا لم يتم تحديدها، فسيتم تشغيل المهمة على هدف الحساب الافتراضي.
عدد المثيلات لتشغيل المهمة عليها. إذا لم يتم تحديدها، فسيتم تشغيل المهمة على مثيل واحد.
قائمة المواقع التي سيتم تشغيل الوظيفة فيها. إذا لم يتم تحديدها، فسيتم تشغيل المهمة على هدف الحساب الافتراضي.
حجم كتلة الذاكرة المشتركة لحاوية docker. يجب أن يكون هذا بتنسيق (رقم)(وحدة) حيث يجب أن يكون الرقم أكبر من 0 ويمكن أن تكون الوحدة واحدة من b(بايت) أو k(كيلوبايت) أو m(ميغابايت) أو g(غيغابايت).
أمثلة
تعيين الموارد على أمر.
from azure.ai.ml import Input, Output, command
command_node = command(
environment="AzureML-sklearn-1.0-ubuntu20.04-py38-cpu:33",
command='echo "hello world"',
distribution={"type": "Pytorch", "process_count_per_instance": 2},
inputs={
"training_data": Input(type="uri_folder"),
"max_epochs": 20,
"learning_rate": 1.8,
"learning_rate_schedule": "time-based",
},
outputs={"model_output": Output(type="uri_folder")},
)
command_node.set_resources(
instance_count=1,
instance_type="STANDARD_D2_v2",
properties={"key": "new_val"},
shm_size="3g",
)
setdefault
إدراج مفتاح بقيمة افتراضية إذا لم يكن المفتاح في القاموس.
إرجاع قيمة المفتاح إذا كان المفتاح في القاموس، وإلا افتراضيا.
setdefault(key, default=None, /)
المعلمات
- key
- default
sweep
يحول الأمر إلى عقدة مسح مع إعداد تشغيل مسح إضافي. سيتم استخدام مكون الأمر في عقدة الأمر الحالية كمكون تجريبي له. يمكن أن تجتاح عقدة الأوامر عدة مرات، وستشارك عقدة المسح التي تم إنشاؤها نفس المكون التجريبي.
sweep(*, primary_metric: str, goal: str, sampling_algorithm: str = 'random', compute: str | None = None, max_concurrent_trials: int | None = None, max_total_trials: int | None = None, timeout: int | None = None, trial_timeout: int | None = None, early_termination_policy: EarlyTerminationPolicy | str | None = None, search_space: Dict[str, Choice | LogNormal | LogUniform | Normal | QLogNormal | QLogUniform | QNormal | QUniform | Randint | Uniform] | None = None, identity: ManagedIdentityConfiguration | AmlTokenConfiguration | UserIdentityConfiguration | None = None, queue_settings: QueueSettings | None = None, job_tier: str | None = None, priority: str | None = None) -> Sweep
المعلمات
- primary_metric
- str
المقياس الأساسي لهدف المسح - على سبيل المثال AUC (المنطقة تحت المنحنى). يجب تسجيل المقياس أثناء تشغيل المكون التجريبي.
- goal
- str
الهدف من هدف المسح. القيم المقبولة هي "تصغير" أو "تكبير".
- sampling_algorithm
- str
خوارزمية أخذ العينات لاستخدامها داخل مساحة البحث. القيم المقبولة هي "عشوائي" أو "شبكة" أو "بايزي". الإعدادات الافتراضية إلى "عشوائي".
الحساب الهدف لتشغيل العقدة عليه. إذا لم يتم تحديده، فسيتم استخدام حساب العقدة الحالية.
الحد الأقصى لعدد إجمالي الإصدارات التجريبية التي سيتم تشغيلها. ستقوم هذه القيمة بالكتابة فوق القيمة في CommandJob.limits إذا تم تحديدها.
- early_termination_policy
- Optional[Union[BanditPolicy, TruncationSelectionPolicy, MedianStoppingPolicy, str]]
نهج الإنهاء المبكر لعقدة المسح. القيم المقبولة هي "اللصوص" أو "median_stopping" أو "truncation_selection". الإعدادات الافتراضية إلى بلا.
- identity
- Optional[Union[ ManagedIdentityConfiguration, AmlTokenConfiguration, UserIdentityConfiguration]]
الهوية التي ستستخدمها الوظيفة أثناء التشغيل على الحساب.
- queue_settings
- Optional[QueueSettings]
إعدادات قائمة الانتظار للوظيفة.
التجريبيه مستوى الوظيفة. القيم المقبولة هي "Spot" أو "Basic" أو "Standard" أو "Premium".
المرتجعات
عقدة كنس مع المكون من عقدة الأمر الحالية كمكون تجريبي لها.
نوع الإرجاع
أمثلة
إنشاء عقدة مسح من مهمة أمر.
from azure.ai.ml import command
job = command(
inputs=dict(kernel="linear", penalty=1.0),
compute=cpu_cluster,
environment=f"{job_env.name}:{job_env.version}",
code="./scripts",
command="python scripts/train.py --kernel $kernel --penalty $penalty",
experiment_name="sklearn-iris-flowers",
)
# we can reuse an existing Command Job as a function that we can apply inputs to for the sweep configurations
from azure.ai.ml.sweep import Uniform
job_for_sweep = job(
kernel=Uniform(min_value=0.0005, max_value=0.005),
penalty=Uniform(min_value=0.9, max_value=0.99),
)
from azure.ai.ml.sweep import BanditPolicy
sweep_job = job_for_sweep.sweep(
sampling_algorithm="random",
primary_metric="best_val_acc",
goal="Maximize",
max_total_trials=8,
max_concurrent_trials=4,
early_termination_policy=BanditPolicy(slack_factor=0.15, evaluation_interval=1, delay_evaluation=10),
)
update
إذا كان E موجودا ولديه أسلوب .keys()، فإن له: ل k في E: D[k] = E[k] إذا كان E موجودا ويفتقر إلى أسلوب .keys()، فإن يفعل: ل k، v في E: D[k] = v في كلتا الحالتين، يتبع ذلك: ل k في F: D[k] = F[k]
update([E], **F) -> None. Update D from dict/iterable E and F.
values
values() -> an object providing a view on D's values
السمات
base_path
code
command
component
معرف أو مثيل مكون الأمر أو الوظيفة التي سيتم تشغيلها للخطوة.
المرتجعات
معرف أو مثيل مكون الأمر أو الوظيفة التي سيتم تشغيلها للخطوة.
نوع الإرجاع
creation_context
distribution
تكوين مكون الأمر الموزع أو الوظيفة.
المرتجعات
تكوين الوظائف الموزعة.
نوع الإرجاع
id
معرف المورد.
المرتجعات
المعرف العمومي للمورد، معرف Azure Resource Manager (ARM).
نوع الإرجاع
identity
الهوية التي ستستخدمها الوظيفة أثناء التشغيل على الحساب.
المرتجعات
الهوية التي ستستخدمها الوظيفة أثناء التشغيل على الحساب.
نوع الإرجاع
inputs
احصل على مدخلات العنصر.
المرتجعات
قاموس يحتوي على مدخلات العنصر.
نوع الإرجاع
log_files
ملفات إخراج الوظيفة.
المرتجعات
قاموس أسماء السجلات وعناوين URL.
نوع الإرجاع
name
outputs
الحصول على مخرجات الكائن.
المرتجعات
قاموس يحتوي على مخرجات العنصر.
نوع الإرجاع
parameters
معلمات MLFlow التي سيتم تسجيلها أثناء المهمة.
المرتجعات
معلمات MLFlow التي سيتم تسجيلها أثناء المهمة.
نوع الإرجاع
queue_settings
إعدادات قائمة الانتظار لمكون الأمر أو الوظيفة.
المرتجعات
إعدادات قائمة الانتظار لمكون الأمر أو الوظيفة.
نوع الإرجاع
resources
services
الخدمات التفاعلية للعقدة.
هذه معلمة تجريبية، وقد تتغير في أي وقت. يرجى مراجعة https://aka.ms/azuremlexperimental لمزيد من المعلومات.
نوع الإرجاع
status
حالة الوظيفة.
تتضمن القيم الشائعة التي تم إرجاعها "قيد التشغيل" و"مكتمل" و"فشل". جميع القيم المحتملة هي:
NotStarted - هذه حالة مؤقتة تكون فيها كائنات التشغيل من جانب العميل قبل إرسال السحابة.
البدء - بدأ التشغيل في المعالجة في السحابة. لدى المتصل معرف تشغيل في هذه المرحلة.
التوفير - يتم إنشاء حساب عند الطلب لتقديم وظيفة معينة.
التحضير - يتم إعداد بيئة التشغيل وهي في إحدى مرحلتين:
بناء صورة Docker
إعداد بيئة conda
في قائمة الانتظار - يتم وضع المهمة في قائمة الانتظار على هدف الحساب. على سبيل المثال، في BatchAI، تكون المهمة في حالة قائمة الانتظار
أثناء انتظار أن تكون جميع العقد المطلوبة جاهزة.
قيد التشغيل - بدأت المهمة في التشغيل على هدف الحساب.
إنهاء - اكتمل تنفيذ التعليمات البرمجية للمستخدم، والتشغيل في مراحل ما بعد المعالجة.
CancelRequested - تم طلب الإلغاء للوظيفة.
مكتمل - اكتمل التشغيل بنجاح. يتضمن ذلك كلا من تنفيذ التعليمات البرمجية للمستخدم وتشغيله
مراحل ما بعد المعالجة.
فشل - فشل التشغيل. عادة ما توفر الخاصية Error أثناء التشغيل تفاصيل حول السبب.
تم الإلغاء - يتبع طلب إلغاء ويشير إلى أن التشغيل قد تم إلغاؤه بنجاح الآن.
NotResponding - بالنسبة إلى عمليات التشغيل التي تم تمكين Heartbeats فيها، لم يتم إرسال رسالة كشف أخطاء الاتصال مؤخرا.
المرتجعات
حالة الوظيفة.
نوع الإرجاع
studio_url
نقطة نهاية استوديو التعلم الآلي من Microsoft Azure.
المرتجعات
عنوان URL لصفحة تفاصيل الوظيفة.
نوع الإرجاع
type
Azure SDK for Python
الملاحظات
https://aka.ms/ContentUserFeedback.
قريبًا: خلال عام 2024، سنتخلص تدريجيًا من GitHub Issues بوصفها آلية إرسال ملاحظات للمحتوى ونستبدلها بنظام ملاحظات جديد. لمزيد من المعلومات، راجعإرسال الملاحظات وعرضها المتعلقة بـ