HI ▾
API कुंजी पाएँ

LLM API क्या है? यह कैसे काम करता है और कब उपयोग करें

एक LLM API एक वेब सेवा है जो आपके लिए एक बड़े भाषा मॉडल को चलाती है। आपका कोड HTTP के माध्यम से टेक्स्ट भेजती है, मॉडल टेक्स्ट वापस भेजता है, और आप जिसका उपयोग करते हैं उसके लिए भुगतान करते हैं।

अपडेट किया गया

एक लैपटॉप का आइसोमेट्रिक चित्रण जो एक चमकते घन को डेटा पैकेट भेज रहा है जो एक LLM API का प्रतिनिधित्व करता है

मुख्य बिंदु

  • एक LLM API एक HTTP एंडपॉइंट है: आप संदेश POST करते हैं, आपको एक कम्प्लीशन मिलता है।
  • बिलिंग टोकन के आधार पर होती है, इनपुट और आउटपुट के लिए अलग से गिनी जाती है।
  • ओपनएआई-संगत APIs एक अनुरोध प्रारूप साझा करते हैं, इसलिए प्रदाता बदलना मुख्य रूप से एक बेस URL परिवर्तन है।
  • स्ट्रीमिंग, टूल कॉलिंग और JSON मोड एक साधारण चैट एंडपॉइंट को वास्तविक सॉफ़्टवेयर के लिए एक बिल्डिंग ब्लॉक में बदल देते हैं।

संक्षिप्त संस्करण

तो, LLM API क्या है? यह एक सेवा है जो एक वेब एड्रेस के माध्यम से एक लैंग्वेज मॉडल को एक्सपोज़ करती है। आपको मॉडल डाउनलोड करने की जरूरत नहीं है, न ही आपको GPU की जरूरत है, और न ही आपको इन्फरेंस सॉफ़्टवेयर मैनेज करने की जरूरत है। आप एक अनुरोध भेजते हैं जिसमें एक कन्वर्सेशन होता है, और सेवा उस कन्वर्सेशन में अगला मैसेज वापस करती है।

इसे इसी तरह समझें जैसे आप एक पेमेंट API या मैप्स API को समझते हैं। कोई और कठिन इन्फ्रास्ट्रक्चर चलाता है, और आप एक कुंजी के साथ अपने प्रोग्राम से इसे कॉल करते हैं जो आपको पहचानती है। मॉडल प्रोडक्ट है, और API उस तक पहुँच का दरवाज़ा है।

वह दरवाज़ा सादे HTTP और JSON बॉडीज़ के साथ है, जिसका मतलब है कि यह Python, Node, Go, शेल स्क्रिप्ट, स्प्रेडशीट मैक्रो या VS Code एक्सटेंशन से काम करता है। इसमें कुछ भी किसी एक भाषा या फ्रेमवर्क से बँधा नहीं है।

अनुरोध और प्रतिक्रिया कैसी दिखती है

आज के अधिकांश LLM API चैट के लिए OpenAI द्वारा पेश किए गए फ़ॉर्मेट की नकल करते हैं। आप एक एंडपॉइंट को कॉल करते हैं, POST /v1/chat/completions, और मैसेज की एक लिस्ट भेजते हैं। हर मैसेज में एक role और कुछ content होता है।

  • system पूरे कन्वर्सेशन के लिए नियम और पर्सोना सेट करता है।
  • user वह है जो व्यक्ति (या आपका प्रोग्राम) कहता है।
  • assistant वह है जो मॉडल ने पहले कहा था, जिसे आप वापस भेजते हैं ताकि वह थ्रेड को याद रखे।
  • tool मॉडल द्वारा आपको चलाने के लिए कहे गए फ़ंक्शन का नतीजा रखता है।

