# Aleph Alpha Client
<p align="center">
<img src="https://i.imgur.com/FSM2NNV.png" width="50%" />
</p>
[![License](https://img.shields.io/crates/l/aleph-alpha-client)](https://github.com/Aleph-Alpha/aleph-alpha-client/blob/main/LICENSE)
[![PyPI version](https://badge.fury.io/py/aleph-alpha-client.svg)](https://pypi.org/project/aleph-alpha-client/)
[![Documentation Status](https://readthedocs.org/projects/aleph-alpha-client/badge/?version=latest)](https://aleph-alpha-client.readthedocs.io/en/latest/?badge=latest)
Python client for the [Aleph Alpha](https://aleph-alpha.com) API.
## Usage
### Synchronous Client
```python
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
```python
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](https://github.com/Aleph-Alpha/examples).
| Template | Description | Internal Link | Colab Link |
|----------|-------------|---------------| -----------|
| 1 | Calling the API | [Template 1](https://github.com/Aleph-Alpha/examples/blob/main/boilerplate/01_using_client.ipynb) | [![Open In Colab](https://colab.research.google.com/assets/colab-badge.svg)](https://colab.research.google.com/github/Aleph-Alpha/examples/blob/main/boilerplate/01_using_client.ipynb)|
| 2 | Simple completion | [Template 2](https://github.com/Aleph-Alpha/examples/blob/main/boilerplate/02_prompting.ipynb) | [![Open In Colab](https://colab.research.google.com/assets/colab-badge.svg)](https://colab.research.google.com/github/Aleph-Alpha/examples/blob/main/boilerplate/02_prompting.ipynb)|
| 3 | Simple search | [Template 3](https://github.com/Aleph-Alpha/examples/blob/main/boilerplate/03_simple_search.ipynb) | [![Open In Colab](https://colab.research.google.com/assets/colab-badge.svg)](https://colab.research.google.com/github/Aleph-Alpha/examples/blob/main/boilerplate/03_simple_search.ipynb)|
| 4 | Symmetric and Asymmetric Search | [Template 4](https://github.com/Aleph-Alpha/examples/blob/main/boilerplate/04_semantic_search.ipynb) | [![Open In Colab](https://colab.research.google.com/assets/colab-badge.svg)](https://colab.research.google.com/github/Aleph-Alpha/examples/blob/main/boilerplate/04_semantic_search.ipynb)|
| 5 | Hidden Embeddings | [Template 5](https://github.com/Aleph-Alpha/examples/blob/main/boilerplate/05_hidden_embeddings.ipynb) | [![Open In Colab](https://colab.research.google.com/assets/colab-badge.svg)](https://colab.research.google.com/github/Aleph-Alpha/examples/blob/main/boilerplate/05_hidden_embeddings.ipynb)|
| 6 | Task-specific Endpoints | [Template 6](https://github.com/Aleph-Alpha/examples/blob/main/boilerplate/06_task_specific_endpoints.ipynb) | [![Open In Colab](https://colab.research.google.com/assets/colab-badge.svg)](https://colab.research.google.com/github/Aleph-Alpha/examples/blob/main/boilerplate/06_task_specific_endpoints.ipynb)|
## Installation
The latest stable version is deployed to PyPi so you can install this package via pip.
```sh
pip install aleph-alpha-client
```
Get started using the client by first [creating an account](https://app.aleph-alpha.com/signup). Afterwards head over to [your profile](https://app.aleph-alpha.com/profile) to create an API token. Read more about how you can manage your API tokens [here](https://docs.aleph-alpha.com/docs/account).
## Development
For local development, start by creating a Python virtual environment as follows:
```shell
python3 -m venv venv
. ./venv/bin/activate
```
Next, install the test and dev dependencies:
```shell
poetry install --extras "dev"
```
Now you should be able to ...
* run all the tests using `pytest` or, `pytest -k <test_name>` to run a specific test
* typecheck the code and tests using `mypy aleph_alpha_client` resp. `mypy tests`
* format the code using `ruff`
## Links
- [HTTP API Docs](https://docs.aleph-alpha.com/api/)
- [Interactive Playground](https://app.aleph-alpha.com/playground/)
Raw data
{
"_id": null,
"home_page": "https://github.com/Aleph-Alpha/aleph-alpha-client",
"name": "aleph-alpha-client",
"maintainer": null,
"docs_url": null,
"requires_python": "<3.13,>=3.9",
"maintainer_email": null,
"keywords": null,
"author": "Aleph Alpha",
"author_email": "support@aleph-alpha.com",
"download_url": "https://files.pythonhosted.org/packages/dd/80/544545f8f1528d07f369c7159646999a841e386bf5b058a02d6f8ebc2b8a/aleph_alpha_client-8.1.0.tar.gz",
"platform": null,
"description": "# Aleph Alpha Client\n\n<p align=\"center\">\n <img src=\"https://i.imgur.com/FSM2NNV.png\" width=\"50%\" />\n</p>\n\n[![License](https://img.shields.io/crates/l/aleph-alpha-client)](https://github.com/Aleph-Alpha/aleph-alpha-client/blob/main/LICENSE)\n[![PyPI version](https://badge.fury.io/py/aleph-alpha-client.svg)](https://pypi.org/project/aleph-alpha-client/)\n[![Documentation Status](https://readthedocs.org/projects/aleph-alpha-client/badge/?version=latest)](https://aleph-alpha-client.readthedocs.io/en/latest/?badge=latest)\n\nPython client for the [Aleph Alpha](https://aleph-alpha.com) API.\n\n## Usage\n\n### Synchronous Client\n\n```python\nimport os\nfrom aleph_alpha_client import Client, CompletionRequest, Prompt\n\nclient = Client(\n token=os.environ[\"TEST_TOKEN\"],\n host=os.environ[\"TEST_API_URL\"],\n)\nrequest = CompletionRequest(\n prompt=Prompt.from_text(\"Provide a short description of AI:\"),\n maximum_tokens=64,\n)\nresponse = client.complete(request, model=\"pharia-1-llm-7b-control\")\n\nprint(response.completions[0].completion)\n```\n\n### Asynchronous Client\n\n```python\nimport os\nfrom aleph_alpha_client import AsyncClient, CompletionRequest, Prompt\n\n# Can enter context manager within an async function\nasync with AsyncClient(\n token=os.environ[\"TEST_TOKEN\"],\n host=os.environ[\"TEST_API_URL\"],\n) as client:\n request = CompletionRequest(\n prompt=Prompt.from_text(\"Provide a short description of AI:\"),\n maximum_tokens=64,\n )\n response = client.complete_with_streaming(request, model=\"pharia-1-llm-7b-control\")\n\n async for stream_item in response:\n print(stream_item)\n```\n\n### Interactive Examples\n\nThis table contains interactive code examples, further exercises can be found in the [examples repository](https://github.com/Aleph-Alpha/examples).\n| Template | Description | Internal Link | Colab Link |\n|----------|-------------|---------------| -----------|\n| 1 | Calling the API | [Template 1](https://github.com/Aleph-Alpha/examples/blob/main/boilerplate/01_using_client.ipynb) | [![Open In Colab](https://colab.research.google.com/assets/colab-badge.svg)](https://colab.research.google.com/github/Aleph-Alpha/examples/blob/main/boilerplate/01_using_client.ipynb)|\n| 2 | Simple completion | [Template 2](https://github.com/Aleph-Alpha/examples/blob/main/boilerplate/02_prompting.ipynb) | [![Open In Colab](https://colab.research.google.com/assets/colab-badge.svg)](https://colab.research.google.com/github/Aleph-Alpha/examples/blob/main/boilerplate/02_prompting.ipynb)|\n| 3 | Simple search | [Template 3](https://github.com/Aleph-Alpha/examples/blob/main/boilerplate/03_simple_search.ipynb) | [![Open In Colab](https://colab.research.google.com/assets/colab-badge.svg)](https://colab.research.google.com/github/Aleph-Alpha/examples/blob/main/boilerplate/03_simple_search.ipynb)|\n| 4 | Symmetric and Asymmetric Search | [Template 4](https://github.com/Aleph-Alpha/examples/blob/main/boilerplate/04_semantic_search.ipynb) | [![Open In Colab](https://colab.research.google.com/assets/colab-badge.svg)](https://colab.research.google.com/github/Aleph-Alpha/examples/blob/main/boilerplate/04_semantic_search.ipynb)|\n| 5 | Hidden Embeddings | [Template 5](https://github.com/Aleph-Alpha/examples/blob/main/boilerplate/05_hidden_embeddings.ipynb) | [![Open In Colab](https://colab.research.google.com/assets/colab-badge.svg)](https://colab.research.google.com/github/Aleph-Alpha/examples/blob/main/boilerplate/05_hidden_embeddings.ipynb)|\n| 6 | Task-specific Endpoints | [Template 6](https://github.com/Aleph-Alpha/examples/blob/main/boilerplate/06_task_specific_endpoints.ipynb) | [![Open In Colab](https://colab.research.google.com/assets/colab-badge.svg)](https://colab.research.google.com/github/Aleph-Alpha/examples/blob/main/boilerplate/06_task_specific_endpoints.ipynb)|\n\n## Installation\n\nThe latest stable version is deployed to PyPi so you can install this package via pip.\n\n```sh\npip install aleph-alpha-client\n```\n\nGet started using the client by first [creating an account](https://app.aleph-alpha.com/signup). Afterwards head over to [your profile](https://app.aleph-alpha.com/profile) to create an API token. Read more about how you can manage your API tokens [here](https://docs.aleph-alpha.com/docs/account).\n\n## Development\n\nFor local development, start by creating a Python virtual environment as follows:\n\n```shell\npython3 -m venv venv\n. ./venv/bin/activate\n```\n\nNext, install the test and dev dependencies:\n\n```shell\npoetry install --extras \"dev\"\n```\n\n\nNow you should be able to ...\n\n* run all the tests using `pytest` or, `pytest -k <test_name>` to run a specific test\n* typecheck the code and tests using `mypy aleph_alpha_client` resp. `mypy tests`\n* format the code using `ruff`\n\n## Links\n\n- [HTTP API Docs](https://docs.aleph-alpha.com/api/)\n- [Interactive Playground](https://app.aleph-alpha.com/playground/)\n",
"bugtrack_url": null,
"license": "MIT",
"summary": "python client to interact with Aleph Alpha api endpoints",
"version": "8.1.0",
"project_urls": {
"Homepage": "https://github.com/Aleph-Alpha/aleph-alpha-client"
},
"split_keywords": [],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "813f73472e4304fa9e75196ec440dd4b41b2b722932e161165812741160d6dc7",
"md5": "2397304f51016593a22fc21b885ba00b",
"sha256": "8ddae7777b9b3133e95bf4c048bb0bfdd3cb23795a4b788348b05dacd9a3ff4c"
},
"downloads": -1,
"filename": "aleph_alpha_client-8.1.0-py3-none-any.whl",
"has_sig": false,
"md5_digest": "2397304f51016593a22fc21b885ba00b",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": "<3.13,>=3.9",
"size": 40381,
"upload_time": "2024-12-16T10:54:22",
"upload_time_iso_8601": "2024-12-16T10:54:22.628297Z",
"url": "https://files.pythonhosted.org/packages/81/3f/73472e4304fa9e75196ec440dd4b41b2b722932e161165812741160d6dc7/aleph_alpha_client-8.1.0-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "dd80544545f8f1528d07f369c7159646999a841e386bf5b058a02d6f8ebc2b8a",
"md5": "c3da9521360d6af033b18991fc158201",
"sha256": "23be075560c26b9c1170d7324307e906a6086ac3579270d196355f7892101dc4"
},
"downloads": -1,
"filename": "aleph_alpha_client-8.1.0.tar.gz",
"has_sig": false,
"md5_digest": "c3da9521360d6af033b18991fc158201",
"packagetype": "sdist",
"python_version": "source",
"requires_python": "<3.13,>=3.9",
"size": 33494,
"upload_time": "2024-12-16T10:54:25",
"upload_time_iso_8601": "2024-12-16T10:54:25.016746Z",
"url": "https://files.pythonhosted.org/packages/dd/80/544545f8f1528d07f369c7159646999a841e386bf5b058a02d6f8ebc2b8a/aleph_alpha_client-8.1.0.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-12-16 10:54:25",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "Aleph-Alpha",
"github_project": "aleph-alpha-client",
"travis_ci": false,
"coveralls": false,
"github_actions": true,
"lcname": "aleph-alpha-client"
}