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


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

Uploaded Source

Built Distribution

workflowai-0.3.3-py3-none-any.whl (25.9 kB view details)

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for workflowai-0.3.3.tar.gz
Algorithm Hash digest
SHA256 6a584ed6b30580d7eb4c50d98c728c8db6309bfec16c39689431ec44dd831635
MD5 5f6ff74384b85a9e78b254349a116d3e
BLAKE2b-256 9a8aeb2b0757ddc85c97d840da02ebac88924a1777cf5a31080862a5b1905e8e

See more details on using hashes here.

File details

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

File metadata

  • Download URL: workflowai-0.3.3-py3-none-any.whl
  • Upload date:
  • Size: 25.9 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.3.3-py3-none-any.whl
Algorithm Hash digest
SHA256 5e3d39e29999bd0c4dc9418037f706a4b8fec63974f310534ae677b058741ef2
MD5 176d01a9131b23037f3f8d4521396fce
BLAKE2b-256 bc49340bcacb42a5f20833fa76c3006437d7fe6409c4fd824caac1d7f71ce003

See more details on using hashes here.

Supported by

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