What's New in Version 1.34.0
Standalone properties now deploy as their own Snowflake tables, plus model deployment reliability fixes.
How to install this version
Review the changes below before installing. To install this version, activate a compatible Python virtual environment and run:
python -m pip install "relationalai==1.34.0"For the latest installation instructions, see Start building with PyRel.
New Features and Enhancements
Section titled “New Features and Enhancements”- When you deploy a model to Snowflake, a standalone property now deploys as its own table instead of a column on the concept’s table. A standalone property is one you write as
brand = model.Property(...)rather than attaching it to a concept withCar.brand = model.Property(...). If your deployed model has downstream consumers, you will need to update any that expect properties as columns.
Bug Fixes
Section titled “Bug Fixes”-
Deploying a model no longer overwrites or deletes another model’s objects when both models deploy into the same Snowflake schema with the same
deployment.managed_tag. -
Some models that previously failed to deploy to Snowflake with
SQL compilation error: Unsupported subquery type cannot be evaluatednow deploy successfully. -
When you deploy a model to Snowflake, the
geometric_meanaggregate over data that can include negative numbers no longer fails and now returnsNaNfor those cases. -
An aggregate grouped per entity with
.per()in a model deployed to Snowflake now returns each entity’s own value instead of a whole-table total or a count that is too high. A few cases that cannot be computed correctly now raise a clearLookupBoundAfterAggregateerror instead of a silent wrong number. -
Calling
as_bool()on awhereclause with several conditions now returns oneTrueorFalseper row instead of duplicated rows or missingFalserows. -
Improved performance for deploying a model to Snowflake when it contains a concept whose properties are built up across many definitions.
-
If you deploy a model from a Snowflake notebook using
get_active_session(), it no longer fails with a falseDeploy lease ... was taken over by another deployerror. -
After a branch creation fails, you can now tear down the incomplete branch with the
rai models teardown --forcecommand and retry. -
If a
Problemreads anotherProblem’s results before that Problem has been solved, solving or deploying it now raises a clear error instead of returning a misleadingOPTIMALresult. Solve or configure theProblemit reads from first. -
If you query a model inside a Snowflake stored procedure, it no longer fails at startup with
ImportError: cannot import name '_ExtendedAttributes'.