GraphAI is a lightweight, modular framework for building graph-based AI agents and workflows. Unlike monolithic AI frameworks, GraphAI provides a clean foundation without abstractions for LLMs, embeddings, or vector databases — giving you the flexibility to build ultrafast, use-case-specific AI applications.
Modular
GraphAI provides a clean foundation without abstractions for LLMs, embeddings, or vector databases, giving you complete control over your AI stack.
Lightweight
Unlike monolithic AI frameworks, GraphAI is designed to be minimal and fast, letting you build use-case-specific solutions without unnecessary overhead.
Graph-Based
Build complex AI workflows as interconnected graphs, enabling sophisticated agent behaviors and decision-making processes.
Build AI Workflows as Graphs
GraphAI enables you to design complex AI workflows as interconnected graphs, where each node represents a specific operation or decision point.
Node-Based Design
Each node in your graph represents a specific AI operation, from data processing to model inference.
Dynamic Execution
Graphs execute dynamically based on runtime conditions and data flow requirements.
Composable Workflows
Build complex workflows by composing smaller, reusable graph components.
fully open source
Transparency in code, creativity in collaboration. GraphAI uses an MIT license so you can use it however and wherever you want. Interested in contributing? Find us at: github.com/aurelio-labs/graphai
build your way
GraphAI doesn't lock you into specific providers or abstractions. Use any LLM, vector database, or embedding model you prefer — GraphAI provides the graph foundation, you choose the AI components.
get started
view on githubpip install graphai from graphai import Graph, Node # Create nodes input_node = Node("input", data={"text": "Hello World"}) process_node = Node("process", function=transform_text) output_node = Node("output", function=save_result) # Build graph graph = Graph() graph.add_edge(input_node, process_node) graph.add_edge(process_node, output_node) # Execute workflow result = graph.run()