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.0.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.0-py3-none-any.whl (139.8 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: fastworkflow-2.7.0.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.0.tar.gz
Algorithm Hash digest
SHA256 8354a55f39e5c8507b5819e84d8d70a8a30be430ad163191bd5ba0ba37ef1e4b
MD5 14e80776d5347a4e1ebc50195493f638
BLAKE2b-256 c63d017ba375fcb9d932a5207acb73719b31ae7c6a36965303c8c1c5002b6fe2

See more details on using hashes here.

File details

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

File metadata

  • Download URL: fastworkflow-2.7.0-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.0-py3-none-any.whl
Algorithm Hash digest
SHA256 f0f80c2b15cd4b583809ea53a5bef76578e7320ebd8b71f47cf50a6e640800b6
MD5 9dad865eb1a2142dad3889142ed67343
BLAKE2b-256 dd6d30c918db40550d2cb743680ffe57595fb62c7646c5131c701ff2bcced78b

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