Skip to main content

Reminix adapter for LangChain - serve agents as REST APIs

Project description

reminix-langchain

Reminix Runtime adapter for LangChain. Serve any LangChain runnable as a REST API.

Ready to go live? Deploy to Reminix for zero-config hosting, or self-host on your own infrastructure.

Installation

pip install reminix-langchain

This will also install reminix-runtime as a dependency.

Quick Start

from langchain_openai import ChatOpenAI
from reminix_langchain import wrap
from reminix_runtime import serve

# Create a LangChain model or chain
llm = ChatOpenAI(model="gpt-4o")

# Wrap it with the Reminix adapter
agent = wrap(llm, name="my-chatbot")

# Serve it as a REST API
serve([agent], port=8080)

Your agent is now available at:

  • POST /agents/my-chatbot/invoke - Stateless invocation
  • POST /agents/my-chatbot/chat - Conversational chat

API Reference

wrap(runnable, name)

Wrap a LangChain runnable for use with Reminix Runtime.

Parameter Type Default Description
runnable Runnable required Any LangChain runnable (LLM, chain, agent, etc.)
name str "langchain-agent" Name for the agent (used in URL path)

Returns: LangChainAdapter - A Reminix adapter instance

Example with a Chain

from langchain_openai import ChatOpenAI
from langchain_core.prompts import ChatPromptTemplate
from reminix_langchain import wrap
from reminix_runtime import serve

# Create a chain
prompt = ChatPromptTemplate.from_messages([
    ("system", "You are a helpful assistant."),
    ("human", "{input}")
])
llm = ChatOpenAI(model="gpt-4o")
chain = prompt | llm

# Wrap and serve
agent = wrap(chain, name="my-chain")
serve([agent], port=8080)

Endpoint Input/Output Formats

POST /agents/{name}/invoke

Stateless invocation for task-oriented operations.

Request:

{
  "input": {
    "prompt": "Summarize this text: ..."
  }
}

Or with messages:

{
  "input": {
    "messages": [
      {"role": "user", "content": "Hello!"}
    ]
  }
}

Response:

{
  "output": "Hello! How can I help you today?"
}

POST /agents/{name}/chat

Conversational chat with message history.

Request:

{
  "messages": [
    {"role": "user", "content": "What is the capital of France?"}
  ]
}

Response:

{
  "output": "The capital of France is Paris.",
  "messages": [
    {"role": "user", "content": "What is the capital of France?"},
    {"role": "assistant", "content": "The capital of France is Paris."}
  ]
}

Runtime Documentation

For information about the server, endpoints, request/response formats, and more, see the reminix-runtime package.

Deployment

Ready to go live?

Links

License

Apache-2.0

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

reminix_langchain-0.0.2.tar.gz (7.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

reminix_langchain-0.0.2-py3-none-any.whl (4.8 kB view details)

Uploaded Python 3

File details

Details for the file reminix_langchain-0.0.2.tar.gz.

File metadata

  • Download URL: reminix_langchain-0.0.2.tar.gz
  • Upload date:
  • Size: 7.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.9.25 {"installer":{"name":"uv","version":"0.9.25","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}

File hashes

Hashes for reminix_langchain-0.0.2.tar.gz
Algorithm Hash digest
SHA256 fbe51e4823032e9dca1c2f0a43422eccb2c9b3e43a0c155127642c058f8bd5f9
MD5 be02c449e7e1265a8f7888887c459e81
BLAKE2b-256 6354c0103077c8f43d4ebcf32e459ab022167f516b98ae0a9e461ecc291cb252

See more details on using hashes here.

File details

Details for the file reminix_langchain-0.0.2-py3-none-any.whl.

File metadata

  • Download URL: reminix_langchain-0.0.2-py3-none-any.whl
  • Upload date:
  • Size: 4.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.9.25 {"installer":{"name":"uv","version":"0.9.25","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}

File hashes

Hashes for reminix_langchain-0.0.2-py3-none-any.whl
Algorithm Hash digest
SHA256 a7b6b6acb77ade9d915201ffa57b93b2967b3595663a4075725114b5295d52ca
MD5 7dd5f13df00a764acd10aff2ac2e3c4d
BLAKE2b-256 1e24c45cbd7e03639db067f6e6fdb00f83a5fa71da5ff24a636af0718db182e8

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page