Cara Menggunakan API ERNIE 5.5 Flash dengan Qianfan dan OpenRouter

ERNIE 5.5 Flash Preview sudah bisa dipanggil hari ini di Baidu Qianfan dan gratis di OpenRouter. Berikut cara mendapatkan API key, mengirim request, melakukan streaming, menangani reasoning token dan context window 1M, serta memperbaiki error yang kemungkinan akan Anda temui.

INEZA Felin-Michel

INEZA Felin-Michel

12 November 2026

Cara Menggunakan API ERNIE 5.5 Flash dengan Qianfan dan OpenRouter

Apidog untuk Perusahaan

Penerapan On-Premises

SSO & RBAC

Sesuai SOC 2

Jelajahi Apidog Enterprise

API ERNIE 5.5 Flash kini tersedia di dua tempat: Baidu Qianfan, tempat Anda memanggil ernie-5.5-flash-preview di https://qianfan.baidubce.com/v2/chat/completions, dan OpenRouter, tempat baidu/ernie-5.5-flash-preview:free berbiaya $0 per token. Keduanya menggunakan format OpenAI Chat Completions, jadi Anda bisa mengarahkan SDK resmi OpenAI ke salah satunya hanya dengan mengganti base URL, API key, dan nama model.

Di bawah ini: API key, request pertama dalam curl, Python, dan JavaScript, streaming, token reasoning, jendela konteks 1M, serta penanganan error. Setiap field dan batasan diambil dari halaman resmi Qianfan dan OpenRouter, diverifikasi pada 12 November 2026.

Untuk latar belakang, baca apa itu ERNIE 5.5 Flash, atau panduan API ERNIE 5.1 untuk generasi sebelumnya.

Apa itu API ERNIE 5.5 Flash?

API ERNIE 5.5 Flash adalah endpoint yang di-hosting oleh Baidu untuk ERNIE 5.5 Flash Preview, sebuah model sparse mixture-of-experts dengan total 280B parameter, 14B parameter aktif per token, dan konteks 1 juta token. Baidu merilisnya pada 11 November 2026 sebagai model pasca-pelatihan pertama yang dibangun di atas ERNIE 5.5 Flash Base, dan menyajikannya melalui Qianfan serta OpenRouter.

Postingan rilis Baidu menawarkannya untuk coding, pekerjaan agentic, pemodelan 3D, pengetahuan, dan pembuatan konten. Baidu menyebut model ini sebagai intermediate checkpoint, jadi bersiaplah bila perilakunya berubah, dan menyatakan bobot model akan di-open-source di bawah lisensi Apache 2.0 "segera", tanpa tanggal pasti.

Qianfan vs OpenRouter: endpoint mana yang sebaiknya Anda gunakan?

Berikut perbandingan kedua jalur tersebut, berdasarkan informasi yang dipublikasikan masing-masing platform saat ini.

Baidu Qianfan OpenRouter
Base URL https://qianfan.baidubce.com/v2 https://openrouter.ai/api/v1
Model ID ernie-5.5-flash-preview baidu/ernie-5.5-flash-preview:free
Header autentikasi Authorization: Bearer <API key Qianfan> Authorization: Bearer <API key OpenRouter>
Konteks 1M input, 1M output 1.024.000 token
Harga Ditagihkan ke saldo Baidu AI Cloud Anda; konsol menampilkan tarifnya $0 pada varian :free
Batasan default 300 request/menit, 3.000.000 token/menit 20 request/menit; 50/hari, atau 1.000/hari setelah pembelian kredit $10
Reasoning Selalu aktif, effort tetap di high Dikendalikan melalui objek reasoning
Diagram of the two routes to ERNIE 5.5 Flash Preview: your app calls OpenRouter with model baidu/ernie-5.5-flash-preview:free, which forwards to Baidu Qianfan, or calls Baidu Qianfan directly with model ernie-5.5-flash-preview

OpenRouter hanya mencantumkan satu penyedia, yaitu Baidu Qianfan, jadi kedua jalur menuju backend yang sama. Perbedaan sebenarnya terletak pada batasan: tier gratis OpenRouter cocok untuk prototyping dan evaluasi, sedangkan batas default 300 RPM Qianfan cocok untuk production. Panduan ERNIE 5.5 Flash gratis membahas jalur-jalur $0 ini lebih mendalam.

Bagaimana cara mendapatkan API key ERNIE 5.5 Flash?

