Skip to main content

LangGraph OpenAI Serve

Serve LangGraph graphs through an OpenAI-compatible /v1 API so existing OpenAI SDKs, Chainlit, Open WebUI, and similar clients can call them without a project-specific protocol.

Install

Use uv for project dependency management:

uv add langgraph-openai-serve

The equivalent pip command is:

pip install langgraph-openai-serve

For interrupt-enabled deployments that use PostgreSQL for checkpointing and cross-worker run coordination, install the optional integration:

uv add "langgraph-openai-serve[postgres]"

The package contains the OpenAI-compatible server integration, not a built-in LLM graph. Applications register their own graphs. The demo/ checkout keeps each deployable application in an independent uv project with its own lockfile. Its lgos-rag example indexes a small corpus packaged with the demo API, so the entire directory can be copied and run without files from this repository.

Quick Demo

From this repository, prepare the demo environment and PostgreSQL:

cd demo
cp .env.example .env
docker compose -f compose.yaml up -d lgos-db
uv run --directory api --env-file ../.env \
  --locked --with-editable ../.. lgos-demo-api-setup
uv run --directory api --env-file ../.env \
  --locked --with-editable ../.. lgos-demo-api

Then call the demo with the OpenAI Python client:

from openai import OpenAI

client = OpenAI(base_url="http://localhost:8000/v1", api_key="DUMMY")

response = client.chat.completions.create(
    model="custom-input-output-context",
    messages=[{"role": "user", "content": "Show me custom schemas."}],
    user="demo-user",
)

print(response.choices[0].message.content)

Use curl http://localhost:8000/v1/models only as a diagnostic to inspect the registered demo graph names.

The optional editable overlay tests this checkout without changing the self-contained demo project or its lockfile. The demo publishes independent API and Chainlit images and uses official images for third-party services such as Open WebUI. See the demo Docker Compose guide.

The demo also includes a PostgreSQL-persistent Chainlit client. It uses a shared mock login by default, with PocketID OAuth available as an opt-in mode. See the Chainlit demo.

Use In FastAPI

from fastapi import FastAPI
from langgraph_openai_serve import GraphConfig, GraphRegistry, LanggraphOpenaiServe
from your_graphs import my_graph

app = FastAPI()
graphs = GraphRegistry(
    registry={
        "my-graph": GraphConfig(
            graph=my_graph,
            description="Answer questions with my LangGraph workflow.",
            streamable_node_names=["generate"],
        )
    }
)

LanggraphOpenaiServe(app=app, graphs=graphs).bind_openai_api()

The default base URL is {host}/v1. Registered graph names become OpenAI model values.

Docs

Release files for langgraph_openai_serve 0.10.0

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

Source distribution (sdist)

Source distribution for langgraph_openai_serve 0.10.0
File Size Uploaded
langgraph_openai_serve-0.10.0.tar.gz 32.8 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for langgraph_openai_serve 0.10.0
File Interpreter ABI Platform
langgraph_openai_serve-0.10.0-py3-none-any.whl Python 3 none any Details

Total release size: 81.3 kB

Release files / langgraph_openai_serve-0.10.0.tar.gz

Download URL langgraph_openai_serve-0.10.0.tar.gz
Size 32.8 kB
Tags Source
SHA-256 checksum
How to use checksums
de4e1b7b5c957b3cb2d078f3f67894c34cc180f291b99794e84ff64571bf9107
BLAKE2b-256 checksum
How to use checksums
57b39d4539de10f50ea9b43a2f3e303f01ab4dda7e33579629aa0913e1c5549c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.12.1 {"installer":{"name":"uv","version":"0.12.1","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / langgraph_openai_serve-0.10.0-py3-none-any.whl

Download URL langgraph_openai_serve-0.10.0-py3-none-any.whl
Size 48.5 kB
Tags Python 3
SHA-256 checksum
How to use checksums
247af3b754a2c757a9d2452e23c78726e529340fe8390efe6bef483863a8ebe6
BLAKE2b-256 checksum
How to use checksums
3d9592ff9c4cc0914eb0827172a7615465a99e39e376257fc59e00c10b308809
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via uv/0.12.1 {"installer":{"name":"uv","version":"0.12.1","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release history Release notifications | RSS feed

0.25.0

2 release files

0.24.0

2 release files

0.23.0

2 release files

0.22.0

2 release files

0.21.0

2 release files

0.20.1

2 release files

0.20.0

2 release files

0.19.0

2 release files

0.14.0

2 release files

0.13.0

2 release files

0.12.0

2 release files

0.11.2

2 release files

0.11.1

2 release files

0.11.0

2 release files

0.10.1

2 release files

This release

0.10.0 This release

2 release files

0.9.2

1 release file

0.9.1

1 release file

0.8.1

1 release file

0.8.0

1 release file

0.7.1

1 release file

0.7.0

1 release file

0.6.0

1 release file

0.5.0

1 release file

0.4.0

1 release file

0.3.3

1 release file

0.3.2

1 release file

0.3.1

1 release file

0.3.0

1 release file

0.2.0

1 release file

0.1.1

1 release file

0.1.0

1 release file

0.0.8

1 release file

0.0.7

1 release file

0.0.6

1 release file

0.0.5

1 release file

0.0.4

1 release file

0.0.3

1 release file

0.0.2

1 release file

0.0.1

1 release file

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