Skip to main content

Reminix adapter for OpenAI - serve agents as REST APIs

Project description

reminix-openai

Reminix Runtime adapter for the OpenAI API. Serve OpenAI models 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-openai

This will also install reminix-runtime as a dependency.

Quick Start

from openai import AsyncOpenAI
from reminix_openai import serve_agent

client = AsyncOpenAI()
serve_agent(client, name="my-chatbot", model="gpt-4o", port=8080)

For more flexibility (e.g., serving multiple agents), use wrap_agent and serve separately:

from openai import AsyncOpenAI
from reminix_openai import wrap_agent
from reminix_runtime import serve

client = AsyncOpenAI()
agent = wrap_agent(client, name="my-chatbot", model="gpt-4o")
serve(agents=[agent], port=8080)

Your agent is now available at:

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

API Reference

serve_agent(client, name, model, port, host)

Wrap an OpenAI client and serve it immediately. Combines wrap_agent and serve for single-agent setups.

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
port int 8080 Port to serve on
host str "0.0.0.0" Host to bind to

wrap_agent(client, name, model)

Wrap an OpenAI client for use with Reminix Runtime. Use this with serve from reminix_runtime for multi-agent setups.

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: OpenAIAgentAdapter - A Reminix adapter instance

Example with Custom Configuration

from openai import AsyncOpenAI
from reminix_openai import wrap_agent
from reminix_runtime import serve

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

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

serve(agents=[agent], port=8080)

Endpoint Input/Output Formats

POST /agents/{name}/execute

Execute the agent with a prompt or messages.

Request with prompt:

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

Request with messages:

{
  "messages": [
    {"role": "system", "content": "You are a helpful assistant."},
    {"role": "user", "content": "Hello!"}
  ]
}

Response:

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

Streaming

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

{
  "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_openai-0.0.12.tar.gz (10.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_openai-0.0.12-py3-none-any.whl (8.9 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: reminix_openai-0.0.12.tar.gz
  • Upload date:
  • Size: 10.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.9.26 {"installer":{"name":"uv","version":"0.9.26","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.12.tar.gz
Algorithm Hash digest
SHA256 e9ce5cf168df1b21d4abcecf3433bf4aeea3ea89728f345918ae4bdbff574d3f
MD5 930b112e7733ccb9379e14c5e0d9c655
BLAKE2b-256 9e308293ad4bc3f984149d6cb25722a861f30bb20398a0db7285b5de1ce28e76

See more details on using hashes here.

File details

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

File metadata

  • Download URL: reminix_openai-0.0.12-py3-none-any.whl
  • Upload date:
  • Size: 8.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.9.26 {"installer":{"name":"uv","version":"0.9.26","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.12-py3-none-any.whl
Algorithm Hash digest
SHA256 a9f0fac9f11be46c57fb5b5c190efacd7f10e3ba44736c3dc54c85410c6d8a73
MD5 b3e95eba9afe17e802dd3732fc448f4d
BLAKE2b-256 c61f4a663383db71d5ee7ce42ad0122ecfededc3570ac31ed4f19a73af6b0846

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