Skip to main content

No project description provided

Project description

WorkflowAI Python

A library to use WorkflowAI with Python

Installation

workflowai requires a python >= 3.9.

pip install workflowai

Usage

Usage examples are available in the examples directory.

Set up the workflowai client

import workflowai

wai = workflowai.start(
    url=..., # defaults to WORKFLOWAI_API_URL env var or https://api.workflowai.com
    api_key=..., # defaults to WORKFLOWAI_API_KEY env var
)

Define a task

We use pydantic for type definitions.

from pydantic import BaseModel, Field

from workflowai import Task, TaskVersionReference

class CityToCapitalTaskInput(BaseModel):
    city: str


class CityToCapitalTaskOutput(BaseModel):
    capital: str

class CityToCapitalTask(Task[CityToCapitalTaskInput, CityToCapitalTaskOutput]):
    id: str = "citytocapital"
    schema_id: int = 1
    input_class: type[CityToCapitalTaskInput] = CityToCapitalTaskInput
    output_class: type[CityToCapitalTaskOutput] = CityToCapitalTaskOutput

    # The default version that should be used when running the task
    version: TaskVersionReference = TaskVersionReference(
        iteration=4,
    )

Run a task

task = CityToCapitalTask()
task_input = CityToCapitalTaskInput(city=city)
task_run = await wai.run(task, task_input)

print(task_run.task_output)

It is also possible to stream a task output

task = CityToCapitalTask()
task_input = CityToCapitalTaskInput(city=city)
iterator = await wai.run(task, task_input, stream=True)
async for chunk in iterator:
    print(chunk) # chunk is a partial (non validated) CityToCapitalTaskOutput

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

workflowai-0.5.0.tar.gz (15.3 kB view details)

Uploaded Source

Built Distribution

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

workflowai-0.5.0-py3-none-any.whl (23.3 kB view details)

Uploaded Python 3

File details

Details for the file workflowai-0.5.0.tar.gz.

File metadata

  • Download URL: workflowai-0.5.0.tar.gz
  • Upload date:
  • Size: 15.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/5.1.1 CPython/3.12.7

File hashes

Hashes for workflowai-0.5.0.tar.gz
Algorithm Hash digest
SHA256 8eae7c9e8473adfc626ae85d840f96eafce2f04dd1a93e8ac1344313be75d902
MD5 5dc6a1ab3a169353ff7dbfa2ecde8861
BLAKE2b-256 ff31567cf9f3dc0101f4253a071003ae831eb0b1e11ed579599da73923e973b3

See more details on using hashes here.

Provenance

The following attestation bundles were made for workflowai-0.5.0.tar.gz:

Publisher: publish.yml on WorkflowAI/workflowai-py

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file workflowai-0.5.0-py3-none-any.whl.

File metadata

  • Download URL: workflowai-0.5.0-py3-none-any.whl
  • Upload date:
  • Size: 23.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/5.1.1 CPython/3.12.7

File hashes

Hashes for workflowai-0.5.0-py3-none-any.whl
Algorithm Hash digest
SHA256 0b749d23edc150a027cc7f535ec6d7497e1da80261caab9c227d43d31e56e3ac
MD5 349e202882b2dc95ce38426e7c6c7838
BLAKE2b-256 0cdf08e8df0ea92a355cdbc751d191ac22cf7928bbffbd2fdc8f19772e416c72

See more details on using hashes here.

Provenance

The following attestation bundles were made for workflowai-0.5.0-py3-none-any.whl:

Publisher: publish.yml on WorkflowAI/workflowai-py

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

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