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.7.tar.gz (61.4 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.7-py3-none-any.whl (54.8 kB view details)

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for apipod_registry-0.1.7.tar.gz
Algorithm Hash digest
SHA256 200208c2cd9a81f061296ff70b87fe2b6916fa4c383b1291c2fc479b903a04a3
MD5 491f391b876ef5e0f0ca9de770a557fe
BLAKE2b-256 86f696351cf37618fe6494146a9b51083c680817ebecc74899a636a234e9f3e3

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for apipod_registry-0.1.7-py3-none-any.whl
Algorithm Hash digest
SHA256 6ccab8c7702c32db5ff2f9dcbdc4ef4c7d20cdfa4ef3bdb1d0d334af88116620
MD5 f44f0a1025f3c85f924acdcfa0977628
BLAKE2b-256 b41ca9c933d5439cbee7bd7e24ad6f4a614a7f1864a56db0a5e6820ccac46d96

See more details on using hashes here.

Release history Release notifications | RSS feed

This release

0.1.7 This release

2 files

0.1.6

2 files

0.1.5

2 files

0.1.4

2 files

0.1.3

2 files

0.1.2

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