[{"data":1,"prerenderedAt":405},["ShallowReactive",2],{"docs-nav-titles":3,"page-docs_id-\u002Fintegrations\u002Fvercel-ai-sdk":52},{"en":4,"id":39},{"\u002Fauthentication":5,"\u002Fchangelog":6,"\u002Fguides\u002Fbilling":7,"\u002Fguides\u002Ferrors":8,"\u002Fguides\u002Fjson-output":9,"\u002Fguides\u002Frate-limits":10,"\u002Fguides\u002Freasoning":11,"\u002Fguides\u002Fstreaming":12,"\u002Fguides\u002Ftool-calling":13,"\u002Fguides\u002Ftop-up":14,"\u002F":15,"\u002Fintegrations\u002Faider":16,"\u002Fintegrations\u002Fclaude-code":17,"\u002Fintegrations\u002Fcline":18,"\u002Fintegrations\u002Fcontinue":19,"\u002Fintegrations\u002Fgoose":20,"\u002Fintegrations\u002Fhermes":21,"\u002Fintegrations":22,"\u002Fintegrations\u002Fkilo-code":23,"\u002Fintegrations\u002Flangchain":24,"\u002Fintegrations\u002Foh-my-pi":25,"\u002Fintegrations\u002Fopenai-sdk":26,"\u002Fintegrations\u002Fopenclaw":27,"\u002Fintegrations\u002Fopencode":28,"\u002Fintegrations\u002Fpi":29,"\u002Fintegrations\u002Fvercel-ai-sdk":30,"\u002Fintegrations\u002Fzed":31,"\u002Fmodels":32,"\u002Fquickstart":33,"\u002Freference\u002Fchat-completions":34,"\u002Freference":22,"\u002Freference\u002Fmessages":35,"\u002Freference\u002Fmodels":36,"\u002Freference\u002Fmodels-retrieve":37,"\u002Fsupport":38},"Authentication","Changelog","Billing","Errors & retries","JSON output","Rate limits","Reasoning content","Streaming","Tool calling","Topping up with QRIS","Introduction","Aider","Claude Code","Cline","Continue","Goose","Hermes Agent","Overview","Kilo Code","LangChain (Python)","Oh My Pi","OpenAI SDKs","OpenClaw","OpenCode","Pi","Vercel AI SDK","Zed","Models","Quickstart","Chat completions","Messages","List models","Retrieve a model","Support",{"\u002Fauthentication":40,"\u002Fchangelog":6,"\u002Fguides\u002Fbilling":7,"\u002Fguides\u002Ferrors":41,"\u002Fguides\u002Fjson-output":42,"\u002Fguides\u002Frate-limits":43,"\u002Fguides\u002Freasoning":44,"\u002Fguides\u002Fstreaming":12,"\u002Fguides\u002Ftool-calling":13,"\u002Fguides\u002Ftop-up":45,"\u002F":46,"\u002Fintegrations\u002Faider":16,"\u002Fintegrations\u002Fclaude-code":17,"\u002Fintegrations\u002Fcline":18,"\u002Fintegrations\u002Fcontinue":19,"\u002Fintegrations\u002Fgoose":20,"\u002Fintegrations\u002Fhermes":21,"\u002Fintegrations":47,"\u002Fintegrations\u002Fkilo-code":23,"\u002Fintegrations\u002Flangchain":24,"\u002Fintegrations\u002Foh-my-pi":25,"\u002Fintegrations\u002Fopenai-sdk":48,"\u002Fintegrations\u002Fopenclaw":27,"\u002Fintegrations\u002Fopencode":28,"\u002Fintegrations\u002Fpi":29,"\u002Fintegrations\u002Fvercel-ai-sdk":30,"\u002Fintegrations\u002Fzed":31,"\u002Fmodels":49,"\u002Fquickstart":33,"\u002Freference\u002Fchat-completions":34,"\u002Freference":47,"\u002Freference\u002Fmessages":35,"\u002Freference\u002Fmodels":50,"\u002Freference\u002Fmodels-retrieve":51,"\u002Fsupport":38},"Autentikasi","Error & retry","Output JSON","Rate limit","Konten reasoning","Isi saldo dengan QRIS","Pengantar","Ringkasan","OpenAI SDK","Model","Daftar model","Ambil satu model",{"id":53,"title":30,"body":54,"description":397,"extension":398,"eyebrow":399,"meta":400,"navTitle":399,"navigation":206,"path":401,"seo":402,"stem":403,"__hash__":404},"docs_id\u002Fintegrations\u002Fvercel-ai-sdk.md",{"type":55,"value":56,"toc":389},"minimark",[57,69,80,85,344,348,374,385],[58,59,60,61,68],"p",{},"Panduan ini menghubungkan Vercel AI SDK ke Laras Router. Setiap langkah sudah dicek dengan ",[62,63,67],"a",{"href":64,"rel":65},"https:\u002F\u002Fai-sdk.dev\u002Fproviders\u002Fopenai-compatible-providers",[66],"nofollow","dokumentasi Vercel AI SDK",".",[58,70,71,72,76,77,68],{},"Anda memerlukan API key (",[73,74,75],"code",{},"lr_live_…",") dan saldo yang sudah diisi. Baru mengenal Laras Router? Mulai dari ",[62,78,33],{"href":79},"\u002Fid\u002Fquickstart",[81,82,84],"h2",{"id":83},"setup","Setup",[86,87,88,93,96,124,128,131,152,156,159],"steps",{},[89,90,92],"h3",{"id":91},"instal-package","Instal package",[58,94,95],{},"Instal AI SDK dan provider yang kompatibel dengan OpenAI.",[97,98,103],"pre",{"className":99,"code":100,"language":101,"meta":102,"style":102},"language-bash shiki shiki-themes github-dark-default github-light-default","npm install ai @ai-sdk\u002Fopenai-compatible\n","bash","",[73,104,105],{"__ignoreMap":102},[106,107,110,114,118,121],"span",{"class":108,"line":109},"line",1,[106,111,113],{"class":112},"sjwWW","npm",[106,115,117],{"class":116},"sHdZ9"," install",[106,119,120],{"class":116}," ai",[106,122,123],{"class":116}," @ai-sdk\u002Fopenai-compatible\n",[89,125,127],{"id":126},"simpan-api-key-anda","Simpan API key Anda",[58,129,130],{},"Simpan kunci Anda di variabel lingkungan.",[97,132,134],{"className":99,"code":133,"language":101,"meta":102,"style":102},"export LARAS_API_KEY=\"lr_live_your_key_here\"\n",[73,135,136],{"__ignoreMap":102},[106,137,138,142,146,149],{"class":108,"line":109},[106,139,141],{"class":140},"s1PA9","export",[106,143,145],{"class":144},"sUq8j"," LARAS_API_KEY",[106,147,148],{"class":140},"=",[106,150,151],{"class":116},"\"lr_live_your_key_here\"\n",[89,153,155],{"id":154},"hasilkan-teks","Hasilkan teks",[58,157,158],{},"Buat provider lalu hasilkan teks.",[97,160,167],{"className":161,"code":162,"highlights":163,"language":166,"meta":102,"style":102},"language-typescript shiki shiki-themes github-dark-default github-light-default","import { createOpenAICompatible } from \"@ai-sdk\u002Fopenai-compatible\";\nimport { generateText } from \"ai\";\n\nconst laras = createOpenAICompatible({\n  name: \"larasrouter\",\n  baseURL: \"https:\u002F\u002Fapi.larasrouter.com\u002Fv1\",\n  apiKey: process.env.LARAS_API_KEY,\n});\n\nconst { text } = await generateText({\n  model: laras(\"deepseek-flash\"),\n  prompt: \"Hello!\",\n});\nconsole.log(text);\n",[164,165],6,7,"typescript",[73,168,169,186,201,208,228,240,252,263,269,274,298,316,327,332],{"__ignoreMap":102},[106,170,171,174,177,180,183],{"class":108,"line":109},[106,172,173],{"class":140},"import",[106,175,176],{"class":144}," { createOpenAICompatible } ",[106,178,179],{"class":140},"from",[106,181,182],{"class":116}," \"@ai-sdk\u002Fopenai-compatible\"",[106,184,185],{"class":144},";\n",[106,187,189,191,194,196,199],{"class":108,"line":188},2,[106,190,173],{"class":140},[106,192,193],{"class":144}," { generateText } ",[106,195,179],{"class":140},[106,197,198],{"class":116}," \"ai\"",[106,200,185],{"class":144},[106,202,204],{"class":108,"line":203},3,[106,205,207],{"emptyLinePlaceholder":206},true,"\n",[106,209,211,214,218,221,225],{"class":108,"line":210},4,[106,212,213],{"class":140},"const",[106,215,217],{"class":216},"sYnYM"," laras",[106,219,220],{"class":140}," =",[106,222,224],{"class":223},"sK34n"," createOpenAICompatible",[106,226,227],{"class":144},"({\n",[106,229,231,234,237],{"class":108,"line":230},5,[106,232,233],{"class":144},"  name: ",[106,235,236],{"class":116},"\"larasrouter\"",[106,238,239],{"class":144},",\n",[106,241,244,247,250],{"class":242,"line":164},[108,243],"highlight",[106,245,246],{"class":144},"  baseURL: ",[106,248,249],{"class":116},"\"https:\u002F\u002Fapi.larasrouter.com\u002Fv1\"",[106,251,239],{"class":144},[106,253,255,258,261],{"class":254,"line":165},[108,243],[106,256,257],{"class":144},"  apiKey: process.env.",[106,259,260],{"class":216},"LARAS_API_KEY",[106,262,239],{"class":144},[106,264,266],{"class":108,"line":265},8,[106,267,268],{"class":144},"});\n",[106,270,272],{"class":108,"line":271},9,[106,273,207],{"emptyLinePlaceholder":206},[106,275,277,279,282,285,288,290,293,296],{"class":108,"line":276},10,[106,278,213],{"class":140},[106,280,281],{"class":144}," { ",[106,283,284],{"class":216},"text",[106,286,287],{"class":144}," } ",[106,289,148],{"class":140},[106,291,292],{"class":140}," await",[106,294,295],{"class":223}," generateText",[106,297,227],{"class":144},[106,299,301,304,307,310,313],{"class":108,"line":300},11,[106,302,303],{"class":144},"  model: ",[106,305,306],{"class":223},"laras",[106,308,309],{"class":144},"(",[106,311,312],{"class":116},"\"deepseek-flash\"",[106,314,315],{"class":144},"),\n",[106,317,319,322,325],{"class":108,"line":318},12,[106,320,321],{"class":144},"  prompt: ",[106,323,324],{"class":116},"\"Hello!\"",[106,326,239],{"class":144},[106,328,330],{"class":108,"line":329},13,[106,331,268],{"class":144},[106,333,335,338,341],{"class":108,"line":334},14,[106,336,337],{"class":144},"console.",[106,339,340],{"class":223},"log",[106,342,343],{"class":144},"(text);\n",[81,345,347],{"id":346},"perlu-diketahui","Perlu diketahui",[349,350,351,363],"ul",{},[352,353,354,355,358,359,362],"li",{},"Gunakan ",[73,356,357],{},"@ai-sdk\u002Fopenai-compatible",". Sejak AI SDK 5, provider ",[73,360,361],{},"@ai-sdk\u002Fopenai"," memanggil Responses API secara default.",[352,364,365,366,369,370,373],{},"Untuk streaming, gunakan ",[73,367,368],{},"streamText",". Agar penggunaan token ikut dikirim saat streaming, setel ",[73,371,372],{},"includeUsage: true"," ketika membuat provider.",[58,375,376,377,380,381,68],{},"Pengaturan dan tampilan bisa berubah antarversi. Jika ada yang berbeda, periksa ",[62,378,67],{"href":64,"rel":379},[66],". Untuk tool lain, lihat semua ",[62,382,384],{"href":383},"\u002Fid\u002Fintegrations","integrasi",[386,387,388],"style",{},"html pre.shiki code .sjwWW, html code.shiki .sjwWW{--shiki-default:#FFA657;--shiki-light:#953800}html pre.shiki code .sHdZ9, html code.shiki .sHdZ9{--shiki-default:#A5D6FF;--shiki-light:#0A3069}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html pre.shiki code .s1PA9, html code.shiki .s1PA9{--shiki-default:#FF7B72;--shiki-light:#CF222E}html pre.shiki code .sUq8j, html code.shiki .sUq8j{--shiki-default:#E6EDF3;--shiki-light:#1F2328}html pre.shiki code .sYnYM, html code.shiki .sYnYM{--shiki-default:#79C0FF;--shiki-light:#0550AE}html pre.shiki code .sK34n, html code.shiki .sK34n{--shiki-default:#D2A8FF;--shiki-light:#8250DF}",{"title":102,"searchDepth":203,"depth":203,"links":390},[391,396],{"id":83,"depth":188,"text":84,"children":392},[393,394,395],{"id":91,"depth":203,"text":92},{"id":126,"depth":203,"text":127},{"id":154,"depth":203,"text":155},{"id":346,"depth":188,"text":347},"Toolkit TypeScript untuk aplikasi AI, lewat provider yang kompatibel dengan OpenAI. Panduan setup langkah demi langkah dengan Laras Router.","md",null,{},"\u002Fintegrations\u002Fvercel-ai-sdk",{"title":30,"description":397},"integrations\u002Fvercel-ai-sdk","czeDpGDJgdBqWDQs13Gw0bR5zbqrks2n9pcHd87AZaE",1793333618912]