Registry / llm-agents / flowllm

flowllm

JSON →
library0.2.0.10pypypi✓ verified 81d ago

FlowLLM is a Python library designed to simplify the development of LLM-based HTTP/MCP (Message Control Protocol) services. It provides a structured way to define and manage LLM workflows using `Flow` and `Step` components, allowing developers to quickly build and deploy AI-powered APIs. The library is actively maintained with frequent minor releases in its `0.2.x` series.

pip install flowllm
INSTALL
IMPORT
SIG · FLOWLLM
F
flowllm
llm-agentspythonv0.2.0.10
Install
29.5s avg
Import
Disk
462MB
Pass rate
8/ 10
Env Coverage8 / 10
glibc
3.93.13
musl
3.93.13
Install & Compatibility
Where this runs
tested against v0.2.0.10 · pip install
no network on importno background threads
Install × environment matrix
Each cell = how many times install + import succeeded across repeated harness runs. Partial = flaky.
glibc = Debian/Ubuntu slim · musl = Alpine Linux
musl
glibc
py 3.10
✓ —
✓ 33.38s
py 3.11
✓ —
✓ 30.98s
py 3.12
✓ —
✓ 26.65s
py 3.13
✓ —
✓ 26.83s
py 3.9
✕ build_error
✕ build_error
462MB installed
● package 462MB
Code
Verified usage

Verified import paths — ran on the pinned version, not inferred.

Application
from flowllm import Application
from flowllm import Flow
BaseComponent
from flowllm import BaseComponent
Flow
from flowllm.application import Flow

This quickstart defines a simple LLM chat flow using `Flow` and `Step` components, then runs it as an HTTP service using `run_flow_server`. Ensure `OPENAI_API_KEY` is set in your environment for LLM interactions.

import os from flowllm import Flow, Step, run_flow_server from flowllm.models import ChatInput, ChatResponse # Define your LLM flow class MyChatFlow(Flow): def __init__(self): super().__init__( name="my_chat_flow", version="1.0.0", description="A simple chat flow.", input_model=ChatInput, output_model=ChatResponse, ) self.add_step( Step( name="chat_step", prompt="You are a helpful AI assistant. User message: {{input.message}}", output_key="response", ) ) def process(self, input_data: ChatInput, context: dict) -> ChatResponse: response_text = context["response"].choices[0].message.content return ChatResponse(response=response_text) # Initialize and run the server if __name__ == "__main__": # Set your OpenAI API key. In a real application, use os.environ.get for safety. os.environ["OPENAI_API_KEY"] = os.environ.get("OPENAI_API_KEY", "") if not os.environ["OPENAI_API_KEY"]: print("Warning: OPENAI_API_KEY not set. LLM calls may fail.") flow = MyChatFlow() print("Starting FlowLLM server on http://0.0.0.0:8000") run_flow_server(flow, host="0.0.0.0", port=8000)
Debug
Known issues
gotchaFlowLLM typically requires an external LLM API key (e.g., OpenAI) to function. Without a valid key, LLM calls will fail with authentication errors.
fix
Set the `OPENAI_API_KEY` environment variable (e.g., `export OPENAI_API_KEY='sk-...'`) or configure another LLM provider as per documentation before running your flow.
affects: >=0.2.0.1
gotchaAs a rapidly developing library in its `0.2.x` series, minor API adjustments or changes in behavior might occur between patch versions. Always review release notes for updates.
fix
Pin specific versions (`flowllm==0.2.0.10`) in your `requirements.txt` to ensure stability and carefully review the GitHub changelog for each update before upgrading.
affects: 0.2.0.1 - 0.2.0.10
gotchaRunning multiple FlowLLM servers locally on the default port (8000) will result in port conflicts.
fix
Specify a different port using the `port` argument in `run_flow_server(flow, host="0.0.0.0", port=8001)` for each additional server.
affects: >=0.2.0.1
Upgrade
Version history
0.2.0.10latest on PyPI · released Jan 7, 2026
Audit
Dependencies
fastapirequiredPowers the HTTP server functionality.
uvicornrequiredASGI server for running FastAPI applications.
openairequiredDefault LLM provider integration.
pydanticrequiredData validation and settings management for models and configurations.
langchain-corerequiredCore components for LLM interactions and abstractions.
pydantic-settingsrequiredManages environment variables and settings loading.
python-dotenvrequiredLoads environment variables from .env files.
langchain-openairequiredOpenAI specific integration with LangChain.
Agent activity
38 hits · last 30 days
node
36
OpenAI (training)
1
Resources
flowllm — pip install flowllm · libregistry