Migrate to Kumo Relational Client 1.0
Kumo Relational Client 1.0 renames the client, engine, connectors, and model identifier. It also removes the tabular model surface and the public adapter registry.
Update package names
Install the supported relational workflow with:
The client, connectors, and engine are released together and share version 1.0.0. Keep their versions aligned when pinning the distributions separately.
Update imports and the client class
Use kumo_relational_client.relational as the supported graph interface. Standard applications should not import or initialize kumo_relational_engine directly.
Update the model identifier
The only accepted model identifier is kumo-relational:
The identifiers tabicl, kumo-rfm, nemotron-relational, and nemotron-relational-v1 are not aliases and are rejected. Calls through client.relational(graph) select the correct identifier automatically.
Remove registry-based integration code
Version 1.0 removes ModelAdapter, AdapterRegistry, the registry= constructor argument, and client registration methods. Construct RelationalClient without a registry and run inference through the relational model handle.
The tabular client surface and client.tabular() are also removed. Version 1.0 supports Kumo Relational only, and client.models() returns:
Update error handling
Catch client-boundary failures through RelationalError and branch on its stable code:
Package-specific error roots are kumo_relational_engine.KumoRelationalError and kumo_connectors.ConnectorError. Connection failures such as authentication, timeout, and unreachable-endpoint failures are translated to the RelationalError hierarchy when they cross the client boundary.
Review behavior changes
Before upgrading production workflows, account for the following changes:
- Multiclass
CLASSvalues preserve the target column’s data type instead of always becoming strings. - Unknown
inference_configkeys are rejected instead of silently dropped. edges=[]means no relationships and suppresses relationship inference; useedges=Noneto allow declared or inferred relationships.RelationalClient(max_retries=...)also controls transient retries on the relational transport.- Authenticated non-local endpoints must use HTTPS.
- A closed
RelationalClientcannot be reused.
After updating, run a representative prediction for each task type and verify the task-dependent result shapes described in Prediction Results.