Skip to content

How to use with Cerebras (OpenAI compatible API)? #78

Description

@Hurricane31337

I've tried this .env:

# Required API Keys
OPENAI_API_KEY="csk-xxx"

PREFERRED_PROVIDER="openai"
OPENAI_BASE_URL="https://api.cerebras.ai/v1"
BIG_MODEL="zai-glm-4.7"
SMALL_MODEL="qwen-3-32b"

Claude settings.json:

{
    "env": {
        "ANTHROPIC_AUTH_TOKEN": "csk-xxx",
        "ANTHROPIC_BASE_URL": "http://localhost:8082",
        "API_TIMEOUT_MS": "3000000"
    }
}

But it seems to request openai.com instead of https://api.cerebras.ai/v1 (as set via OPENAI_BASE_URL):

Give Feedback / Get Help: https://github.com/BerriAI/litellm/issues/new
LiteLLM.Info: If you need to debug this error, use `litellm._turn_on_debug()'.

2026-01-28 01:29:52,275 - ERROR - Error processing request: {
  "error": "litellm.BadRequestError: OpenAIException - Wrong API Key",
  "type": "BadRequestError",
  "traceback": "Traceback (most recent call last):\n  File \"C:\\Users\\Kersten\\Documents\\Coding\\AI\\claude-code-proxy\\.venv\\lib\\site-packages\\litellm\\llms\\openai\\openai.py\", line 1008, in async_streaming\n    headers, response = await self.make_openai_chat_completion_request(\n  File \"C:\\Users\\Kersten\\Documents\\Coding\\AI\\claude-code-proxy\\.venv\\lib\\site-packages\\litellm\\litellm_core_utils\\logging_utils.py\", line 190, in async_wrapper\n    result = await func(*args, **kwargs)\n  File \"C:\\Users\\Kersten\\Documents\\Coding\\AI\\claude-code-proxy\\.venv\\lib\\site-packages\\litellm\\llms\\openai\\openai.py\", line 460, in make_openai_chat_completion_request\n    raise e\n  File \"C:\\Users\\Kersten\\Documents\\Coding\\AI\\claude-code-proxy\\.venv\\lib\\site-packages\\litellm\\llms\\openai\\openai.py\", line 437, in make_openai_chat_completion_request\n    await openai_aclient.chat.completions.with_raw_response.create(\n  File \"C:\\Users\\Kersten\\Documents\\Coding\\AI\\claude-code-proxy\\.venv\\lib\\site-packages\\openai\\_legacy_response.py\", line 381, in wrapped\n    return cast(LegacyAPIResponse[R], await func(*args, **kwargs))\n  File \"C:\\Users\\Kersten\\Documents\\Coding\\AI\\claude-code-proxy\\.venv\\lib\\site-packages\\openai\\resources\\chat\\completions\\completions.py\", line 2678, in create\n    return await self._post(\n  File \"C:\\Users\\Kersten\\Documents\\Coding\\AI\\claude-code-proxy\\.venv\\lib\\site-packages\\openai\\_base_client.py\", line 1881, in post\n    return await self.request(cast_to, opts, stream=stream, stream_cls=stream_cls)\n  File \"C:\\Users\\Kersten\\Documents\\Coding\\AI\\claude-code-proxy\\.venv\\lib\\site-packages\\openai\\_base_client.py\", line 1666, in request\n    raise self._make_status_error_from_response(err.response) from None\nopenai.AuthenticationError: Error code: 401 - {'message': 'Wrong API Key', 'type': 'invalid_request_error', 'param': 'api_key', 'code': 'wrong_api_key'}\n\nDuring handling of the above exception, another exception occurred:\n\nTraceback (most recent call last):\n  File \"C:\\Users\\Kersten\\Documents\\Coding\\AI\\claude-code-proxy\\.venv\\lib\\site-packages\\litellm\\main.py\", line 622, in acompletion\n    response = await init_response\n  File \"C:\\Users\\Kersten\\Documents\\Coding\\AI\\claude-code-proxy\\.venv\\lib\\site-packages\\litellm\\llms\\openai\\openai.py\", line 1058, in async_streaming\n    raise OpenAIError(\nlitellm.llms.openai.common_utils.OpenAIError: Error code: 401 - {'message': 'Wrong API Key', 'type': 'invalid_request_error', 'param': 'api_key', 'code': 'wrong_api_key'}\n\nDuring handling of the above exception, another exception occurred:\n\nTraceback (most recent call last):\n  File \"C:\\Users\\Kersten\\Documents\\Coding\\AI\\claude-code-proxy\\server.py\", line 1303, in create_message\n    response_generator = await litellm.acompletion(**litellm_request)\n  File \"C:\\Users\\Kersten\\Documents\\Coding\\AI\\claude-code-proxy\\.venv\\lib\\site-packages\\litellm\\utils.py\", line 2032, in wrapper_async\n    raise e\n  File \"C:\\Users\\Kersten\\Documents\\Coding\\AI\\claude-code-proxy\\.venv\\lib\\site-packages\\litellm\\utils.py\", line 1848, in wrapper_async\n    result = await original_function(*args, **kwargs)\n  File \"C:\\Users\\Kersten\\Documents\\Coding\\AI\\claude-code-proxy\\.venv\\lib\\site-packages\\litellm\\main.py\", line 650, in acompletion\n    raise exception_type(\n  File \"C:\\Users\\Kersten\\Documents\\Coding\\AI\\claude-code-proxy\\.venv\\lib\\site-packages\\litellm\\litellm_core_utils\\exception_mapping_utils.py\", line 2378, in exception_type\n    raise e\n  File \"C:\\Users\\Kersten\\Documents\\Coding\\AI\\claude-code-proxy\\.venv\\lib\\site-packages\\litellm\\litellm_core_utils\\exception_mapping_utils.py\", line 444, in exception_type\n    raise BadRequestError(\nlitellm.exceptions.BadRequestError: litellm.BadRequestError: OpenAIException - Wrong API Key\n",
  "message": "litellm.BadRequestError: OpenAIException - Wrong API Key",
  "status_code": 401,
  "response": {
    "status_code": 401,
    "headers": {
      "_list": [],
      "_encoding": "ascii"
    },
    "_request": {
      "method": "POST",
      "url": {
        "_uri_reference": [
          "https",
          "",
          "api.openai.com",
          null,
          "/v1",
          null,
          null
        ]
      },
      "headers": {
        "_list": [
          "(b'Host', b'host', b'api.openai.com')",
          "(b'Content-Length', b'content-length', b'0')"
        ],
        "_encoding": null
      },
      "extensions": {},
      "stream": {
        "_stream": "b''"
      },
      "_content": "b''"
    },
    "next_request": null,
    "extensions": {},
    "history": [],
    "is_closed": true,
    "is_stream_consumed": true,
    "default_encoding": "utf-8",
    "stream": {
      "_stream": "b''"
    },
    "_decoder": {},
    "_num_bytes_downloaded": 0,
    "_content": "b''"
  },
  "llm_provider": "openai",
  "model": "openai/zai-glm-4.7",
  "litellm_debug_info": "\nModel: openai/zai-glm-4.7\nAPI Base: `https://api.cerebras.ai/v1`\nMessages: `[{'role': 'system', 'content': 'You are Claude Code, Anthropic\\'s official CLI for Claude.\\n\\n\\nYou `",
  "max_retries": "None",
  "num_retries": "None",
  "request": "<Request('POST', 'https://api.openai.com/v1')>",
  "body": "{'message': 'Wrong API Key', 'type': 'invalid_request_error', 'param': 'api_key', 'code': 'wrong_api_key'}",
  "code": "wrong_api_key",
  "param": "api_key",
  "request_id": "None",
  "litellm_response_headers": "Headers({'date': 'Wed, 28 Jan 2026 00:29:52 GMT', 'content-type': 'application/json', 'content-length': '99', 'connection': 'keep-alive', 'server': 'cloudflare', 'referrer-policy': 'strict-origin-when-cross-origin', 'x-content-type-options': 'nosniff', 'strict-transport-security': 'max-age=3600; includeSubDomains', 'cf-cache-status': 'DYNAMIC', 'set-cookie': '__cf_bm=e3wyXroQbrK4ZJcHbx7X89IOLcMc0xuHXgeWNt3xAjM-1769560192.0061324-1.0.1.1-mVWQOH7zeh0g_ht1HEnbu7sGYHMtSF6NhBp_pR46Maz_linWRb8jpqw1M11jQYZP4T_C.wI0z5lisEpTgQ2izwNGSzCpZgEmMBff1vTN318TBpgcFAZpsmXldOVwfNkp; HttpOnly; Secure; Path=/; Domain=cerebras-sandbox.net; Expires=Wed, 28 Jan 2026 00:59:52 GMT', 'cf-ray': '9c4c60c008df4f64-DUS', 'alt-svc': 'h3=\":443\"; ma=86400'})",
  "timeout": "None"
}

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions