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.2.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.2-py3-none-any.whl (20.0 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: octoarms_sdk-0.2.2.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.2.tar.gz
Algorithm Hash digest
SHA256 baed8ff524f75348faad578708ca6ce0ad397240c1d749030c310fbca81e5dce
MD5 84f2a0e47e4bf155c6b8316e57bb9578
BLAKE2b-256 afa793427bc7c381beea31543a53429fbcb36104f8e9a2d34a0450a838aebd6a

See more details on using hashes here.

File details

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

File metadata

  • Download URL: octoarms_sdk-0.2.2-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.2-py3-none-any.whl
Algorithm Hash digest
SHA256 a77a7d2dd241595ae3d1f212eef3b9b06591554165ba859514ada4035525f9e8
MD5 34ac87b1150da38c4b44a65f0e461c4e
BLAKE2b-256 7d4b4da9dc5b6476551474ccd6852800def77d9cd8168b8544206b23afe74137

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