Skip to main content

Reminix agents for LangChain - serve AI agents as REST APIs

Project description

reminix-langchain

Reminix agent for LangChain. Serve any LangChain runnable as a REST API.

Ready to go live? Deploy to Reminix Cloud 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 LangChainChatAgent
from reminix_runtime import serve

llm = ChatOpenAI(model="gpt-4o")
agent = LangChainChatAgent(llm, name="my-chatbot")
serve(agents=[agent])

Your agent is now available at:

  • POST /agents/my-chatbot/invoke - Execute the agent

API Reference

LangChainChatAgent(runnable, *, name, description, instructions, tags, metadata)

Create a LangChain chat agent.

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)
description str "langchain chat agent" Description shown in agent metadata
instructions str None System instructions prepended to messages
tags list[str] None Tags for categorizing/filtering agents
metadata dict None Custom metadata merged into agent info

Returns: LangChainChatAgent - A Reminix agent instance

Example with a Chain

from langchain_openai import ChatOpenAI
from langchain_core.prompts import ChatPromptTemplate
from reminix_langchain import LangChainChatAgent
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

# Create and serve
agent = LangChainChatAgent(chain, name="my-chain")
serve(agents=[agent])

Endpoint Input/Output Formats

POST /agents/{name}/invoke

Execute the agent with a prompt or messages.

Request with prompt:

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

Request with messages:

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

Response:

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

Streaming

For streaming responses, set stream: true in the request:

{
  "input": {
    "prompt": "Tell me a story"
  },
  "stream": true
}

The response will be sent as Server-Sent Events (SSE).

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.20.tar.gz (13.6 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.20-py3-none-any.whl (12.3 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: reminix_langchain-0.0.20.tar.gz
  • Upload date:
  • Size: 13.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.7 {"installer":{"name":"uv","version":"0.11.7","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.20.tar.gz
Algorithm Hash digest
SHA256 21cbc7195cedece0cc1279641102668dc262cab644103441d9ca2fb374f38189
MD5 538e9684b6216e350959be6d95fcb830
BLAKE2b-256 d999b2c37a831ca02decc123116d863074d7545bc4a7f5d0c21e56064c72fee0

See more details on using hashes here.

File details

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

File metadata

  • Download URL: reminix_langchain-0.0.20-py3-none-any.whl
  • Upload date:
  • Size: 12.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.7 {"installer":{"name":"uv","version":"0.11.7","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.20-py3-none-any.whl
Algorithm Hash digest
SHA256 f96d2367cc222ac54d6280410f5ebe5422d7856c644288285bc15fa9da3f1c43
MD5 05b5a26449ebb2c94971349b9f9d1df3
BLAKE2b-256 7c54c4ed021b3b1142f4fbdc537226f1e563b0d47dc13e99a15edfe311c1cbc1

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