Open Interpreter একটা কাস্টম OpenAI-compatible endpoint-এ চালান।
Updated 2026-07-30
Open Interpreter সরাসরি api_base expose করে। এটাকে https://api.apisrouter.com/v1-এ point করুন, LiteLLM যাতে chat completions বলে সেজন্য model id-কে openai/ দিয়ে prefix করুন, এবং যে model আপনার machine-এ code লেখে ও চালায় সেটা এক key-এর নিচে catalog-এর যেকোনো id হতে পারে।
দ্রুত উত্তর: api_base প্লাস openai/ model prefix।
Open Interpreter দুটো interface-এই একটা কাস্টম-endpoint path documents করে। CLI-তে, endpoint সহ --api_base পাস করুন এবং id-তে একটা openai/ prefix সহ --model পাস করুন। Python-এ, chat() কল করার আগে interpreter.llm.api_base, interpreter.llm.api_key, এবং interpreter.llm.model সেট করুন। Prefix decoration না। Open Interpreter LiteLLM-এ চলে, এবং LiteLLM model string থেকে ঠিক করে কোন provider client ব্যবহার করবে। openai/claude-sonnet-4-6 মানে "api_base যা-ই বলুক তার সাথে OpenAI chat-completions protocol বলো, claude-sonnet-4-6 model field হিসেবে।" Prefix বাদ দিলে LiteLLM bare নাম থেকে provider infer করে, একটা claude-* id-কে Anthropic-এর client-এর দিকে route করে এবং আপনার configure করা endpoint ignore করে।
export OPENAI_API_KEY=sk-APIsRouter-...
interpreter \
--api_base https://api.apisrouter.com/v1 \
--model openai/claude-sonnet-4-6Open Interpreter তার model দিয়ে কী করে।
Open Interpreter (GitHub-এ openinterpreter, প্রায় 66K star) একটা language model-কে আপনার machine-এ একটা code interpreter দেয়: আপনি natural language-এ একটা goal বলেন, model Python বা shell লেখে, Open Interpreter সেটা locally execute করে, এবং output পরের step-এর জন্য conversation-এ ফিরে feed হয়। সেই loop এটাকে একটা chat client থেকে গুণগতভাবে আলাদা করে দেয়। Model prose বানাচ্ছে না; এটা এমন code বানাচ্ছে যা আপনার user-এর permission নিয়ে চলে, এবং এটা আপনার real system থেকে real error-এর বিরুদ্ধে iterate করে। Routing-এর জন্য দুটো পরিণতি আসে। প্রথমত, model quality সরাসরি একটা safety এবং correctness property: একটা model যা flag hallucinate করে বা একটা traceback ভুল পড়ে আরেকটা fail হওয়া round trip তৈরি করে, এবং auto-run mode-এ এটা এমন একটা তৈরি করে যা আপনি review করেননি। দ্বিতীয়ত, loop একটা নির্দিষ্ট উপায়ে token-hungry: প্রতি turn বাড়তে থাকা conversation, code, এবং captured output আবার পাঠায়, তাই লম্বা debugging session দ্রুত context compound করে। api_base setting এই পুরো loop-কে এক endpoint-এ move করে। যেহেতু openai/ prefix-এর পরে model field একটা plain string হিসেবে pass through হয়, একটা Claude id, একটা GPT id, এবং একটা DeepSeek id ভিন্ন provider setup-এর বদলে interchangeable এক-flag choice।
সম্পূর্ণ সেটআপ: Python API এবং একটা profile।
Python path একই তিনটা value interpreter.llm-এ সেট করে এবং LiteLLM একটা কাস্টম id-র জন্য discover করতে পারে না এমন দুটো setting যোগ করে: context_window এবং max_tokens। Open Interpreter কতটুকু conversation history trim করার আগে রাখবে তা ঠিক করতে context_window ব্যবহার করে, তাই একটা 200k model-এ এটা unset বা default রেখে দিলে প্রয়োজনের অনেক আগেই trim হয়ে যায়; model আসলে যা সাপোর্ট করে তা declare করুন। Persistent setup-এর জন্য, একই key একটা profile YAML-এ একটা llm: block-এর নিচে থাকে (profiles directory খুলতে interpreter --profiles ব্যবহার করুন)। একটা profile endpoint, model, এবং window setting আপনার shell history-র বাইরে রাখে এবং machine জুড়ে configuration-কে shareable বানায়, key এখনও environment দিয়ে সাপ্লাই হয়।
import os
from interpreter import interpreter
interpreter.llm.api_base = "https://api.apisrouter.com/v1"
interpreter.llm.api_key = os.environ["APISROUTER_API_KEY"]
interpreter.llm.model = "openai/claude-sonnet-4-6"
# LiteLLM cannot infer these for a custom id; declare them:
interpreter.llm.context_window = 200000
interpreter.llm.max_tokens = 8192
interpreter.llm.supports_functions = True
interpreter.chat("Profile data.csv and plot the top 10 rows by revenue.")যে model আপনার code লেখে সেটা বেছে নেওয়া।
এখানে model তুলনা অস্বাভাবিকভাবে concrete: দুইটা model-কে একই task দিন এবং একটা working result পর্যন্ত round trip গুনুন। per-key usage view প্রতি session token cost যোগ করে, যা round-trip count-এর সাথে মিলে পুরো তুলনা। এক endpoint-এর পিছনে প্রতিটা candidate এক flag।
- Main loop এমন একটা model চায় যা runnable code লেখে এবং প্রথম pass-এই traceback ভালো পড়ে; claude-sonnet-4-6 এবং gpt-5.5 সংবেদনশীল মধ্যম, এবং একটা better model যে failed round trip এড়ায় তা মানে token এবং wall-clock বাঁচানো।
- Code-heavy session যেখানে volume গুরুত্বপূর্ণ সেখানে deepseek-v4-pro একটা strong candidate; এক endpoint-এর মধ্য দিয়ে, আপনার নিজের task-এ এটা test করা একটা single --model change।
- Quick utility session (file rename, one-off transform, format conversion) frontier reasoning দাবি করে না; claude-haiku-4-5-20251001 বা glm-5.2 সেগুলোকে দ্রুত এবং সাশ্রয়ী রাখে।
- Auto-run mode (-y) code generation এবং execution-এর মধ্যে human review step সরিয়ে দেয়। এটা ব্যবহার করলেই, আপনি যে সবচেয়ে strong model চালান তার সাথে ব্যবহার করুন, একটা sandbox বা container-এ, যে model এখনও evaluate করছেন তার সাথে কখনো না।
ব্যবহার অনুযায়ী পেমেন্ট · অফিশিয়াল মূল্যের নিচে
Selected models are priced below official list prices. Exact input, output, cache, and per-request prices are shown for each model.
| মডেল | অফিশিয়াল মূল্য | আমাদের মূল্য |
|---|---|---|
| Claude Sonnet 4.6 | $3.00 / $15.00 per M | $2.40 / $12.00 per M |
| GPT-5.5 | $5.00 / $30.00 per M | $4.00 / $24.00 per M |
| DeepSeek V4 Pro | $0.43 / $0.87 per M | $0.40 / $0.90 per M |
| Claude Haiku 4.5 20251001 | $1.00 / $5.00 per M | $0.80 / $4.00 per M |
| GLM-5.2 | $1.14 / $4.00 per M | $1.10 / $4.00 per M |
Open Interpreter-specific failure mode।
একটা bare model id আপনার endpoint ঘুরে route হয়। openai/ prefix ছাড়া, LiteLLM নাম থেকে provider resolve করে: claude-* id Anthropic-এর client-এর দিকে যায়, এবং result একটা host-এর বিরুদ্ধে একটা auth বা routing error যা আপনি কখনো configure করেননি। Error যদি আপনার gateway-এর বদলে একটা vendor SDK-এর নাম করে, prefix missing। Default context assumption আপনার session trim করে। LiteLLM যে id চেনে না তার জন্য, কিছুই context window পূরণ করে না; Open Interpreter conservative behavior-এ fallback করে এবং history আগেই trim করে। context_window explicitly declare করুন, কারণ একটা code-debugging session যা তার আগের attempt হারায় একই ভুল আবার করে। Growing session, growing bill। প্রতি turn conversation প্লাস code প্লাস captured output আবার পাঠায়। একটা session যা loop-এ একটা বড় dataframe বা একটা লম্বা log paste করে সেটা প্রতিটা পরের request-এ বহন করে। Chat-এ file content paste করার বদলে model-কে file inspect করা code লিখতে দিন, এবং একটা task পাল্টালে নতুন session শুরু করুন। Function-calling mismatch। Open Interpreter সাপোর্ট করা জায়গায় structured function call ব্যবহার করতে পারে; supports_functions flag সেই id-দের জন্য আছে যেখানে detection ভুল guess করে। আপনি জানেন capable এমন একটা model-এ code block malformed এলে, সেটাকে explicitly True সেট করুন; একটা model সত্যিই tool support না থাকলে, fallback path engage করতে False সেট করুন। Execution side আপনার। api_base model traffic move করে; code এখনও আপনার permission নিয়ে locally চলে। একটা gateway কিছুই sandbox করে না, তাই auto-run container-এ সীমাবদ্ধ রাখুন এবং বাকি সব জায়গায় safety review loop-এ রেখে দিন।
কারা একটা gateway দিয়ে Open Interpreter route করে।
- Open Interpreter-কে দৈনিক automation tool হিসেবে ব্যবহার করা Developer যারা Claude-quality code generation, GPT variety, এবং fast utility id এক key-এর পিছনে চান।
- Exploratory analysis loop চালানো Data folk, যেখানে একটা session বিস্ময়কর context পুড়িয়ে ফেলতে পারে এবং per-key usage প্রতি notebook-equivalent cost দৃশ্যমান করে।
- Code-writing model round-trips-to-working-এ তুলনা করা Engineer, উপলব্ধ সবচেয়ে honest benchmark, প্রতি candidate এক --model flag।
- Scheduled বা containerized interpreter job চালানো Tinkerer, যেখানে একটা env-var endpoint এবং এক secret প্রতি-vendor credential set-এর চেয়ে ভালো।
- Developer যাদের কোনো নির্দিষ্ট vendor-এর billing-এ access নেই। কোনো card requirement ছাড়া Top-up based access প্রতি provider sign-up dependency সরিয়ে দেয়।
Endpoint verify করুন এবং প্রথম session debug করুন।
প্রথমে gateway-এর model list করুন; openai/-এর পরের id exactly একটা served id-র সাথে মিলতে হবে, version suffix সহ। প্রথম-session failure একটা pattern অনুসরণ করে। anthropic বা অন্য কোনো vendor SDK-এর নাম করা error মানে openai/ prefix missing এবং LiteLLM নাম দিয়ে route করেছে। একটা 401 মানে key interpreter launch করা shell-এ দৃশ্যমান না, বা যে variable ব্যবহার হচ্ছে তার বদলে অন্য variable-এ সেট করা হয়েছে; prefix থাকলে, OPENAI_API_KEY বা একটা explicit api_key দুটোই কাজ করে। একটা model-not-found error gateway থেকে একটা id typo। একটা connection error সাধারণত মানে api_base তার /v1 suffix হারিয়েছে; client আপনার দেওয়া base-এ /chat/completions append করে। Loop চললে, APIsRouter console per-request model, token count, এবং spend দেখায়। Interpreter session হলো ক্লাসিক সেই case যেখানে একটা workload ছোট মনে হয় কিন্তু মাঝারি bill করে, এবং usage view-ই যেখানে দেখা যায় কোন session আসলে token বহন করেছে।
curl -s https://api.apisrouter.com/v1/models \
-H "Authorization: Bearer $APISROUTER_API_KEY" | head -50সাধারণ প্রশ্ন
Open Interpreter কি এক endpoint দিয়ে Claude বা DeepSeek model চালাতে পারে?
হ্যাঁ। api_base gateway-তে point করা এবং model id-তে openai/ prefix থাকলে, LiteLLM সেই endpoint-এ standard chat completions বলে এবং id একটা plain string হিসেবে forward করে। Claude, GPT, DeepSeek, এবং GLM id সব একই দুটো setting দিয়ে কাজ করে।
Model id-তে কেন openai/ prefix দরকার?
Open Interpreter LiteLLM-এ চলে, যা model string থেকে তার provider client বেছে নেয়। openai/ prefix আপনার api_base-এর দিকে aim করা OpenAI-protocol client force করে। একটা bare claude-* id বদলে Anthropic-এর client-এ resolve হয় এবং আপনার endpoint ignore করে।
কোন environment variable key ধরে রাখে?
openai/ prefix থাকলে, OPENAI_API_KEY conventional choice, বা Python-এ interpreter.llm.api_key explicitly সেট করুন, বা CLI-তে --api_key পাস করুন। Key-কে profile এবং script-এর বাইরে রাখুন; environment-ই এর সঠিক জায়গা।
আমার কি manually context_window সেট করতে হবে?
কাস্টম id-র জন্য, হ্যাঁ। LiteLLM এমন একটা model-এর জন্য window infer করতে পারে না যা এটা চেনে না, এবং Open Interpreter এই সংখ্যার বিরুদ্ধে conversation history trim করে। Model-এর real window declare করুন (table-এর Claude id-র জন্য 200000) নাহলে লম্বা session তাদের আগের context হারায়।
একটা gateway দিয়ে route করলে কি auto-run (-y) নিরাপদ হয়ে যায়?
না। Gateway model traffic বহন করে; generated code এখনও আপনার permission নিয়ে locally execute হয়। Auto-run review step সরিয়ে দেয়, তাই কোন endpoint model serve করছে তা নির্বিশেষে এটাকে container বা sandbox-এ সীমাবদ্ধ রাখুন।
একটা interpreter session কত token ব্যবহার করে?
এটা turn এবং loop-এ কী ঢুকছে তার সাথে scale করে: প্রতি round trip conversation, code, এবং captured output আবার পাঠায়। ছোট utility task সীমিত; paste করা data সহ লম্বা debugging session দ্রুত compound করে। APIsRouter console-এর per-key usage view real per-session সংখ্যা দেখায়।