- OpenAI ने हाल ही में Predicted Outputs नाम का एक शक्तिशाली फीचर पेश किया है
- टेक मीडिया में इसे ज़्यादा ध्यान नहीं मिला, लेकिन यह वाकई गौर करने लायक है
- यह फीचर API response latency को कम कर सकता है और पहले से अनुमानित output के generation को काफ़ी तेज़ बना सकता है
Predicted Outputs क्या है?
- यह Chat Completion API में उन मामलों में response speed बढ़ाने वाला फीचर है, जहाँ जवाब मुख्यतः पहले से अनुमानित हो
prediction parameter का उपयोग करके अपेक्षित output मॉडल को दिया जा सकता है, जिससे वह अधिक कुशलता से परिणाम generate कर सके
- फिलहाल यह केवल gpt-4o और gpt-4o-mini models में supported है
Predicted Outputs कैसे काम करता है
- अगर content का बड़ा हिस्सा पहले से अनुमानित है, तो उस content को prediction value के रूप में मॉडल को दिया जा सकता है
- मॉडल इस prediction value का उपयोग करके response generation को तेज़ करता है और performance बेहतर बनाता है
उदाहरण: Configuration फ़ाइल अपडेट करना
- JSON config फ़ाइल को update करने की स्थिति में Predicted Outputs का उपयोग किया जा सकता है
- पूरी मौजूदा फ़ाइल को फिर से generate करने के बजाय, मौजूदा फ़ाइल को prediction value के रूप में दें और केवल ज़रूरी बदलावों का अनुरोध करें
import OpenAI from "openai";
const config = `
{
"appName": "MyApp",
"version": "1.0.0",
"settings": {
"enableFeatureX": false,
"maxUsers": 100
}
}
`.trim();
const openai = new OpenAI();
const updatePrompt = `
Change "enableFeatureX" to true in the following JSON configuration. Respond only with the updated JSON, without any additional text.
`;
const completion = await openai.chat.completions.create({
model: "gpt-4o",
messages: [
{ role: "user", content: updatePrompt },
{ role: "user", content: config }
],
prediction: {
type: "content",
content: config
}
});
console.log(completion.choices[0].message.content);
उदाहरण : Streaming और Predicted Outputs
- जिन applications को streaming response चाहिए, उनमें Predicted Outputs latency को और कम कर देता है
import OpenAI from "openai";
const config = `...`; // 기존 JSON 구성 파일
const openai = new OpenAI();
const updatePrompt = `...`; // 기존 요청 프롬프트
const completion = await openai.chat.completions.create({
model: "gpt-4o",
messages: [ /* ... */ ],
prediction: {
type: "content",
content: config
},
stream: true
});
for await (const chunk of completion) {
process.stdout.write(chunk.choices[0]?.delta?.content || "");
}
डेवलपर्स के लिए टिप्स
- सबसे अच्छी बात यह है कि इसे इस्तेमाल करने के लिए लगभग कुछ भी अतिरिक्त नहीं करना पड़ता
- बस मौजूदा API request में एक नया parameter जोड़ना होता है
सीमाएँ
- मॉडल compatibility: यह केवल gpt-4o और gpt-4o-mini models में इस्तेमाल किया जा सकता है
- लागत: rejected prediction tokens पर भी generated tokens जितनी ही लागत लगती है। इसलिए cost management के लिए
rejected_prediction_tokens को monitor करना चाहिए
- unsupported parameters:
- n (1 से बड़ा मान)
- logprobs
- presence_penalty (0 से बड़ा मान)
- frequency_penalty (0 से बड़ा मान)
- max_completion_tokens
- tools (function calling उपलब्ध नहीं)
- modality सीमा: केवल text modality supported है, audio input और output उपलब्ध नहीं हैं
निष्कर्ष
- OpenAI का Predicted Outputs AI applications में आम तौर पर होने वाली latency समस्या को हल करने वाला एक अभिनव टूल है
- अनुमानित output उपलब्ध कराकर यह response time कम करता है और user experience बेहतर बनाता है
1 टिप्पणियां
यह LMQL जैसा ही लग रहा है।