Qianfan

  1. Masuk ke konsol Qianfan dengan akun Baidu AI Cloud.
  2. Buka API Key di bawah manajemen sistem dan buat sebuah key. Bentuknya seperti bce-v3/ALTAK-....
  3. Ekspor key tersebut: export QIANFAN_API_KEY="bce-v3/ALTAK-...".

Qianfan menagih setiap panggilan ke saldo Baidu AI Cloud Anda. Saldo negatif akan mengembalikan error 403 account_overdue, jadi isi saldo sebelum melakukan load test.

OpenRouter

  1. Buat akun dan API key di OpenRouter.
  2. Ekspor key tersebut: export OPENROUTER_API_KEY="sk-or-v1-...".
  3. Gunakan model ID baidu/ernie-5.5-flash-preview:free.

Kirim request ERNIE 5.5 Flash pertama Anda

curl

Qianfan:

curl https://qianfan.baidubce.com/v2/chat/completions \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer $QIANFAN_API_KEY" \
  -d '{
    "model": "ernie-5.5-flash-preview",
    "messages": [
      {"role": "system", "content": "You are a concise senior engineer."},
      {"role": "user", "content": "Write a Python function that validates an ISO 8601 date."}
    ]
  }'

OpenRouter:

curl https://openrouter.ai/api/v1/chat/completions \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer $OPENROUTER_API_KEY" \
  -d '{
    "model": "baidu/ernie-5.5-flash-preview:free",
    "messages": [
      {"role": "user", "content": "Write a Python function that validates an ISO 8601 date."}
    ]
  }'

Python

Instal SDK dengan pip install openai, lalu ganti base URL sesuai penyedia:

import os
from openai import OpenAI

PROVIDERS = {
    "qianfan": ("https://qianfan.baidubce.com/v2", "QIANFAN_API_KEY", "ernie-5.5-flash-preview"),
    "openrouter": ("https://openrouter.ai/api/v1", "OPENROUTER_API_KEY", "baidu/ernie-5.5-flash-preview:free"),
}

base_url, key_env, model = PROVIDERS["qianfan"]
client = OpenAI(base_url=base_url, api_key=os.environ[key_env])

resp = client.chat.completions.create(
    model=model,
    messages=[{"role": "user", "content": "Explain idempotency keys in two sentences."}],
    max_completion_tokens=4096,
)
print(resp.choices[0].message.content)
print(resp.usage)

JavaScript

import OpenAI from "openai";

const client = new OpenAI({
  baseURL: "https://openrouter.ai/api/v1",
  apiKey: process.env.OPENROUTER_API_KEY,
});

const resp = await client.chat.completions.create({
  model: "baidu/ernie-5.5-flash-preview:free",
  messages: [{ role: "user", content: "List three causes of HTTP 499 errors." }],
});
console.log(resp.choices[0].message.content);

Bagaimana cara melakukan streaming respons ERNIE 5.5 Flash?

Tambahkan "stream": true dan kedua penyedia akan mengembalikan server-sent events yang diakhiri dengan data: [DONE]. Di Qianfan, tambahkan "stream_options": {"include_usage": true} untuk mendapatkan jumlah token pada chunk terakhir. Jika Anda baru mengenal format ini, panduan streaming SSE menjelaskan format wire-nya.

stream = client.chat.completions.create(
    model=model,
    messages=[{"role": "user", "content": "Draft a README for a CLI tool."}],
    stream=True,
    stream_options={"include_usage": True},
)
for chunk in stream:
    if chunk.choices:
        delta = chunk.choices[0].delta
        thinking = getattr(delta, "reasoning_content", None)
        if thinking:
            print(f"[thinking] {thinking}", end="", flush=True)
        if delta.content:
            print(delta.content, end="", flush=True)
    if chunk.usage:
        print("\n", chunk.usage)

Gunakan streaming secara default: model ini melakukan reasoning sebelum menjawab, sehingga panggilan blocking bisa terdiam cukup lama.

Bagaimana cara kerja token reasoning di masing-masing penyedia?

ERNIE 5.5 Flash Preview adalah model reasoning, dan kedua platform mengeksposnya secara berbeda.

Di Qianfan, dokumentasi deep-thinking mencantumkan ernie-5.5-flash-preview sebagai "hanya bisa diaktifkan, tidak bisa dinonaktifkan" untuk parameter thinking, dengan default reasoning_effort high yang "tidak dapat diubah". Jadi Anda tidak bisa mematikan reasoning atau menurunkan levelnya di sini. Chain of thought dikembalikan dalam reasoning_content, terpisah dari content. Qianfan menghitungnya di dalam max_completion_tokens, jadi batas yang terlalu ketat dapat memotong jawaban akhir dan menyisakan finish_reason: "length".

Di OpenRouter, Anda mengendalikan reasoning dengan objek reasoning dan membaca trace dari reasoning_details. Untuk menyembunyikan trace dari respons:

{
  "model": "baidu/ernie-5.5-flash-preview:free",
  "reasoning": { "exclude": true },
  "messages": [{ "role": "user", "content": "Is 2^61 - 1 prime?" }]
}

Dalam percakapan multi-turn, OpenRouter meminta Anda mengembalikan seluruh reasoning_details bersama pesan asisten agar model bisa melanjutkan dari posisi terakhirnya. Jumlah token reasoning muncul di usage.completion_tokens_details.reasoning_tokens.

Tips untuk jendela konteks 1 juta token

Satu juta token bisa menampung sebuah codebase berukuran menengah. Empat kebiasaan berikut menjaga panggilan panjang tetap terprediksi:

  1. Hitung anggaran berdasarkan token per menit, bukan hanya request. Default Qianfan adalah 3.000.000 TPM, jadi tiga prompt penuh 1 juta token dalam satu menit sudah menghabiskan seluruh kuota. Pantau X-Ratelimit-Remaining-Input-Tokens pada setiap respons.
  2. Letakkan konten yang stabil di awal. Tempatkan system prompt dan dokumen referensi di bagian awal serta pertanyaan yang berubah-ubah di akhir, agar prefix yang berulang bisa mengenai cache. OpenRouter mencatat tingkat cache hit 90,83% untuk model ini pada 12 November.
  3. Sisakan ruang untuk reasoning. Atur max_completion_tokens cukup tinggi untuk menampung proses berpikir ditambah jawaban.
  4. Ukur sebelum memercayai klaim kecepatan. Baidu menyatakan model ini menghasilkan lebih dari 200 token per detik. Pada endpoint gratis OpenRouter, throughput P50 pada 12 November adalah 79 token per detik, dengan latensi P50 sebesar 2,53 detik.

Untuk structured output, lakukan pengujian ketat sebelum rilis. OpenRouter menerima response_format dengan skema JSON, tetapi halamannya melaporkan tingkat error structured-output sebesar 21,70% untuk model ini selama tiga hari, dibandingkan tingkat error tool-call sebesar 1,01%. Validasi setiap respons JSON, dan lakukan retry jika parsing gagal.

Error dan rate limit API ERNIE 5.5 Flash

Berikut kode-kode yang paling sering muncul, diambil dari tabel kode error Qianfan dan halaman batasan OpenRouter:

Status Penyedia Kode atau penyebab Solusi
400 Qianfan tokens_too_long Pangkas prompt agar di bawah batas input 1M
401 Qianfan invalid_iam_token Key salah atau kedaluwarsa, atau prefix Bearer hilang
401 Qianfan invalid_model Pastikan model ID tepat ernie-5.5-flash-preview
403 Qianfan account_overdue Saldo di bawah nol; isi ulang saldo
429 Qianfan rpm_rate_limit_exceeded, tpm_rate_limit_exceeded Kurangi laju request; kuota diperbarui dalam 60 detik
402 OpenRouter Saldo kredit negatif Tambah kredit, bahkan untuk varian :free
429 OpenRouter Batas model gratis (20/menit, 50 atau 1.000/hari) Baca X-RateLimit-Reset, atau cek GET /api/v1/key

Di OpenRouter, GET https://openrouter.ai/api/v1/key mengembalikan free_model_daily_requests.remaining. Lakukan retry untuk 429 dengan exponential backoff dan jitter; jangan pernah melakukan retry untuk 400 atau 401.

Minta coding agent Anda menguji kedua endpoint dengan Apidog CLI

Setelah kedua penyedia merespons, Anda perlu bukti bahwa keduanya terus merespons dengan benar: status tepat, struktur tepat, latensi wajar. Serahkan itu pada coding agent Anda. Apidog CLI memberi Claude Code, Codex, Cursor, atau OpenCode perintah untuk mengimpor endpoint, menyimpan environment per penyedia, dan menjalankan skenario pengujian terhadap masing-masing.