मुख्य बात यह है कि मॉडल के पास कॉल्स के बीच कोई मेमोरी नहीं है। हर अनुरोध में उस पूरे कन्वर्सेशन को ले जाना जरूरी है जिस पर आप चाहते हैं कि वह विचार करे। यदि आप एक चैटबॉट चाहते हैं जो पिछले दस टर्न्स को याद रखे, तो आपका कोड उन दस टर्न्स को स्टोर करता है और हर बार उन्हें भेजता है।

यहाँ curl के साथ सबसे छोटा उपयोगी कॉल है। यह साइट के एंडपॉइंट, मॉडल ID uncensored, और एक बेयरर टोकन का उपयोग करता है।

curl https://api.codingllmapi.com/v1/chat/completions \
  -H "Authorization: Bearer $LLM_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "uncensored",
    "messages": [
      {"role": "system", "content": "You are a concise assistant."},
      {"role": "user", "content": "Explain what a mutex is in two sentences."}
    ]
  }'

प्रतिक्रिया JSON है। आपका टेक्स्ट choices[0].message.content पर होता है। इसके बगल में आपको एक usage ऑब्जेक्ट मिलता है जो यह रिपोर्ट करता है कि कितने टोकन अंदर गए और कितने बाहर आए, जिसके आधार पर बिल बनता है।

टोकन: वह इकाई जिसमें सब कुछ मापा जाता है

एक मॉडल अक्षर या शब्द नहीं पढ़ता। यह टोकन पढ़ता है, जो पाठ के खंड होते हैं जो अक्सर एक छोटा शब्द या एक लंबे शब्द का हिस्सा होते हैं। अंग्रेजी पाठ में औसतन प्रति शब्द एक टोकन से थोड़ा कम होता है, और कोड में विराम चिह्नों और इंडेंटेशन के कारण प्रति पंक्ति अधिक टोकन का उपयोग होता है। किसी भी सटीक रूपांतरण को अनुमान मानें और वास्तविक गणना के लिए usage फ़ील्ड पढ़ें।

टोकन तीन कारणों से मायने रखते हैं।

  1. कीमत। आप प्रति मिलियन टोकन के लिए भुगतान करते हैं, इनपुट (आपके प्रॉम्प्ट) के लिए एक रेट और आउटपुट (मॉडल का जवाब) के लिए एक उच्च रेट होता है।
  2. कॉन्टेक्स्ट विंडो। प्रॉम्प्ट और जवाब एक ही लिमिट साझा करते हैं। इस API पर विंडो कुल मिलाकर 100,000 टोकन की है।
  3. स्पीड। आउटपुट एक टोकन के बाद एक टोकन बनाया जाता है, इसलिए एक लंबा जवाब एक छोटे जवाब की तुलना में अधिक समय लेता है।

इस साइट के रेट्स के अनुसार, 1M इनपुट टोकन के लिए $0.15 और 1M आउटपुट टोकन के लिए $0.50, 2,000 इनपुट टोकन और 500 आउटपुट टोकन वाले एक अनुरोध की लागत 2,000 x $0.15 / 1,000,000 = $0.0003 इनपुट के लिए और 500 x $0.50 / 1,000,000 = $0.00025 आउटपुट के लिए होती है। कुल मिलाकर यह $0.00055 है, इसलिए ऐसे एक हज़ार अनुरोधों की लागत $0.55 होगी। वर्तमान रेट्स हमेशा मूल्य निर्धारण पृष्ठ पर उपलब्ध रहते हैं।

कोड से LLM API कॉल करना

आप HTTP कॉल को हाथ से लिख सकते हैं, लेकिन एक SDK मेहनत बचाता है। चूँकि यह API OpenAI-कम्पैटिबल है, OpenAI की आधिकारिक लाइब्रेरियाँ दो मानों को बदलने के बाद काम करती हैं: बेस URL और कुंजी।

Python

import os
from openai import OpenAI

client = OpenAI(
    base_url="https://api.codingllmapi.com/v1",
    api_key=os.environ["LLM_API_KEY"],
)

