diff --git a/aixplain/factories/model_factory/__init__.py b/aixplain/factories/model_factory/__init__.py index ca035825..4a592ab9 100644 --- a/aixplain/factories/model_factory/__init__.py +++ b/aixplain/factories/model_factory/__init__.py @@ -71,6 +71,7 @@ def create_utility_model( api_key=config.TEAM_API_KEY, output_examples=output_examples, ) + utility_model.validate() payload = utility_model.to_dict() url = urljoin(cls.backend_url, "sdk/utilities") headers = {"x-api-key": f"{config.TEAM_API_KEY}", "Content-Type": "application/json"} diff --git a/aixplain/modules/model/utility_model.py b/aixplain/modules/model/utility_model.py index 1bc40f67..a9fe514e 100644 --- a/aixplain/modules/model/utility_model.py +++ b/aixplain/modules/model/utility_model.py @@ -116,7 +116,6 @@ def __init__( self.code = code self.inputs = inputs self.output_examples = output_examples - self.validate() def validate(self): self.code, inputs, description = parse_code(self.code) @@ -128,7 +127,6 @@ def validate(self): assert self.name and self.name.strip() != "", "Name is required" assert self.description and self.description.strip() != "", "Description is required" assert self.code and self.code.strip() != "", "Code is required" - assert self.output_examples and self.output_examples.strip() != "", "Output description is required" def to_dict(self): return { diff --git a/tests/unit/utility_test.py b/tests/unit/utility_test.py index 89803cac..265e31b3 100644 --- a/tests/unit/utility_test.py +++ b/tests/unit/utility_test.py @@ -65,7 +65,7 @@ def test_utility_model_to_dict(): id="123", name="utility_model_test", description="utility_model_test", - code="def main(originCode: str)", + code="utility_model_test", output_examples="output_description", inputs=[UtilityModelInput(name="originCode", description="originCode", type=DataType.TEXT)], function=Function.UTILITIES,