Workflow diagram: a coding agent drives Apidog CLI, which runs the same test scenario against a Qianfan environment and an OpenRouter environment, and the test report flows back to the agent

Penyiapan cukup sekali:

npm install -g apidog-cli@latest
apidog auth login --with-token <YOUR_APIDOG_TOKEN>
apidog skill install

Lalu berikan satu prompt kepada agent Anda:

Write an OpenAPI 3 file for POST /chat/completions that matches the ERNIE 5.5 Flash
request and response shape (model, messages, stream; choices[0].message.content, usage).
Import it into Apidog project <projectId>. Create two environments: "qianfan" with base
URL https://qianfan.baidubce.com/v2 and "openrouter" with https://openrouter.ai/api/v1,
each with a "model" variable. Build one test scenario that sends a short prompt and
asserts status 200, the response schema, and a response time under 30 seconds. Run it
against both environments, passing the API keys as environment variables, and summarize
any failures.

Agent akan memeriksa setiap skema, memvalidasi payload-nya, dan menjalankan perintah seperti berikut:

apidog import --project <projectId> --format openapi --file ./ernie-5-5-flash.openapi.yaml
apidog environment create qianfan --project <projectId> --base-url https://qianfan.baidubce.com/v2
apidog environment create openrouter --project <projectId> --base-url https://openrouter.ai/api/v1
apidog cli-schema get test-scenario-create
apidog test-scenario create --project <projectId> --name "ERNIE 5.5 Flash smoke" --folder-id <folderId> --priority <priority>
apidog test-scenario import-steps <scenarioId> --project <projectId> --source endpoint --ids <endpointId> --sync manual
apidog run -t <scenarioId> --project <projectId> -e <qianfanEnvId> --env-var "apiKey=$QIANFAN_API_KEY" -r cli,json
apidog run -t <scenarioId> --project <projectId> -e <openrouterEnvId> --env-var "apiKey=$OPENROUTER_API_KEY" -r cli,json

Meneruskan key dengan --env-var menjaga key tetap tidak tersimpan di proyek, dan satu skenario memberi Anda pembacaan berdampingan untuk kedua jalur. Perintah apidog run yang sama dengan -r junit bisa langsung dipakai dalam pipeline; panduan CI/CD Apidog CLI menunjukkan penyiapannya, dan Apidog CLI di Claude Code membahas sisi agent-nya. Paket Free Apidog mencakup hingga 4 pengguna.

FAQ

Apakah API ERNIE 5.5 Flash gratis? Di OpenRouter, ya: baidu/ernie-5.5-flash-preview:free berbiaya $0 per token, dengan batasan 20 request per menit dan 50 per hari, atau 1.000 per hari setelah Anda membeli kredit senilai $10. Qianfan menagih setiap panggilan ke saldo Baidu AI Cloud Anda.

Apa model ID untuk ERNIE 5.5 Flash? Gunakan ernie-5.5-flash-preview di Qianfan dan baidu/ernie-5.5-flash-preview:free di OpenRouter.

Bisakah saya mematikan thinking di Qianfan? Tidak. Dokumentasi Qianfan menyatakan thinking hanya dapat diaktifkan untuk model ini dan reasoning_effort tetap di high. Sisakan anggaran token output untuk trace reasoning-nya.

Apakah API ERNIE 5.5 Flash mendukung tool calling? Ya. Qianfan mencantumkan Function Call dan structured output sebagai fitur yang didukung, dan OpenRouter menerima tools, tool_choice, serta response_format. Validasi structured output, karena OpenRouter melaporkan tingkat error yang tinggi untuk fitur tersebut.

Bisakah saya menjalankan ERNIE 5.5 Flash sendiri? Baidu mempublikasikan ERNIE 5.5 Flash Base di Hugging Face, dan bobot Preview dijanjikan di bawah lisensi Apache 2.0. Lihat menjalankan ERNIE 5.5 Flash secara lokal dengan vLLM.

Bagaimana perbandingannya dengan DeepSeek V4.1 Flash? Lihat ERNIE 5.5 Flash vs DeepSeek V4.1 Flash dan panduan API DeepSeek V4.1 Flash.

Mengembangkan API dengan Apidog

Apidog adalah alat pengembangan API yang membantu Anda mengembangkan API dengan lebih mudah dan efisien.