inference-providers

Solar Pro 4

by upstage · family solar

Facts

Release date2026-08-10
Retired date
Knowledge cutoff
Context (max)524,288
Max output
Modalitiestext → text
Aliasessolar-pro4solar-pro4-20260810
Open weightsno
DescriptionUpstage's current flagship reasoning model (Korean-optimized); 524K context, 131K output, tool calling. List $0.30/$1.20 per Mtok with a 90%-off promo ($0.03/$0.12) through ~2026-09-10; cache read $0.006. Reasoning supported; native control parameter undocumented. Params undisclosed; open sibling is Solar-Open2-250B.

Unknown values are shown as —.

Offerings

ProviderWire IDVariantEndpointProtocolStatusPrice (USD / Mtok)Reasoning
OpenRouterupstage/solar-pro4chat-completionsopenai-chatga0.30 / 1.20adaptive · default on · returns reasoning_content

Reasoning controls

OpenRouter· upstage/solar-pro4· chat-completions adaptive

adaptive · default on · returns reasoning_content

Example requests

OpenRouter · openai-chat · upstage/solar-pro4

curl 'https://openrouter.ai/api/v1/chat/completions' \
  -H 'Authorization: Bearer <YOUR_API_KEY>' \
  -H 'Content-Type: application/json' \
  -d '{
  "model": "upstage/solar-pro4",
  "messages": [
    {
      "role": "user",
      "content": "Tell me about the weather."
    }
  ]
}'
Python (requests)
import requests

resp = requests.post(
    "https://openrouter.ai/api/v1/chat/completions",
    headers={
      "Authorization": "Bearer <YOUR_API_KEY>",
      "Content-Type": "application/json"
    },
    json={
      "model": "upstage/solar-pro4",
      "messages": [
        {
          "role": "user",
          "content": "Tell me about the weather."
        }
      ]
    },
)
print(resp.json())
TypeScript (fetch)
const resp = await fetch("https://openrouter.ai/api/v1/chat/completions", {
  method: "POST",
  headers: {
    "Authorization": "Bearer <YOUR_API_KEY>",
    "Content-Type": "application/json"
  },
  body: JSON.stringify({
    "model": "upstage/solar-pro4",
    "messages": [
      {
        "role": "user",
        "content": "Tell me about the weather."
      }
    ]
  }),
})
console.log(await resp.json())