Skip to main content

Otto-m8 Python SDK

A Flowchart based automation platform to run deep learning workloads with minimal to no code.

otto-m8 (automate) is a low code platform that allows users to build AI/ML workflows through a flowchart like UI. In other words, you can visually declare how you build AI workflows or agents. Its low code because you are still in control over the implementation of a block(yes you can not only add custom blocks but also modify out of the box blocks), and more importantly, its a platform that isn't specifically built on top of an existing AI framework like Langchain. What this means is that, you can build you workflows with any framework you see fit, whether it is Langchain, Llama Index or the AI providers sdk themselves.

At its core, otto-m8 views the problem of building any AI workflow as a graph problem. As developers, we mostly build modular components where each components are responsible for a specific task (consider them as nodes), and each component sends data between each other (the edges). Together you get a workflow which consists of inputs, some transformations of the inputs(we'll call them processes), and an output.

Getting Started

  1. Make sure you have otto-m8 running in the background by following these instructions.

  2. Run the following:

    pip install otto-m8
    
  3. Figure out the payload to be used:

    from otto_m8.run import OttoRun
    import json
    
    # Assuming your workflow is running on port 8001
    otto = OttoRun(workflow_url='http://localhost:8001/workflow_run')
    
    payload = otto.create_empty_payload()
    print(payload)
    # Output: {"Input_Block": None}
    
  4. Interact with a deployed workflow:

    from otto_m8.run import OttoRun
    import json
    
    # Assuming your workflow is running on port 8001
    otto = OttoRun(workflow_url='http://localhost:8001/workflow_run')
    
    payload['Input_Block'] = "<insert your text>"
    
    response = otto.run(payload)
    print(json.dumps(response, indent=4))
    

Instantiate with Workflow name

In the event you do not have a deployed workflow, and it is in draft stage, you can configure OttoRun with the workflow name.

from otto_m8.run import OttoRun

otto = OttoRun(
    workflow_name="<name-of-your-draft-workflow>"
)

Metadata

Release files for otto-m8 0.0.2

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for otto-m8 0.0.2
File Size Uploaded
otto_m8-0.0.2.tar.gz 6.6 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for otto-m8 0.0.2
File Interpreter ABI Platform
otto_m8-0.0.2-py3-none-any.whl Python 3 none any Details

Total release size: 14.1 kB

Release files / otto_m8-0.0.2.tar.gz

Download URL otto_m8-0.0.2.tar.gz
Size 6.6 kB
Tags Source
SHA-256 checksum
How to use checksums
126702e3dbd7dec291a11c2b1b2550f561144da99e3335515ba205b6fd28eb38
BLAKE2b-256 checksum
How to use checksums
8e7a207f4409dbb6b640c43eef0bb4ba4f7fc5fbaf52d2e443463fb4b33450a1
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.12.5

Release files / otto_m8-0.0.2-py3-none-any.whl

Download URL otto_m8-0.0.2-py3-none-any.whl
Size 7.5 kB
Tags Python 3
SHA-256 checksum
How to use checksums
d9d888911b5177a2639ebea0724860a7c124d9c5f4b1570562e74b0a11a8164e
BLAKE2b-256 checksum
How to use checksums
29e4e9093f335992520c4adcee848bb5d9afd15b4d749af6dba6e904d41a53c5
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.1.0 CPython/3.12.5

Release history Release notifications | RSS feed

This release

0.0.2 This release

2 release files

0.0.1

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page