Skip to main content

A framework for rapidly building large-scale, deterministic, interactive workflows with a fault-tolerant, conversational UX

Project description

fastWorkflow

A framework for rapidly building large-scale, deterministic, interactive workflows with a fault-tolerant, conversational UX and AI-powered recommendations.

  • Built on the principle on "Convention over configuration", ALA Ruby on Rails
  • Uses:
    • A custom-built intent detection pipeline for fault-tolerant, self-correcting command routing
    • Pydantic and DSPy for parameter extraction and response generation

Concepts

  • Workflows are defined as a directory hierarchy of workitem types
    • Workitems can be ordered
    • Min/max constraints can be defined for the number of child workitems (one, unlimited, min/max)
    • Workflows can delegate to other workflows
  • Commands are exposed for each workitem type
    • Commands may be specific to one workitem type or inheritable by child workitem types (base commands)
  • Users are guided through the workflow but have complete control over navigation
    • Workflow navigation and command execution are exposed via a chat interface
    • Special constrained workflows are used to handle routing and parameter extraction errors
  • AI-powered recommendations after every command interaction
    • Recommendations are generated AFTER a command has been processed. The user has complete control over the workflow and discretion over whether to follow a recommendation or take a different action.

Getting started

  • Clone the repo
    • Use WSL if you are on Windows
  • Create a .env file in the passwords folder and add below keys if required
    • LITELLM_API_KEY_SYNDATA_GEN
    • LITELLM_API_KEY_PARAM_EXTRACTION
    • LITELLM_API_KEY_RESPONSE_GEN
    • LITELLM_API_KEY_AGENT
  • Train fastworkflow, then train the sample workflow, finally run the sample workflow agent or assistant
    • Hint: review the .vscode/launch.json file for training/running the sample workflow

Future Roadmap

  • AI enabled python applications
  • Tools to enable rapid application development - declarative/imperative/visual

Project details


Release history Release notifications | RSS feed

This version

2.0.0

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

fastworkflow-2.0.0.tar.gz (73.0 kB view details)

Uploaded Source

Built Distribution

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

fastworkflow-2.0.0-py3-none-any.whl (87.2 kB view details)

Uploaded Python 3

File details

Details for the file fastworkflow-2.0.0.tar.gz.

File metadata

  • Download URL: fastworkflow-2.0.0.tar.gz
  • Upload date:
  • Size: 73.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.8.3 CPython/3.12.2 Linux/6.6.87.1-microsoft-standard-WSL2

File hashes

Hashes for fastworkflow-2.0.0.tar.gz
Algorithm Hash digest
SHA256 b25203ba7b25dcdc84e0716d8356f783bc115a3e464132484dc39e40d4ebcd09
MD5 1b53624b09fd3ce355d22e36cc4ac11c
BLAKE2b-256 b4b323935baa0dca3ededbfe19a7a7b470ac887390be3e5625b3314142ba0403

See more details on using hashes here.

File details

Details for the file fastworkflow-2.0.0-py3-none-any.whl.

File metadata

  • Download URL: fastworkflow-2.0.0-py3-none-any.whl
  • Upload date:
  • Size: 87.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.8.3 CPython/3.12.2 Linux/6.6.87.1-microsoft-standard-WSL2

File hashes

Hashes for fastworkflow-2.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 3eeb3e1f3b4be1dabf324dad11b19b5d68d04d8e516f4504ce7df851f913d634
MD5 b7775c19a393c1c0eadd234bb0b24e70
BLAKE2b-256 42bd86ed449b388bedb135cc210b7f86d02c6ac9e8adf46db15245155dea5094

See more details on using hashes here.

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