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.2.2.tar.gz (44.3 kB view details)

Uploaded Source

Built Distribution

aleph_alpha_client-10.2.2-py3-none-any.whl (39.6 kB view details)

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for aleph_alpha_client-10.2.2.tar.gz
Algorithm Hash digest
SHA256 526f5f4fd0f1a875b693f93cea8d43189fe7b9c1fc4594b3a5b3876120d257c2
MD5 608723df8408d4292b65185437b05e54
BLAKE2b-256 d4ea06ccc785790238133e4428de90cd1766c584a0eee63c92c05493b5e18234

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for aleph_alpha_client-10.2.2-py3-none-any.whl
Algorithm Hash digest
SHA256 f63e85751afd6d671b9a8dcbb0498be760073fea682ea604aa96a77f2985fe10
MD5 c0398158ef9674fdd3738344fb9a8397
BLAKE2b-256 eaa37f2b394a661dcf4aaea432577ec3ecaac8aad985f00d9f3c23b9f2dec985

See more details on using hashes here.

Supported by

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