Booz Allen's lean manufacturing approach for holistically designing, developing and fielding AI solutions across the engineering lifecycle from data processing to model building, tuning, and training to secure operational deployment
aissemble is on the legacy version pydantic (1.10.x). We should move up to 2.7.x to gain new features and improvements that are not being added to the legacy codebase at this time.
This is especially doable since there is an incremental approach we can use:
Pydantic V1.10 vs. V2
Pydantic V2 is a ground-up rewrite that offers many new features, performance improvements, and some breaking changes
compared to Pydantic V1.
If you're using Pydantic V1 you may want to look at the pydantic V1.10 Documentation or, 1.10.X
fixes git branch. Pydantic V2 also ships with the latest version of
Pydantic V1 built in so that you can incrementally upgrade your code base and projects: from pydantic import v1 as pydantic_v1.
Definition of Done (DOD):
Update pydantic 1.10.x to 2.8.x or above.
Fix any breaking changes due to upgrade of pydantic to new versions (migration guide is available to help with fixing version changes)
Ensure complete aiSSEMBLE build is succeed.
Run integration test.
Run archtype test.
Testing Steps:
Make sure poetry correctly points to pydantic latest version
Git into feature branch.
cd into one of modules listed in the comment
Ex)
cd <your path to github>/aissemble/Aissemble-extension-model-training-api-sagemaker
run this command to verify pydantic is 2.8.x or above
poetry show
Make sure aiSSEMBLE can be built without any issues.
use mvn clean install to verify build success
Run Integrated test of aiSSEMBLE using following command
mvn clean install -P integration-test
Run Archetype test of aiSSEMBLE using following command:
mvn clean install -P archetype-test
build downstream project one with pyspark implementaion and ml pipeline and test 1.7 to 1.8 to verify there is no breaking change.
build branch of aissemble
mvn clean install
create downstream project using 1.7.0 of aiSSEMBLE artifact id, giturl and project can be any name of your choosing for test.
This will generate code, go into generate code and add the following pipeline to {downstreamproject}/src/main/resources/pipelines/MlPipelineInference.json
Description
aissemble is on the legacy version pydantic (
1.10.x
). We should move up to2.7.x
to gain new features and improvements that are not being added to the legacy codebase at this time.This is especially doable since there is an incremental approach we can use:
Definition of Done (DOD):
Update pydantic 1.10.x to 2.8.x or above. Fix any breaking changes due to upgrade of pydantic to new versions (migration guide is available to help with fixing version changes) Ensure complete aiSSEMBLE build is succeed. Run integration test. Run archtype test.
Testing Steps:
cd <your path to github>/aissemble/Aissemble-extension-model-training-api-sagemaker
poetry show
mvn clean instal
l to verify build successmvn clean install -P integration-test
mvn clean install -P archetype-test
mvn clean install
mvn clean install