Changelog
User-visible changes to ScaiAtlas and the Python SDK.
Python SDK#
0.1.2#
Pagination & filter alignment with the registry API.
- Pagination now works. List and search calls send
page_size(the server's parameter) and parse the server's{data, page, page_size, total, total_pages}envelope. Previously the client sentper_pageand looked foritems/pagination, so paginated calls silently returned empty pages against the real API. search.models(...)takes a singletagfilter plussort(updated|created|name|downloads, defaultupdated) andorder(asc|desc, defaultdesc).- Removed the unused
statusfilter fromversions.list(...)(the API doesn't support it). - The Python surface is unchanged —
per_pagekwargs,PaginatedResponse.items, and.pagination(has_next/has_prev) all behave as before; only the wire protocol and response parsing were corrected.
0.1.1#
Schema-alignment release — brings the SDK in line with the live registry API. This is a breaking change relative to 0.1.0 for the affected calls.
Namespaces
Namespacenow exposesvisibility(public|tenant|private) andowner_tenant_id; the oldtypeandowner_idfields are gone.namespaces.create(...)takesvisibility=instead oftype=.NamespaceMemberrestructured to{id, user, group, role, granted_by, granted_at}withUserSummary/GroupSummary.search.namespaces(...)no longer takes atypefilter.
Models
typeis now a required keyword onmodels.create(...)and spans the full 11-value model-type vocabulary (llm,embedding,image_generation,stt,tts,multimodal,vision_language,audio_language,video_language,image_to_image,audio_to_audio).- Added
license,capabilities,modalities, andmetadata; download counter is nowdownload_count. - Models no longer carry a
visibilityfield (visibility lives on the namespace);models.list/search.modelsdropped thevisibilityfilter.
Versions
versions.create(...)/versions.update(...)now userelease_notesandrequirements(plusquantization,files) instead ofdescription/metadata.Versionexposesmodel_id, semver parts,checksum_sha256, andpublished_at;VersionFilegainedname/sha256aliases.
Variants
variants.create(...)now takesvariant_name=and a constrainedformat(safetensors|pytorch|gguf|onnx|other);description/metadataremoved.Variantexposesversion_id,is_primary, andstatus.
Uploads
upload.version(...)acceptsrelease_notes/requirementsin place ofdescription/metadata.
Download the artifacts from the ScaiLabs downloads page.
0.1.0#
Initial release: sync + async clients, namespace/model/version/variant resources, resumable upload/download, search, and admin operations.