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

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.7.1.tar.gz (114.7 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.7.1-py3-none-any.whl (139.8 kB view details)

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for fastworkflow-2.7.1.tar.gz
Algorithm Hash digest
SHA256 eb7cada290bb1d030088dd60d56ca30e7e53da081e6409152cb28edf67b2c977
MD5 5a204ad346defb6a0004c885d73e6201
BLAKE2b-256 a9dec73b70f7e6a7afaa70b3708e2728bbaddf667e03aeeda3906047cc554a66

See more details on using hashes here.

File details

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

File metadata

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

File hashes

Hashes for fastworkflow-2.7.1-py3-none-any.whl
Algorithm Hash digest
SHA256 409982f0cd807aad51f3b769d5d5a9ded1af1f93b212c79959616eafe76c9b7b
MD5 0a38102a56da22d9cd3610c106208de8
BLAKE2b-256 2387da46b0c43d20a08e9cb42026481312aee568ceceed53ce4247a9dcac7e2e

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