Skip to main content

Reminix adapter for OpenAI Agents

Project description

reminix-openai

Reminix Runtime adapter for the OpenAI API. Deploy OpenAI models as a REST API.

Installation

pip install reminix-openai

This will also install reminix-runtime as a dependency.

Quick Start

from openai import AsyncOpenAI
from reminix_openai import wrap
from reminix_runtime import serve

# Create an OpenAI client
client = AsyncOpenAI()

# Wrap it with the Reminix adapter
agent = wrap(client, name="my-chatbot", model="gpt-4o")

# 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(client, name, model, max_tokens)

Wrap an OpenAI client for use with Reminix Runtime.

Parameter Type Default Description
client AsyncOpenAI required An OpenAI async client
name str "openai-agent" Name for the agent (used in URL path)
model str "gpt-4o-mini" Model to use for completions

Returns: OpenAIAdapter - A Reminix adapter instance

Example with Custom Configuration

from openai import AsyncOpenAI
from reminix_openai import wrap
from reminix_runtime import serve

client = AsyncOpenAI(
    api_key="your-api-key",
    base_url="https://your-proxy.com/v1"  # Optional: custom endpoint
)

agent = wrap(
    client,
    name="gpt4-agent",
    model="gpt-4o"
)

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": "system", "content": "You are a helpful assistant."},
      {"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.

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_openai-0.0.1.tar.gz (5.9 kB view details)

Uploaded Source

Built Distribution

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

reminix_openai-0.0.1-py3-none-any.whl (4.1 kB view details)

Uploaded Python 3

File details

Details for the file reminix_openai-0.0.1.tar.gz.

File metadata

  • Download URL: reminix_openai-0.0.1.tar.gz
  • Upload date:
  • Size: 5.9 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_openai-0.0.1.tar.gz
Algorithm Hash digest
SHA256 5b90b5ea43857e7c4b0e241d2cba88d9338e63097e39798c2190e94405f4c68f
MD5 9a7197b5cdc910d7154b57874eddd976
BLAKE2b-256 3a752188b4684925a60dd1c7c1a982a31e2274ba329317d5f1ed91300843f33d

See more details on using hashes here.

File details

Details for the file reminix_openai-0.0.1-py3-none-any.whl.

File metadata

  • Download URL: reminix_openai-0.0.1-py3-none-any.whl
  • Upload date:
  • Size: 4.1 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_openai-0.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 4ca21b2b239b3bb123ee56c31a694a8ff4e64d65ec2fe1b58f1bee4fec956df0
MD5 b19dfd108ea5fcfde2dbc08010b7d13c
BLAKE2b-256 73cff1039d0d869f2e1a0086b4ff40d627222789f1b51afd64279feff15faa99

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