Skip to main content

apipod_registry

Parse, hold and persist AIServices. This package is the one-stop tool for managing AI service information: it turns raw specs into typed contracts and keeps services, models and categories in one registry.

Built on socaity-schemas: AIService is the aggregate root, each Deployment carries a ServiceContract (the machine-readable interface parsed from OpenAPI or Cog).

What it does

  • parse_contract(spec): OpenAPI, APIPod and Cog specs become a ServiceContract with typed endpoints, parameters, streaming flags and a specification_hash.
  • materialize_contract(spec, provider): parse_contract plus provider wire behavior. Replicate wraps every cog model in its predictions job API, so contracts of replicate deployments get has_job_queue=True here, not in the parsers.
  • parse_address(url): URLs become typed ServiceAddress objects (socaity, RunPod, Replicate, generic).
  • create_service(contract, address): the minimal AIService, one deployment, ready to register.
  • Registry: in-memory catalog with id/name lookups for services, models and categories. Attach a ServiceStore (like the included FileSystemStore) for persistence; implement the interface to back it with anything else.

Usage

from apipod_registry import parse_contract, create_service, Registry, FileSystemStore

contract = parse_contract(openapi_dict)
service = create_service(contract, address="https://api.socaity.ai/services/v1/abc123")

registry = Registry(service_store=FileSystemStore())
registry.add_service(service)

registry.get_service("abc123")            # by id
registry.get_service("face2face")         # by name
registry.get_endpoint("face2face", "/swap")

Two axes that stay separate by design: contract.specification says how the spec is written (openapi, apipod, cog, cog2), deployment.provider says where it runs (socaity, runpod, replicate, ...). A Cog model hosted on Replicate is specification="cog" and provider="replicate".

MIT-licensed.

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

apipod_registry-0.1.2.tar.gz (60.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

apipod_registry-0.1.2-py3-none-any.whl (53.9 kB view details)

Uploaded Python 3

File details

Details for the file apipod_registry-0.1.2.tar.gz.

File metadata

  • Download URL: apipod_registry-0.1.2.tar.gz
  • Upload date:
  • Size: 60.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/7.0.0 CPython/3.12.13

File hashes

Hashes for apipod_registry-0.1.2.tar.gz
Algorithm Hash digest
SHA256 592d7adfd7132328c44881b73356d93181700b77bfc1859d5d3636dbbbfed283
MD5 de9e8c19293d2f53809c811940863d78
BLAKE2b-256 3b3b0faa2a0587d717e9f7d2356d8408d295a70449a56b4ab12f28f42167b057

See more details on using hashes here.

File details

Details for the file apipod_registry-0.1.2-py3-none-any.whl.

File metadata

File hashes

Hashes for apipod_registry-0.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 61fbbc19f7062b21dbfc77497d7c92567660e3a237e055aad3619f4b6dbb4cad
MD5 448dcfd259522880bcd88881f238cb82
BLAKE2b-256 57f443f556a5976cbd2b94d6c8c59401da8a9fe0d19c340147981b080098d6bb

See more details on using hashes here.

Release history Release notifications | RSS feed

0.1.7

2 files

0.1.6

2 files

0.1.5

2 files

0.1.4

2 files

0.1.3

2 files

This release

0.1.2 This release

2 files

0.1.1

2 files

0.0.7

2 files

0.0.6

2 files

0.0.5

2 files

0.0.4

2 files

0.0.3

2 files

0.0.2

2 files

0.0.1

2 files

0.0.0

2 files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page