Graphbook

The open source tool for visual AI development

Example Workflow with Llama
no-code
low-code
code

Automation for Engineers

Graphbook is an open source Python framework for building interactive, scalable AI apps faster. With a focus on transparency, efficiency, and interoperability, Graphbook is the ideal AI app builder.

Get started

Built for All

Built-in DAG UI

No frontend coding experience required

Drag and Drop

Build with no-code when you need to

Interactive and Observable

Pause, play, and view ML model outputs in realtime.

Flexible configuration

Parameters can be configured in code and/or UI

Engineers

It

Version Controlled

Define your nodes and workflows in Python

API-callable

Invoke your workflows as regular code

Scalable with Ray

Easily deploy training and inference to your Ray clusters

Framework Agnostic

Use your favorite framework: Pytorch, Tensorflow, or none at all

import grapbook as gb

g = gb.Graph()

@g()
def graph():
    numbers = g.step(GenerateNumbers)
    mean = g.step(CalcMean)
    transformed = g.step(Transform)
    running_mean = g.step(CalcRunningMean)
    
    transformed.bind(numbers)
    mean.bind(transformed)
    running_mean.bind(transformed)
See docs

How It's Done

1. Build

Write nodes in Python

@step("DinoV2")
@batch(8, "images")
@param("model", "transformers/automodel", default="facebook/dinov2-base")
@param("processor", "transformers/autoimageprocessor", default="facebook/dinov2-base")
def process_images(ctx, images, items, notes):
    inputs = ctx.processor(images=images, return_tensors='pt')
    outputs = ctx.model(**inputs)
    last_hidden_states = outputs.last_hidden_state
    return last_hidden_states
@step("DinoV2")
@batch(8, "images")
@param(
    "model",
    "transformers/automodel",
    default="facebook/dinov2-base"
)
@param(
    "processor",
    "transformers/autoimageprocessor",
    default="facebook/dinov2-base"
)
def process_images(ctx, images, items, notes):
    inputs = ctx.processor(images=images)
    outputs = ctx.model(**inputs)
    last_hidden_states = outputs.last_hidden_state
    return last_hidden_states

2. Assemble

With your nodes, assemble a DAG app in the visual editor or in your favorite IDE along with your nodes

Abstract workflow

3. Run

Run, monitor, and adjust configurable parameters in your workflow

Elaborate workflow

Core features

At its core, Graphbook is a framework for building efficient DAG-structured AI/ML data pipelines, but there are many features that help you build.

Web UI
Graphbook offers accessibility to everyone to build AI apps with a visual workflow editor, so that business logic can always be adjusted.
Extensible
Easily make your own functional nodes in Python. Create a node to ingest, one to annotate, and one to store results.
Data
Seamlessly connect to multiple data sources including csv files, pyarrow files, S3 and GCP buckets, and more.
Models
Integrate and experiment with your own ML models or off-the-shelf models from Huggingface and configure hyperparameters in UI.
Views
Take advantage of the automated visualizations of node outputs and observe realtime model labelings directly within the editor interface.
Logs
Enhance visibility by inserting custom log statements into the code of any node's execution lifecycle, and conveniently view them within the editor interface.
Interactive
Run a whole graph or single node and its dependencies; sample single batches of data at a time; pause/resume your data pipeline processing mid-execution.
Optimization
Leverage built-in batching and multiprocessing I/O for reading and writing to maximize the GPU and CPU utilization, and scale with the Ray integration.

Hosting Options

Self-Hosted | Always Free
The software is free. Visit our open-source repository, clone, and deploy the most convenient way.
Download
Graphbook Cloud
Get started quickly and forget about provisioning enough resources such as GPUs.
Coming soon

Our most common asked questions.

Is this no-code ML?

No. But you can build no-code ML for your customers and internal teams with this framework.

Can I use a VCS with Graphbook?

Yes. Your nodes are written in Python, and pipelines/workflows can be serialized as either .py or .json files.

Can I write entire pipelines in Python?

Yes.

How can we deploy to production?

In Graphbook, you can continue to use your workflow as-is or set new variables (directly in the workflow) such as where your production database is.

Can I use an LLM like GPT-4o?

Yes, Graphbook is abstract enough where you can implement anything that can be written in Python including sending API requests to OpenAI.

How do I scale?

The framework uses Ray to scale your application.

How do I contribute?

We are actively looking for collaborators. You are very welcome to contribute! Visit our repo.