DEV Community

仪袁韶
仪袁韶

Posted on Originally published at tidelink.xyz

Use GPT-6 Astra, Gemini 3.8 Flash & Claude Fable 5.1 from one OpenAI-compatible endpoint (Sept 2026 model drop)

← All guides

Use GPT-6 Astra, Gemini 3.8 Flash & Claude Fable 5.1 from one OpenAI-compatible endpoint

In 72 hours this September, OpenAI, Google and Anthropic each shipped a new flagship — and the China labs answered with Qwen3.8-Max, Tencent Hy4 and DeepSeek V4 Vision. Here is how to put every one behind a single OpenAI-compatible endpoint, with zero SDK rewrites and automatic failover.

What actually shipped (Sept 1–4, 2026)

It was the busiest model week of the year. Six production-grade models dropped in the same window, all of them OpenAI-compatible at the API level and all supporting tool/function calling:

Model Vendor Context Price (in / out per M tok) Notes
GPT-6 Astra OpenAI 1,050,000 $10 / $50 Released Sep 3; MCP + tool search; Chat Completions & Responses API.
Gemini 3.8 Flash Google 1,048,576 $0.75 / $3.75 GA Sep 2; intro price doubles to $1.50 / $7.50 on Jan 1, 2027.
Claude Fable 5.1 Anthropic 1,000,000 $10 / $50 GA Sep 1; prompt-cache reads cut 75% to $0.25/M.
Qwen3.8-Max-0902 Alibaba 1,000,000 $2 / $6 #1 on Code Arena WebDev leaderboard at launch.
Tencent Hy4 Preview Tencent 1,000,000 from $0.834/M in 770B params, 49B active; open-weight on HuggingFace.
DeepSeek-V4-Flash-Vision-Exp DeepSeek 1,048,576 $0.22 / $0.66 MIT-licensed multimodal V4; top trending on HuggingFace.

Pricing and dates above are sourced from vendor announcements and launch-week coverage: AI Dev Weekly #24, Technspire GPT-6 Astra, Scott Harvanek roundup, HeadsUpAI September and Trending for engineers.

The integration tax nobody budgets for

Every vendor ships its own client, its own auth, its own rate-limit shape and its own status page. Adding one new model is a code branch; adding six is a small platform. Multiply that by the next model drop and your app accrues a permanence of glue code that nobody owns. The cost is not the tokens — it is the wiring.

One endpoint, every model

TideLink aggregates the China-origin flagships natively — Qwen, GLM, Hunyuan, DeepSeek, Doubao and Kimi — behind a single OpenAI-compatible endpoint, and lets you bring your own OpenAI / Anthropic / Google key through BYOK for the Western flagships. You call all of them through the same /v1/chat/completions path with one API key. No per-provider import, no second billing integration.

Drop-in: switch the model field, nothing else

The same OpenAI SDK client reaches every model. Change only model:

from openai import OpenAI

client = OpenAI(
    base_url="https://tidelink.xyz/v1",
    api_key="YOUR_TIDELINK_KEY",
)

# Native China flagship — Qwen3.8-Max
r = client.chat.completions.create(
    model="qwen3.8-max",
    messages=[{"role": "user", "content": "Summarize this changelog."}],
)
print(r.choices[0].message.content)

# Bring-your-own OpenAI key (BYOK) — GPT-6 Astra
r = client.chat.completions.create(
    model="gpt-6-astra",
    messages=[{"role": "user", "content": "Draft a migration plan."}],
)
print(r.choices[0].message.content)

Check the live catalog with GET /v1/models — model strings are passed through transparently to each upstream, so a key you add via BYOK is callable by its native name.

Tool calling still passes through

All six models above support function calling. TideLink forwards the tools argument unchanged, so an agent you wrote for one provider runs on any of them:

r = client.chat.completions.create(
    model="claude-fable-5-1",
    messages=[{"role": "user", "content": "What is the weather in Yuncheng?"}],
    tools=[{
        "type": "function",
        "function": {
            "name": "get_weather",
            "parameters": {"type": "object",
                           "properties": {"city": {"type": "string"}}},
        },
    }],
)
print(r.choices[0].message.tool_calls)

Failover without the pager

When one upstream is degraded, the gateway routes the request to the next healthy provider for the same task — same client, same shape. Streaming works identically:

stream = client.chat.completions.create(
    model="gemini-3.8-flash",
    messages=[{"role": "user", "content": "Explain vector search in 3 bullets."}],
    stream=True,
)
for chunk in stream:
    print(chunk.choices[0].delta.content or "", end="")

Pin your models before prices move

Gemini 3.8 Flash's introductory price expires December 31, 2026 and doubles on January 1, 2027. Fable 5.1's cache cut rewards stable reusable prefixes. The practical move: pin explicit model strings in code (never inherit a managed-agent default silently), meter thinking tokens, and route high-volume traffic to the cheaper China models while keeping the Western flagships for the hard cases. One endpoint makes that a config change, not a rewrite.

TideLink · TideLink is operated by Yuncheng Yanhu Beicheng Chaoxi Network Technology Studio, a sole proprietorship registered in Yuncheng, China (Unified Social Credit Code 92140802MAKM59LT6K), providing software development and IT integration services. Not a resale of third-party credentials.
All guides


Get a free TideLink API key — call GLM, Qwen, DeepSeek and more through one OpenAI-compatible endpoint: https://tidelink.xyz/dashboard.html?cid=devto

Top comments (0)