Skip to main content

python client to interact with Aleph Alpha api endpoints

Project description

Aleph Alpha Client

License PyPI version Documentation Status

Python client for the Aleph Alpha API.

Usage

Synchronous Client

import os
from aleph_alpha_client import Client, CompletionRequest, Prompt

client = Client(
    token=os.environ["TEST_TOKEN"],
    host=os.environ["TEST_API_URL"],
)
request = CompletionRequest(
    prompt=Prompt.from_text("Provide a short description of AI:"),
    maximum_tokens=64,
)
response = client.complete(request, model="pharia-1-llm-7b-control")

print(response.completions[0].completion)

Asynchronous Client

import os
from aleph_alpha_client import AsyncClient, CompletionRequest, Prompt

# Can enter context manager within an async function
async with AsyncClient(
    token=os.environ["TEST_TOKEN"],
    host=os.environ["TEST_API_URL"],
) as client:
    request = CompletionRequest(
        prompt=Prompt.from_text("Provide a short description of AI:"),
        maximum_tokens=64,
    )
    response = client.complete_with_streaming(request, model="pharia-1-llm-7b-control")

    async for stream_item in response:
        print(stream_item)

Interactive Examples

This table contains interactive code examples, further exercises can be found in the examples repository.

Template Description Internal Link Colab Link
1 Calling the API Template 1 Open In Colab
2 Simple completion Template 2 Open In Colab
3 Simple search Template 3 Open In Colab
4 Symmetric and Asymmetric Search Template 4 Open In Colab
5 Hidden Embeddings Template 5 Open In Colab
6 Task-specific Endpoints Template 6 Open In Colab

Installation

The latest stable version is deployed to PyPi so you can install this package via pip/uv:

uv add aleph-alpha-client

Get started using the client by first creating an account. Afterwards head over to your profile to create an API token. Read more about how you can manage your API tokens here.

Development

For local development, install the dependencies:

uv sync

Now you should be able to ...

  • run all the tests using uv run pytest or, uv run pytest -k <test_name> to run a specific test
  • typecheck the code and tests using uv run mypy aleph_alpha_client resp. uv run mypy tests
  • format the code using uv run ruff

Releasing a new version

  1. Bump the version in pyproject.toml.
  2. Edit Changelog.md.
  3. Push and merge.
  4. Go to https://github.com/Aleph-Alpha/aleph-alpha-client/releases/new
    • use the version as tag and release title (e.g. v10.1.0)
    • auto-generate the description based on commit history

Links

Project details


Release history Release notifications | RSS feed

Download files

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

Source Distribution

aleph_alpha_client-10.6.0.tar.gz (49.2 kB view details)

Uploaded Source

Built Distribution

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

aleph_alpha_client-10.6.0-py3-none-any.whl (42.1 kB view details)

Uploaded Python 3

File details

Details for the file aleph_alpha_client-10.6.0.tar.gz.

File metadata

  • Download URL: aleph_alpha_client-10.6.0.tar.gz
  • Upload date:
  • Size: 49.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.8.0

File hashes

Hashes for aleph_alpha_client-10.6.0.tar.gz
Algorithm Hash digest
SHA256 ccc67b68f4e44e125b1029410694a08f9ab953db5a5f565b653f240d82b5ec45
MD5 f782ff10fecf825347e7a4d775cdb88f
BLAKE2b-256 cc8502c760a97090b9032a140c7524f3d9b2e236eb0ebb7cdfa69eafb1b1d0c1

See more details on using hashes here.

File details

Details for the file aleph_alpha_client-10.6.0-py3-none-any.whl.

File metadata

File hashes

Hashes for aleph_alpha_client-10.6.0-py3-none-any.whl
Algorithm Hash digest
SHA256 5a52e44e6fc6176b3c03331f7d881579a5335134aa22ce869b2361fb70263919
MD5 3e4c08aa5504066b2717761913f2beeb
BLAKE2b-256 2ada7ada9ea61dc9b623c5f93afb000b840def26a86467f0bae38575661944e1

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