resp = client.chat.completions.create(
    model="uncensored",
    messages=[
        {"role": "system", "content": "You are a careful code reviewer."},
        {"role": "user", "content": "What is wrong with: for i in range(len(x)): print(x[i])"},
    ],
    temperature=0.3,
)

print(resp.choices[0].message.content)
print(resp.usage.prompt_tokens, resp.usage.completion_tokens)

Node

import OpenAI from "openai";

const client = new OpenAI({
  baseURL: "https://api.codingllmapi.com/v1",
  apiKey: process.env.LLM_API_KEY,
});

const resp = await client.chat.completions.create({
  model: "uncensored",
  messages: [{ role: "user", content: "Give me three names for a CLI that renames files." }],
});

console.log(resp.choices[0].message.content);

कुंजी को एक एनवायरनमेंट वेरिएबल या सीक्रेट स्टोर में रखें। फ्रंट-एंड कोड या एक सार्वजनिक रिपॉज़िटरी में पेस्ट की गई कुंजी किसी भी ऐसे व्यक्ति द्वारा उपयोग की जा सकती है जो उसे खोज लेता है, और चार्ज आपके खाते में आते हैं।

फीचर्स जो एक चैट बॉक्स को एक बिल्डिंग ब्लॉक में बदलते हैं

एक बेयर कम्प्लीशन उपयोगी है, लेकिन अधिकांश असली प्रोग्राम निम्नलिखित में से कम से कम एक का उपयोग करते हैं।

स्ट्रीमिंग

stream: true सेट करें और सर्वर उत्तर को सर्वर-सेंट इवेंट्स के रूप में, टोकन-दर-टोकन भेजता है। उपयोगकर्ता पूरे जवाब का इंतज़ार करने के बजाय तुरंत टेक्स्ट प्रकट होते हुए देखते हैं। उपयोग की मात्रा स्ट्रीम के अंत में आती है।

JSON मोड

response_format: {"type": "json_object"} पास करें और मॉडल को वैध JSON लौटाने के लिए निर्देशित करें। यह गड़बड़ टेक्स्ट से फ़ील्ड निकालने, टिकट वर्गीकृत करने या पाइपलाइन में अगले चरण के लिए संरचित डेटा बनाने का तरीका है। अपने कोड में परिणाम की जाँच अवश्य करें और प्रॉम्प्ट में मॉडल को बताएं कि आप किन कुंजी की उम्मीद कर रहे हैं।

टूल कॉलिंग

आप फ़ंक्शन्स को tools एरे में वर्णित करते हैं। मॉडल एक फ़ंक्शन कॉल करने के अनुरोध के साथ जवाब दे सकता है, जिसमें तर्क भरे होते हैं। आपका कोड फ़ंक्शन चलाता है और role: "tool" वाले संदेश के रूप में परिणाम वापस भेजता है। मॉडल स्वयं कुछ भी एक्ज़िक्यूट नहीं करता। यह केवल पूछता है, और आप तय करते हैं कि वास्तव में क्या चलेगा। यह फ़ाइलें पढ़ने और टेस्ट चालू करने वाले कोडिंग एजेंट्स के पीछे तंत्र है।

सैम्पलिंग कंट्रोल्स

temperature, top_p, stop, seed और रिपीटिशन पेनल्टीज़ पास किए जाते हैं। कम टेम्परेचर कोड और एक्सट्रैक्शन के लिए स्थिर उत्तर देता है। उच्च मान अधिक विविध टेक्स्ट देते हैं।

होस्टेड API या स्वयं मॉडल चलाना

API का विकल्प यह है कि आप अपने स्वयं के हार्डवेयर पर एक ओपन-वेट मॉडल चलाएं। यह एक उचित विकल्प है, और यह जानना ज़रूरी है कि यह कब बेहतर साबित होता है।

