Baltor Get started

Endpoints

QiHang

A hosted service with its own key and prices. This page lists the addresses it answers, the facts its documentation states, and the setup of each harness.

Addresses and facts

  • OpenAI Chat Completions: https://api.qhaigc.net/v1 models.dev, read
Authentication
Authorization: Bearer, with the key in QIHANG_API_KEY models.dev, read
Structured output
Unknown
Tool calling
9 of 9 listed models The share of this provider's models that models.dev records with tool calling. models.dev, read
Rate limits
Unknown
Prices
Unknown
Data retention
Unknown
Documentation
Read the page models.dev, read
Output limits Baltor recorded
Unknown

Harness setup

Replace claude-haiku-4-5-20251001 with the model you want.

OpenCode

Put this in opencode.json in your project folder:

{
  "$schema": "https://opencode.ai/config.json",
  "provider": {
    "qihang-ai": {
      "npm": "@ai-sdk/openai-compatible",
      "name": "QiHang",
      "options": {
        "baseURL": "https://api.qhaigc.net/v1",
        "apiKey": "{env:QIHANG_API_KEY}"
      },
      "models": {
        "claude-haiku-4-5-20251001": {
          "name": "claude-haiku-4-5-20251001"
        }
      }
    }
  }
}
  • OpenCode reads any OpenAI-compatible address through the @ai-sdk/openai-compatible package, and an address that speaks the Responses API through @ai-sdk/openai.

From OpenCode documentation, read .

Pi

Put this in ~/.pi/agent/models.json:

{
  "providers": {
    "qihang-ai": {
      "baseUrl": "https://api.qhaigc.net/v1",
      "api": "openai-completions",
      "apiKey": "$QIHANG_API_KEY",
      "models": [
        {
          "id": "claude-haiku-4-5-20251001"
        }
      ]
    }
  }
}
  • The apiKey field can name an environment variable as $NAME.

From Pi documentation, read .

Codex

Codex speaks only the Responses API, and QiHang documents no Responses address. A gateway that offers one can sit in between.

  • Codex speaks the Responses API only: responses is the one supported wire API of a custom provider. Ollama and LM Studio are built in and start with --oss.

From Codex documentation, read .

Claude Code

Claude Code sends Anthropic Messages requests, and QiHang documents no such address. A gateway that translates to that API can sit in between.

  • Claude Code sends Anthropic Messages requests to ANTHROPIC_BASE_URL. Anthropic says it does not support routing Claude Code to models other than Claude through any gateway, so some features may not work with another model.

From Claude Code documentation, read .

Models it lists

Prices in US dollars per million tokens, input and output, as models.dev, read records them.

ModelInputOutputContextAs of
Claude Haiku 4.5 claude-haiku-4-5-202510010.140 USD0.710 USD200,000 older than 30 days
Claude Opus 4.5 claude-opus-4-5-202511010.710 USD3.57 USD200,000 older than 30 days
Claude Sonnet 4.5 claude-sonnet-4-5-202509290.430 USD2.14 USD200,000 older than 30 days
Gemini 2.5 Flash gemini-2.5-flash0.090 USD0.710 USD1,048,576 older than 30 days
Gemini 3 Flash Preview gemini-3-flash-preview0.070 USD0.430 USD1,048,576 older than 30 days
Gemini 3 Pro Preview gemini-3-pro-preview0.570 USD3.43 USD1,000,000 older than 30 days
GPT-5-Mini gpt-5-mini0.040 USD0.290 USD200,000 older than 30 days
GPT-5.2 gpt-5.20.250 USD2.00 USD400,000 older than 30 days
GPT-5.2 Codex gpt-5.2-codex0.140 USD1.14 USD400,000 older than 30 days

Sources of this page