ai2_kit.core.script module#
- class ai2_kit.core.script.BashScript(*, template: Optional[BashTemplate], steps: Sequence[Union[str, BashStep]])[source]#
Bases:
BaseModel
- model_computed_fields: ClassVar[dict[str, ComputedFieldInfo]] = {}#
A dictionary of computed field names and their corresponding ComputedFieldInfo objects.
- model_config: ClassVar[ConfigDict] = {'extra': 'forbid'}#
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- model_fields: ClassVar[dict[str, FieldInfo]] = {'steps': FieldInfo(annotation=Sequence[Union[str, ai2_kit.core.script.BashStep]], required=True), 'template': FieldInfo(annotation=Union[BashTemplate, NoneType], required=True)}#
Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].
This replaces Model.__fields__ from Pydantic V1.
- template: Optional[BashTemplate]#
- class ai2_kit.core.script.BashStep(*, cmd: Union[str, List[str]], cwd: Optional[str] = None, checkpoint: Optional[str] = None, exit_on_error: bool = True)[source]#
Bases:
BaseModel
- checkpoint: Optional[str]#
- cmd: Union[str, List[str]]#
- cwd: Optional[str]#
- exit_on_error: bool#
- model_computed_fields: ClassVar[dict[str, ComputedFieldInfo]] = {}#
A dictionary of computed field names and their corresponding ComputedFieldInfo objects.
- model_config: ClassVar[ConfigDict] = {'extra': 'forbid'}#
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- model_fields: ClassVar[dict[str, FieldInfo]] = {'checkpoint': FieldInfo(annotation=Union[str, NoneType], required=False, default=None), 'cmd': FieldInfo(annotation=Union[str, List[str]], required=True), 'cwd': FieldInfo(annotation=Union[str, NoneType], required=False, default=None), 'exit_on_error': FieldInfo(annotation=bool, required=False, default=True)}#
Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].
This replaces Model.__fields__ from Pydantic V1.
- class ai2_kit.core.script.BashTemplate(*, shebang: str = '#!/bin/bash', header: str = '', setup: str = '', teardown: str = '')[source]#
Bases:
BaseModel
- header: str#
- model_computed_fields: ClassVar[dict[str, ComputedFieldInfo]] = {}#
A dictionary of computed field names and their corresponding ComputedFieldInfo objects.
- model_config: ClassVar[ConfigDict] = {'extra': 'forbid'}#
Configuration for the model, should be a dictionary conforming to [ConfigDict][pydantic.config.ConfigDict].
- model_fields: ClassVar[dict[str, FieldInfo]] = {'header': FieldInfo(annotation=str, required=False, default=''), 'setup': FieldInfo(annotation=str, required=False, default=''), 'shebang': FieldInfo(annotation=str, required=False, default='#!/bin/bash'), 'teardown': FieldInfo(annotation=str, required=False, default='')}#
Metadata about the fields defined on the model, mapping of field names to [FieldInfo][pydantic.fields.FieldInfo].
This replaces Model.__fields__ from Pydantic V1.
- setup: str#
- shebang: str#
- teardown: str#