OpenAI WebSocket API: রিয়েল-টাইম streaming 75% কম খরচে
Smart AIPI এখন OpenAI-এর WebSocket API সমর্থন করে রিয়েল-টাইম, bidirectional streaming-এর জন্য। SSE-এর তুলনায় কম latency, persistent connection, এবং 75% কম খরচ। কীভাবে connect করবেন, তা এখানে দেখানো হলো।
সংক্ষেপে: Smart AIPI এখন OpenAI-এর WebSocket API সমর্থন করে। wss://api.smartaipi.com/v1/realtime-এ connect করুন, একটি response.create event পাঠান, এবং একটি persistent connection-এর মাধ্যমে রিয়েল-টাইমে response stream করুন। একই model, একই protocol, 75% কম খরচ।
AI model-এর সাথে interact করার সবচেয়ে দ্রুত উপায় হলো WebSocket streaming। প্রচলিত HTTP request বা এমনকি Server-Sent Events (SSE)-এর বিপরীতে, WebSocket আপনার application এবং API-এর মধ্যে একটি persistent, bidirectional connection বজায় রাখে। প্রতি request-এ নতুন connection setup নেই, HTTP overhead নেই, half-duplex সীমাবদ্ধতা নেই।
Smart AIPI এখন wss://api.smartaipi.com/v1/realtime-এ এই protocol সমর্থন করে — OpenAI-এর WebSocket API-এর সাথে পুরোপুরি compatible, এবং খরচ 75% কম।
কেন SSE-এর বদলে WebSocket?
AI streaming-এর জন্য Server-Sent Events দীর্ঘদিন standard ছিল, কিন্তু এতে কিছু trade-off আছে যা WebSocket দূর করে:
| বৈশিষ্ট্য | SSE (HTTP) | WebSocket |
|---|---|---|
| প্রতি request-এ connection | প্রতি বার নতুন connection | Persistent (পুনর্ব্যবহারযোগ্য) |
| দিক | শুধু Server → Client | Bidirectional |
| একটি connection-এ একাধিক request | না | হ্যাঁ |
| প্রথম-token latency | বেশি (নতুন TCP + TLS) | কম (connection reuse) |
| যার জন্য উপযুক্ত | সহজ integration | Agent, রিয়েল-টাইম app, high-throughput |
যেসব agent loop-এ ধারাবাহিকভাবে ডজনখানেক API call হয়, সেখানে একটি persistent WebSocket connection থেকে জমা হওয়া latency সাশ্রয় অনেক গুরুত্বপূর্ণ।
এটি কীভাবে কাজ করে
WebSocket API একটি event-driven protocol অনুসরণ করে। আপনি server-এ JSON event পাঠান এবং JSON event ফেরত পান — সবকিছুই একটি persistent connection-এর মাধ্যমে।
1. Connect এবং Authenticate করুন
Header-এ আপনার API key দিয়ে একটি WebSocket connection খুলুন:
wss://api.smartaipi.com/v1/realtime
Authorization: Bearer sk-proj-your-smart-aipi-key
OpenAI-Beta: realtime=v1
2. একটি Request পাঠান
আপনার prompt সহ একটি response.create event পাঠান:
{
"type": "response.create",
"response": {
"model": "gpt-5.3-codex",
"store": false,
"instructions": "You are a helpful assistant.",
"input": [
{
"type": "message",
"role": "user",
"content": [
{ "type": "input_text", "text": "What is WebSocket?" }
]
}
]
}
}
নোট: Smart AIPI WebSocket connection-এর জন্য store: false parameter বাধ্যতামূলক।
3. Streaming Event গ্রহণ করুন
Response generate হওয়ার সময় server ধারাবাহিকভাবে event পাঠায়:
| Event | বর্ণনা |
|---|---|
| response.created | Response object তৈরি হয়েছে |
| response.output_item.added | নতুন output item (message) শুরু হয়েছে |
| response.content_part.added | একটি output item-এর মধ্যে content part শুরু হয়েছে |
| response.output_text.delta | Text chunk (আসল streamed content) |
| response.output_text.done | Text output সম্পূর্ণ হয়েছে |
| response.completed | সম্পূর্ণ response শেষ হয়েছে (terminal event) |
Code উদাহরণ
Node.js
import WebSocket from "ws";
const ws = new WebSocket("wss://api.smartaipi.com/v1/realtime", {
headers: {
"Authorization": "Bearer sk-proj-your-key",
"OpenAI-Beta": "realtime=v1",
},
});
ws.on("open", () => {
ws.send(JSON.stringify({
type: "response.create",
response: {
model: "gpt-5.3-codex",
store: false,
input: [{
type: "message",
role: "user",
content: [{ type: "input_text", text: "Hello!" }],
}],
},
}));
});
ws.on("message", (data) => {
const event = JSON.parse(data);
if (event.type === "response.output_text.delta") {
process.stdout.write(event.delta);
}
if (event.type === "response.completed") {
console.log("\n\nDone. Usage:", event.response.usage);
ws.close();
}
});
Python
import asyncio
import json
import websockets
async def main():
headers = {
"Authorization": "Bearer sk-proj-your-key",
"OpenAI-Beta": "realtime=v1",
}
async with websockets.connect(
"wss://api.smartaipi.com/v1/realtime",
extra_headers=headers,
) as ws:
await ws.send(json.dumps({
"type": "response.create",
"response": {
"model": "gpt-5.3-codex",
"store": False,
"input": [{
"type": "message",
"role": "user",
"content": [{"type": "input_text", "text": "Hello!"}],
}],
},
}))
async for message in ws:
event = json.loads(message)
if event["type"] == "response.output_text.delta":
print(event["delta"], end="", flush=True)
if event["type"] == "response.completed":
print(f"\n\nUsage: {event['response']['usage']}")
break
asyncio.run(main())
cURL (দ্রুত পরীক্ষা)
একটি command দিয়েই WebSocket handshake সফল হচ্ছে কি না যাচাই করুন:
curl -isN --http1.1 \
-H "Connection: Upgrade" \
-H "Upgrade: websocket" \
-H "Sec-WebSocket-Version: 13" \
-H "Sec-WebSocket-Key: dGVzdA==" \
-H "Authorization: Bearer sk-proj-your-key" \
-H "OpenAI-Beta: realtime=v1" \
https://api.smartaipi.com/v1/realtime
সফল connection হলে HTTP/1.1 101 Switching Protocols ফেরত আসে।
কখন WebSocket ব্যবহার করবেন, আর কখন SSE
দুটি protocol-ই Smart AIPI-এর মাধ্যমে কাজ করে। আপনার use case অনুযায়ী বেছে নিন:
- SSE ব্যবহার করুন সহজ integration, একবারের request, এবং যখন সবচেয়ে সহজ implementation চান। যেকোনো standard API call-এ
stream: trueসেট করুন। - WebSocket ব্যবহার করুন agent loop, interactive application, high-frequency request pattern, এবং যেসব ক্ষেত্রে ধারাবাহিক call-এর মধ্যে সর্বনিম্ন latency দরকার।
মূল্য
WebSocket request-এর বিল standard API request-এর মতোই — token usage অনুযায়ী। 75% discount প্রযোজ্য:
| Model | OpenAI Direct | Smart AIPI | সাশ্রয় |
|---|---|---|---|
| GPT-5.3 Codex (output) | $14.00 / 1M tokens | $3.50 / 1M tokens | 75% |
| GPT-5.2 (output) | $10.00 / 1M tokens | $2.50 / 1M tokens | 75% |
| Codex Mini (output) | $0.60 / 1M tokens | $0.15 / 1M tokens | 75% |
শুরু করার ধাপ
- একটি API key নিন — smartaipi.com-এ sign up করুন (ফ্রি credit রয়েছে, credit card লাগবে না)
- Connect করুন —
wss://api.smartaipi.com/v1/realtime-এ একটি WebSocket খুলুন - Event পাঠান — আপনার model এবং prompt সহ
response.createenvelope ব্যবহার করুন - Response stream করুন —
response.output_text.deltaevent আসার সাথে সাথে process করুন
আপনি যদি আগে থেকেই OpenAI-এর WebSocket API ব্যবহার করে থাকেন, তাহলে শুধু URL বদলালেই হবে। বাকি সব — authentication, event, payload format — একই থাকবে।
প্রায়শই জিজ্ঞাসিত প্রশ্ন
Smart AIPI কি OpenAI WebSocket API সমর্থন করে?
হ্যাঁ। Authorization header-এ আপনার API key দিয়ে wss://api.smartaipi.com/v1/realtime-এ connect করুন। এই protocol OpenAI-এর WebSocket Responses API-এর সাথে পুরোপুরি compatible।
WebSocket কি SSE-এর চেয়ে দ্রুত?
ধারাবাহিক request-এর ক্ষেত্রে, হ্যাঁ। WebSocket একটি persistent connection বজায় রাখে, তাই প্রতি নতুন request-এ SSE যে TCP এবং TLS handshake overhead তৈরি করে, তা এড়ানো যায়। একবারের request-এ পার্থক্য খুবই কম।
কোন model-গুলো WebSocket-এর মাধ্যমে কাজ করে?
Responses API-এর মাধ্যমে উপলভ্য সব model: GPT-5.3 Codex, GPT-5.2, Codex Mini, এবং অন্যান্য। response.create event-এ model নির্ধারণ করুন।
Function calling এবং tool use কি WebSocket-এর মাধ্যমে কাজ করে?
হ্যাঁ। পূর্ণ Responses API feature set উপলভ্য — function calling, tool use, structured outputs, এবং multi-turn conversation সবই WebSocket connection-এ কাজ করে।
Connection-এর কি সময়সীমা আছে?
Idle connection 15 মিনিট পরে বন্ধ হয়ে যায়। প্রয়োজন হলে নির্দিষ্ট বিরতিতে message পাঠান বা পুনরায় connect করুন। যেসব active connection-এ data stream হচ্ছে, সেগুলো বাধাগ্রস্ত হয় না।
একটি connection-এ কি একাধিক request পাঠাতে পারি?
হ্যাঁ। এটিই বড় সুবিধাগুলোর একটি। একটি response শেষ হওয়ার পর reconnect না করেই একই connection-এ আরেকটি response.create event পাঠান।
OpenAI-সামঞ্জস্যপূর্ণ API গেটওয়ে। 75% কম খরচে frontier AI models ব্যবহার করুন।
ফ্রিতে শুরু করুন