Skip to main content

Getting Started

Installation

pip install capo-comprehend

Usage

from capo_comprehend import AsyncComprehendClient


async def main():
    async with AsyncComprehendClient() as comprehend:
        # Example: call the batch_detect_dominant_language operation
        response = await comprehend.batch_detect_dominant_language()
        print(response["result_list"])

Pagination

Some operations in this SDK support pagination. If the operation supports pagination it will have an iter_ prefixed method that returns an async iterator.

from capo_comprehend import AsyncComprehendClient


async def main():
    async with AsyncComprehendClient() as comprehend:
        # Example: paginate over list_datasets
        async for item in comprehend.iter_list_datasets():
            print(item)

Error Handling

The SDK raises exceptions for errors returned by the API. Catch them to handle failures gracefully.

from capo_comprehend import AsyncComprehendClient
from capo_comprehend.error import BatchSizeLimitExceededException


async def main():
    async with AsyncComprehendClient() as comprehend:
        try:
            await comprehend.batch_detect_dominant_language()
        except BatchSizeLimitExceededException as e:
            print(f"Error: {e}")
            print(e.data)  # additional error data

Retrying

The SDK retries failed operations automatically. Retry behaviour follows the Smithy specification: errors are retried based on their is_retryable and is_throttling_error attributes. Throttling errors use a longer base delay. Network-level failures (connection errors and timeouts) are also retried. Non-retryable errors, such as client errors without the @retryable trait, are raised immediately without further attempts.

The number of attempts defaults to 3 and can be changed at the client level via retry_max_attempts, or per call via config_overrides.

from capo_comprehend import AsyncComprehendClient


async def main():
    async with AsyncComprehendClient() as comprehend:
        # Default: 3 attempts for every operation
        response = await comprehend.batch_detect_dominant_language()

        # Override per operation
        response = await comprehend.batch_detect_dominant_language(config_overrides={"retry_max_attempts": 5})

        # Disable retries for this call
        response = await comprehend.batch_detect_dominant_language(config_overrides={"retry_max_attempts": 1})

Metadata

Release files for capo-comprehend 0.5.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for capo-comprehend 0.5.0
File Size Uploaded
capo_comprehend-0.5.0.tar.gz 228.4 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for capo-comprehend 0.5.0
File Interpreter ABI Platform
capo_comprehend-0.5.0-py3-none-any.whl Python 3 none any Details

Total release size: 851.5 kB

Release files / capo_comprehend-0.5.0.tar.gz

Download URL capo_comprehend-0.5.0.tar.gz
Size 228.4 kB
Tags Source
SHA-256 checksum
How to use checksums
b7be0315db146c241da22afa7d88062ab1ff98c14e44380576c638b2b851beba
BLAKE2b-256 checksum
How to use checksums
8a151755d2b3165404e4a2e46a4b1d567fcc435e62b90fd6789095281c305784
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.12.23 {"installer":{"name":"uv","version":"0.12.23","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / capo_comprehend-0.5.0-py3-none-any.whl

Download URL capo_comprehend-0.5.0-py3-none-any.whl
Size 623.1 kB
Tags Python 3
SHA-256 checksum
How to use checksums
7732ab4b5b08d217b164ad4e7e7ba750e00ab275969de8615e395ecdf82b14c5
BLAKE2b-256 checksum
How to use checksums
763748d84fea78be3441d36456a0caba11d0fd769052e14f3ecd160c1bdcf315
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.12.23 {"installer":{"name":"uv","version":"0.12.23","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release history Release notifications | RSS feed

0.10.0

2 release files

0.9.0

2 release files

0.8.0

2 release files

0.7.0

2 release files

0.6.0

2 release files

This release

0.5.0 This release

2 release files

0.4.0

2 release files

0.3.0

2 release files

0.2.0

2 release files

0.1.0

2 release 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