Skip to main content

Python collector SDK for Chainbase task runtime

Project description

octoarms-sdk

Python SDK for task collectors running on the Chainbase task platform.

Install

pip install octoarms-sdk

Publish to PyPI

Local build and check

python -m pip install --upgrade build twine
python -m build
twine check dist/*

Manual upload

twine upload dist/*

GitHub Actions auto publish

  1. Add repository secret PYPI_API_TOKEN (value: your PyPI API token).
  2. Bump version in python/pyproject.toml.
  3. Create and push tag with py-v* format, for example:
git tag py-v0.1.1
git push origin py-v0.1.1

Usage

from octoarms_sdk import (
    TaskContext,
    build_data_api_upsert_fn,
    build_oss_upload_client,
    build_podcast_extractor_client,
    build_transcript_client,
)

upsert_fn = build_data_api_upsert_fn(
    capability_endpoint="http://chainbase-block-scanner-fetcher-test-svc",
    ephemeral_token="token-abc",
)

ctx = TaskContext(
    run_id="123",
    task_name="demo_task",
    task_version="v0.1.0",
    upsert=upsert_fn,
)

extractor = build_podcast_extractor_client(
    capability_endpoint="http://chainbase-block-scanner-fetcher-test-svc",
    ephemeral_token="token-abc",
)
audio = extractor.extract_audio(
    platform="rss_feed",
    episode_url="https://example.com/episode",
)

oss = build_oss_upload_client(
    capability_endpoint="http://chainbase-block-scanner-fetcher-test-svc",
    ephemeral_token="token-abc",
)
uploaded = oss.upload_object_bytes(
    bucket="media-bucket",
    object_key="podcasts/demo.mp3",
    content=b"audio bytes",
    content_type="audio/mpeg",
)

transcripts = build_transcript_client(
    capability_endpoint="http://chainbase-block-scanner-fetcher-test-svc",
    ephemeral_token="token-abc",
)
job = transcripts.submit_transcript(url=str(uploaded["uri"]), language="en")
transcript = transcripts.wait_transcript(str(job["job_id"]))

Project details


Download files

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

Source Distribution

octoarms_sdk-0.2.1.tar.gz (10.7 kB view details)

Uploaded Source

Built Distribution

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

octoarms_sdk-0.2.1-py3-none-any.whl (20.0 kB view details)

Uploaded Python 3

File details

Details for the file octoarms_sdk-0.2.1.tar.gz.

File metadata

  • Download URL: octoarms_sdk-0.2.1.tar.gz
  • Upload date:
  • Size: 10.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for octoarms_sdk-0.2.1.tar.gz
Algorithm Hash digest
SHA256 8f18035433386fe903a3f04ce80fe0a974d449cf4ade0408ff02c102c80514e6
MD5 ee614fbebe6e33a3fd45086d5520f02c
BLAKE2b-256 e750eddee8b404f0dd5466ce9ad953af29f2ee38eeff1941f7fd8a3faab39868

See more details on using hashes here.

File details

Details for the file octoarms_sdk-0.2.1-py3-none-any.whl.

File metadata

  • Download URL: octoarms_sdk-0.2.1-py3-none-any.whl
  • Upload date:
  • Size: 20.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for octoarms_sdk-0.2.1-py3-none-any.whl
Algorithm Hash digest
SHA256 5ff681d42c7884537bf954d63140a8dac54b982061a55e19d902b740a726d480
MD5 f6a01521b27222b93fa5886b1e133155
BLAKE2b-256 863e578cbecb82a36d379d237db084551221effc27e4327ff957d33dd71f5b00

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page