selfhost.directory

The index of self-hostable projects — ranked, categorized and served with live updates.
Own your data and stop giving it to big tech.

Open Responses logo

Self-host Open Responses

v0.1

Self-hosted drop-in replacement for OpenAI's Responses API

AlphaOpen SourceApache-2.0
Updatedlast year
LanguageGo
Setup difficultyModerate
Stars
236
Ports
8080 (API server), 8000 (Integrations service)
Requires
PostgreSQL (TimescaleDB)
Docker
julepai/agents-api
Install with Docker Compose

What is Open Responses?

Open Responses runs a server that implements the OpenAI Responses API specification, letting you use models from Anthropic, Alibaba, DeepSeek, Ollama, and other providers. The project is open-source under Apache-2.0 and developed by the Julep AI team. It deploys via Docker Compose with TimescaleDB for storage and includes a management UI. A CLI simplifies setup, start, stop, and key management. Built-in tools include web search via Brave Search, with file search partially implemented and computer use planned. The API integrates with OpenAI's Agents SDK and official SDKs. Currently in Alpha (v0.1).

Should you self-host Open Responses?

Open Responses scores 42/100 on selfhost.directory (how scoring works) and ranks #95 of 125 in AI. It has 236 GitHub stars.

There was no stable release in the past 12 months, so check the repository's recent activity before you rely on it.

Setup is moderate: expect some configuration beyond a single command. An official Docker image is available. It is Apache-2.0-licensed and written mostly in Go.

Its closest alternative on selfhost.directory is Text Generation WebUI (76/100, 47 724 stars). It scores higher overall, so compare the two before you pick. See Open Responses vs Text Generation WebUI side by side.

Features

  • Agents SDK Integration
  • API Key Authentication
  • Built-in Web Search Tool
  • CLI management
  • Conversation history
  • File Search SupportPartially implemented per concepts documentation
  • Function Calling
  • Management UI
  • Multi-modal Input
  • Multi-Provider LLM Support
  • OpenAI Responses API compatibility
  • Rate Limiting

Open Responses README

How to install Open Responses

Install Open Responses with Docker Compose

Environment variables
RESPONSES_API_KEY, MEMORY_STORE_PASSWORD, OPENAI_API_KEY, UNSTRUCTURED_API_KEY, BRAVE_API_KEY, and optional provider keys

mkdir julep-responses-api cd julep-responses-api wget https://u.julep.ai/responses-env.example -O .env wget https://u.julep.ai/responses-compose.yaml -O docker-compose.yml docker compose up --watch

Requires Docker and Docker Compose v2.21.0+

How to configure Open Responses

  • ANTHROPIC_API_KEYAnthropic API Key

    Anthropic API Key

  • BRAVE_API_KEYBrave Search API Key (for web search tool)

    Brave Search API Key (for web search tool)

  • CEREBRAS_API_KEYCerebras API Key

    Cerebras API Key

  • CLOUDFLARE_ACCOUNT_IDCloudflare Account ID

    Cloudflare Account ID

  • CLOUDFLARE_API_KEYCloudflare API Key

    Cloudflare API Key

  • EMBEDDING_MODEL_IDopenai/text-embedding-3-largeEmbedding model ID

    Embedding model ID

  • ENABLE_RESPONSESTrueEnable Responses API

    Enable Responses API

  • GEMINI_API_KEYGemini API Key

    Gemini API Key

  • GITHUB_API_KEYGitHub API Key

    GitHub API Key

  • GOOGLE_APPLICATION_CREDENTIALSGoogle Application Credentials

    Google Application Credentials

  • GROQ_API_KEYGroq API Key

    Groq API Key

  • INTEGRATION_SERVICE_URLhttp://integrations:8000Integration service URL

    Integration service URL

  • LLAMA_API_KEYLlama API Key

    Llama API Key

  • LOG_LEVELinfoLogging level

    Logging level

  • MAX_PAYLOAD_SIZE10mbMaximum request payload size

    Maximum request payload size

  • MEMORY_STORE_PASSWORD<random>Memory Store (PostgreSQL) Password

    Memory Store (PostgreSQL) Password

  • NODE_ENVproductionNode.js environment

    Node.js environment

  • NVIDIA_NIM_API_KEYNVIDIA NIM API Key

    NVIDIA NIM API Key

  • OPENAI_API_KEYOpenAI API Key (needed for embeddings and file parsing)

    OpenAI API Key (needed for embeddings and file parsing)

  • OPENROUTER_API_KEYOpenRouter API Key

    OpenRouter API Key

  • PG_DSNpostgres://postgres:${MEMORY_STORE_PASSWORD}@memory-store:5432/postgresPostgreSQL connection string

    PostgreSQL connection string

  • RATE_LIMIT_MAX100Maximum requests per rate limit window

    Maximum requests per rate limit window

  • RATE_LIMIT_WINDOW60000Rate limit window in ms

    Rate limit window in ms

  • REQUEST_TIMEOUT120000API request timeout in ms

    API request timeout in ms

  • RESPONSES_API_KEYresp_<random>Responses API Key for authentication

    Responses API Key for authentication

  • RESPONSES_API_KEY_HEADER_NAMEAuthorizationAPI key header name

    API key header name

  • RESPONSES_API_PORT8080Port for the Responses API

    Port for the Responses API

  • UNSTRUCTURED_API_KEYUnstructured API Key (for file parsing)

    Unstructured API Key (for file parsing)

  • VOYAGE_API_KEYVoyage API Key

    Voyage API Key

Open Responses releases & version history

More in LLM Integration

Rate this project

Click to rate — no account needed.

0 comments

Posting as guest
Loading comments…