Skip to main content

LobeHub with OpenCheese

/ API docs

← API quickstartView as Markdown

LobeHub (formerly LobeChat) reaches OpenCheese through a provider entry in its settings. Three entries work; their addresses differ, because each SDK appends a different path.

Provider entry Address to enter
New API (recommended) https://api.opencheese.dev
OpenAI https://api.opencheese.dev/v1
Anthropic https://api.opencheese.dev (without /v1)

Paste your OpenCheese API key into the entry's API key field and fetch the model list: LobeHub reads /v1/models.

New API

The New API entry speaks the right format for each model: the Anthropic format for Claude models, the Responses API for GPT models, and Chat Completions for the rest. Each LobeHub topic appears in the dashboard as one session.

One exception: models LobeHub recognises as Gemini are sent in Google's own format, which OpenCheese does not serve. Use those through the OpenAI entry.

OpenAI and Anthropic

The OpenAI entry sends every model through Chat Completions; the address must end in /v1. The Anthropic entry is for Claude models only. With these two entries each request shows as its own session in the dashboard.

The Check button

Check sends one test message with a model LobeHub picks, not the one you added:

  • LobeHub 1.x checks with a hardcoded model that OpenCheese does not have, so the check fails while chat works.
  • LobeHub 2.x has a model dropdown beside Check: choose an OpenCheese model there.

A failed check with "Model ... does not exist on OpenCheese" therefore says nothing about your setup. Send a message in a chat instead, or check the key from a terminal:

bash
curl -s https://api.opencheese.dev/v1/models \
  -H "Authorization: Bearer $OPENCHEESE_API_KEY" | jq -r '.data[].id'

What does not work

  • Memory needs an embeddings endpoint, which OpenCheese does not offer: LobeHub's memory search quietly finds nothing.
  • System tasks such as topic titles use LobeHub's own default model until you point them at an OpenCheese model under Settings → System Tasks (called System Agent in older versions).

LobeHub in Docker

When LobeHub runs in Docker with Use Client Request Mode off, its server makes the requests from inside the container: https://api.opencheese.dev works, while a localhost address means the container itself.

The cheese has holes. Your infrastructure should not.