प्रश्नहोस्टेड APIसेल्फ-होस्टेड
अग्रिम लागतकोई नहीं, आप टोकन के लिए भुगतान करते हैंGPU खरीद या किराया
सेटअप समयमिनटघंटे से लेकर दिन
स्केलिंगआपकी कुंजी के रेट लिमिट्स द्वारा सीमितआपके हार्डवेयर द्वारा सीमित
डेटा आपकी मशीन से बाहर जाता हैहाँ, प्रोवाइडर कोनहीं
आइडल लागतशून्यआपको तब भी भुगतान करना पड़ता है जब कुछ भी चल नहीं रहा होता

यदि आप प्रतिदिन कुछ हज़ार अनुरोध भेजते हैं या आपका उपयोग बर्स्टी (bursty) है, तो प्रति-टोकन मूल्य निर्धारण आमतौर पर आसान विकल्प होता है। यदि आपका स्थिर भारी लोड है और कड़े नियम हैं जो टेक्स्ट को किसी तीसरे पक्ष को भेजने से रोकते हैं, तो लोकल होस्टिंग अधिक उचित हो सकती है। कई टीमें विचार की पुष्टि करने के लिए एक API पर शुरू करती हैं और बाद में इस प्रश्न पर वापस आती हैं।

सीमाएँ, त्रुटियाँ और अच्छी आदतें

हर API की अपनी सीमाएँ होती हैं, और उन्हें जल्दी जानने से डीबगिंग का समय बचता है। इस सेवा पर एक पूर्ण कुंजी 8 समानांतर अनुरोध और प्रति मिनट 300 अनुरोध की अनुमति देती है। एक ट्रायल कुंजी 2 और 60 की अनुमति देती है। अधिकतम अनुरोध बॉडी 8 MB है। एक स्ट्रीम किए गए अनुरोध में उसका कॉन्करेंसी स्लॉट तब तक बनी रहती है जब तक स्ट्रीम समाप्त नहीं हो जाती, जिससे उन लोगों को परेशानी होती है जो कई स्ट्रीम्स खोलते हैं और उन्हें बंद करना भूल जाते हैं।

सीमा पार करने पर HTTP 429 लौटता है। त्रुटि कोड rate_limited का मतलब प्रति मिनट बहुत सारे अनुरोध हैं, और concurrency का मतलब एक साथ बहुत सारे हैं। एक Retry-After: 5 हेडर के साथ 429 अस्थायी ओवरलोड का संकेत देता है। तीनों मामलों में सही प्रतिक्रिया बैकऑफ़ के साथ प्रतीक्षा करना और पुनः प्रयास करना है, एंडपॉइंट पर ज़ोर डालना नहीं।

  • अपनी ऊपरी सीमाएँ देखने के लिए रिस्पॉन्स हेडर्स से X-RateLimit-Limit-Requests और X-RateLimit-Limit-Concurrency पढ़ें, और अपने क्रेडिट की निगरानी के लिए X-Balance-USD देखें।
  • हर कॉल के साथ X-Request-Id लॉग करें। इससे सहायता प्रश्नों का उत्तर देना बहुत तेज़ हो जाता है।
  • एक समझदारी भरा टाइमआउट और कन्वर्सेशन लंबाई पर कैप सेट करें ताकि एक बेकाबू लूप आपका बैलेंस खर्च न कर सके।
  • कॉन्टेक्स्ट विंडो भरने से पहले चैट के पुराने टर्न्स को ट्रिम करें।

इस API पर विफल या अस्वीकृत अनुरोधों का चार्ज नहीं किया जाता है, और क्रेडिट समाप्त नहीं होता, इसलिए टेस्टिंग में की गई गलती की लागत कम होती है।

इस API के साथ शुरुआत करना

