A lightweight Python framework for building modular AI pipelines with function nodes and agent nodes.
Project description
Pipeline Node Agents
A lightweight Python framework for building modular AI pipelines with function nodes and agent nodes. Designed to work well with lightweight local LLMs by giving you full control over context and task complexity at each step.
Table of Contents
- Key Features
- Why This Framework?
- Requirements
- Installation
- How to Run
- Maintenance Guide
- Import as Python Package
Key Features
- Local LLM support: Works with Ollama for fully offline AI pipelines
- Modular architecture: Compose pipelines from reusable function and agent nodes
- Flexible flow control: Support for linear pipelines, conditional branching, and loops
- Adapter pattern: Easy integration with different AI backends (CrewAI, LangChain, custom LLMs)
- Nested pipelines: Run sub-pipelines within nodes for complex workflows
Why This Framework?
- Easy to maintain: Build pipelines of any complexity to provide context clearly and friendly for lightweight LLMs
- Easy to extend: Integrate with any AI agent framework by adding new adapters without modifying core pipeline logic
- Easy to test: Each node can be tested independently with mock outputs
Requirements
System
- OS: Ubuntu 20.04 or later
- RAM: 8 GB minimum (16 GB recommended)
- Disk: 10 GB free space
Software
- curl: For installing dependencies
- git: For cloning the repository
- Poetry for dependency management
- Ollama for local LLM support
Installation
In this guide, curl and git are assumed to be installed. If you do not have them, please follow the official documentation to install.
-
Install Poetry (if not already installed):
curl -sSL https://install.python-poetry.org | python3 -
-
Install Ollama (if not already installed):
curl -fsSL https://ollama.com/install.sh | sh
-
Clone the repository and install dependencies:
git clone <repository_url> cd pipeline_node_agents poetry install
-
Install LLM (default:
llama3.2:latest):ollama pull llama3.2:latest
How to Run
Prerequisites:
- Start Ollama in a separate terminal:
ollama serve- Make sure the required model is installed using
ollama list(as of January 15th 2026, it's llama3.2)
Option 1: Run an example directly
poetry run python3 examples/<example_name>.py
e.g.
poetry run python3 examples/random_mean_pipeline.py
Option 2: Using Runner Scripts
Additional requirement: All scripts in the
scripts/folder must have execution permissions.If not, run:
chmod +x scripts/*.sh
Run a Single Pipeline
./scripts/run_single_pipeline.sh <path_to_pipeline> <runs> [input_strings]
Parameters:
<path_to_pipeline>- Path to the Python pipeline file<runs>- Number of times to run the pipeline[input_strings]- Optional: newline-separated inputs for interactive prompts
Examples:
# Run a simple pipeline 3 times
./scripts/run_single_pipeline.sh examples/random_mean_pipeline.py 3
# Run with single input
./scripts/run_single_pipeline.sh examples/input_checker_pipeline.py 2 "Munich, Vienna"
# Run with multiple inputs (use $'\n' to separate)
./scripts/run_single_pipeline.sh examples/trip_planner/pipeline.py 1 $'Madrid, Dubai\n30 January 2026\n5 February 2026'
Run All Smoke Tests
./scripts/run_smoke_pipelines.sh [number_of_runs_per_pipeline]
Examples:
# Run all example pipelines once
./scripts/run_smoke_pipelines.sh
# Run all example pipelines 3 times each
./scripts/run_smoke_pipelines.sh 3
Logs are automatically saved to logs/ directory by the Python logging system.
Import as Python Package
Requirements
- Python 3.11 - 3.13 (required)
Installation from Test PyPI
pip install -i https://test.pypi.org/simple/ --extra-index-url https://pypi.org/simple/ pipeline-node-agents
Note: The
--extra-index-urlflag is required because some dependencies (likecrewai,litellm) are only available on the main PyPI, not Test PyPI.
Verify Installation
from pipeline_node_agents import greet
if __name__ == "__main__":
print(greet())
Expected output:
Hello, World! Pipeline Node Agents <version> is working.
Maintenance Guide
For detailed maintenance instructions, including how to create nodes, build pipelines, and extend the framework, please refer to the Maintenance Guide.
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file pipeline_node_agents-0.1.1.tar.gz.
File metadata
- Download URL: pipeline_node_agents-0.1.1.tar.gz
- Upload date:
- Size: 11.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.9.6
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
57f979e2cbf4232bbc7fbea6d9d853a7a278d01948145e4d6dcc8946aca84bf4
|
|
| MD5 |
27e5ac7126b938abc895d1bce75545db
|
|
| BLAKE2b-256 |
e39ce5f3dae62a3650810e0d7cf8846fe5b81c8302691c2b11345cfe3b096428
|
File details
Details for the file pipeline_node_agents-0.1.1-py3-none-any.whl.
File metadata
- Download URL: pipeline_node_agents-0.1.1-py3-none-any.whl
- Upload date:
- Size: 14.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.9.6
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
3f04483222ebd4dcd9cffd02ad5b0853c01b1e75eb4c0513765cda6017a5376e
|
|
| MD5 |
cdba82d40ecaefa314c4aa69b6db6859
|
|
| BLAKE2b-256 |
a84d4e0b83e74ba646c6de0b171e8e3f99aad0cf9d50435a2fc3836559ba32e5
|