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

Uploaded Source

Built Distribution

aleph_alpha_client-10.5.0-py3-none-any.whl (41.4 kB view details)

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for aleph_alpha_client-10.5.0.tar.gz
Algorithm Hash digest
SHA256 58219f597db3e35a79e7f4835fb6a62eec81a531715ac5ed027194d586aaba1c
MD5 0a2d2f3d69303b8224cb577ef0ab461a
BLAKE2b-256 f438c0ddac06c274bc8311f42aa7e7ab458dbf02be4d59354f595af26618637e

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for aleph_alpha_client-10.5.0-py3-none-any.whl
Algorithm Hash digest
SHA256 ac15ab76de583470ebf17078524330f79c3a9d8850c723f3ba7a88c87f584190
MD5 c5b819ac444237cf78a3114d79d3bf43
BLAKE2b-256 c67284fb05643cb0b272bd83eec709e0422aa88b7e9b5e6fa23bb9783724f342

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