boozallen / aissemble

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
Other
32 stars 8 forks source link

Feature: Update to Pydantic 2.7.x #161

Closed d-ryan-ashcraft closed 1 month ago

d-ryan-ashcraft commented 2 months ago

Description

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:

  1. Make sure poetry correctly points to pydantic latest version
{
    "name": "MlPipelineInference",
    "package": "com.example",
    "type": {
      "name": "machine-learning",
      "implementation": "machine-learning-mlflow",
      "versioning": {
        "enabled": false
      }
    },
    "steps": [
      {
        "name": "PipelineInferenceStep",
        "type": "inference",
        "inbound": {
          "type": "messaging",
          "channelName": "train"
        }
      }
    ]
  }
jaebchoi commented 1 month ago

Completed DoD with @jacksondelametter @J-Clingerman @habibimoiz

jaebchoi commented 1 month ago

Completed OTS with @aaron-gary

chang-annie commented 1 month ago

closing ticket as done! all test steps are passing