यह सेवा एक होस्टेड, OpenAI-कम्पैटिबल टेक्स्ट API है जो एक ओपन-वेट मॉडल के लिए, एक स्वतंत्र प्रदाता द्वारा चलाई जाती है और कानूनी वयस्क उपयोग के लिए बिना सेंसर जवाब देने के लिए ट्यून की गई है। यह केवल टेक्स्ट है: कोई इमेज, ऑडियो, एम्बेडिंग्स या फाइन-ट्यूनिंग नहीं। यह किसी मॉडल विक्रेता की आधिकारिक API नहीं है। प्रॉम्प्ट्स को ट्रेनिंग के लिए उपयोग नहीं किया जाता है।

नए उपयोगकर्ता Google या ईमेल और पासवर्ड से साइन इन करने के बाद API कुंजी पेज पर एक क्लिक से $0.50 का मुफ़्त ट्रायल क्रेडिट दावा कर सकते हैं। इसके लिए कार्ड की आवश्यकता नहीं होती और यह 7 दिनों तक चलता है। उसके बाद आप $20 से $500 तक किसी भी पूर्ण राशि को टॉप-अप कर सकते हैं, $50 से 5% बोनस, $100 से 10% बोनस और $200 से 15% बोनस के साथ। आप कार्ड (Visa, Mastercard, Apple Pay, Google Pay) या क्रिप्टो (TRC20 पर USDT, Base पर USDC) से भुगतान कर सकते हैं।

कदम छोटे हैं: अपनी API कुंजी बनाएं, दस्तावेज़ों में क्विकस्टार्ट का पालन करें, और ऊपर दिए गए Python स्निपेट को चलाएं। यदि आपका मुख्य उपयोग प्रोग्रामिंग सहायता है, तो कोडिंग एजेंट्स के लिए बिना सेंसर मॉडल पर पृष्ठ उस मामले को अधिक विस्तार से कवर करता है।

प्रश्न और उत्तर

क्या LLM API एक चैटबॉट के समान है?

नहीं। एक चैटबॉट एक इंटरफ़ेस के साथ एक एप्लिकेशन है। एक LLM API ऐसे एप्लिकेशन के पीछे की सेवा है, और आप इंटरफ़ेस या वर्कफ़्लो बनाने के लिए अपने कोड से इसे कॉल करते हैं।

क्या एक का उपयोग करने के लिए मुझे मशीन लर्निंग जानने की आवश्यकता है?

नहीं। यदि आप एक HTTP अनुरोध भेज सकते हैं या एक SDK का उपयोग कर सकते हैं, तो आप एक LLM API का उपयोग कर सकते हैं। आपको प्रॉम्प्ट्स और टोकन को समझने की आवश्यकता है, लेकिन मॉडल को कैसे ट्रेन किया गया है, इसकी नहीं।

OpenAI-कम्पैटिबल का अर्थ क्या है?

इसका अर्थ है कि API OpenAI के चैट एंडपॉइंट के समान अनुरोध प्रारूप स्वीकार करता है। मौजूदा OpenAI SDKs और टूल्स Base URL और कुंजी बदलने के बाद काम करते हैं।

LLM API की लागत कितनी है?

आमतौर पर प्रदाता प्रति मिलियन टोकन के लिए शुल्क लेते हैं, इनपुट और आउटपुट के लिए अलग-अलग दरें होती हैं। यहाँ प्रीपेड क्रेडिट से, कोई सब्सक्रिप्शन के बिना, 1M इनपुट टोकन के लिए $0.15 और 1M आउटपुट टोकन के लिए $0.50 है।

क्या मेरे डेटा का उपयोग मॉडल के प्रशिक्षण के लिए किया जाता है?

इस सेवा पर, प्रॉम्प्ट्स प्रशिक्षण के लिए उपयोग नहीं किए जाते हैं। किसी अन्य प्रदाता के लिए, संवेदनशील टेक्स्ट भेजने से पहले उनकी डेटा नीति पढ़ें।

आपकी कुंजी बस एक फ़ॉर्म दूर है

एक खाता बनाएँ, कुंजी कॉपी करें, बेस URL बदलें। सेटअप यही है।

API कुंजी पाएँ