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.22.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.22-py3-none-any.whl (12.3 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: reminix_langchain-0.0.22.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.22.tar.gz
Algorithm Hash digest
SHA256 f92f36c7a54a4732f7f13f9117b8732a227e3e260d28a57d95a133746e64dd78
MD5 c2f1f060917fa7d24e6ecea33b08db81
BLAKE2b-256 2d22318a7d0c79e8f43626ba91599c43dd72b6632b52bcb2ace3c2b892555f89

See more details on using hashes here.

File details

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

File metadata

  • Download URL: reminix_langchain-0.0.22-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.22-py3-none-any.whl
Algorithm Hash digest
SHA256 7443bc707a35d422b2fd2fae870da1ffdea190f50dab3b974b004ef43d9db1ac
MD5 ae488eb015323e309a1fc69b4392e8cd
BLAKE2b-256 85a084228cd5e74752619d3c0587b3c9c1f219678c93a6ae61d7441250fa1862

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