# LLM API क्या है — Claude API / OpenAI API की बुनियाद

Source: https://www.geekswithgeeks.com/hi/llm-apis/b-what

> API को stateless web service के रूप में देखें जो messages को उत्तर बनाती है।

## एक मुख्य call वाली web service

होस्ट किया language model **web API** से मिलता है: आप JSON body (मॉडल नाम, **messages**, settings) और **API key** के साथ HTTPS `POST` भेजते हैं, और मॉडल का उत्तर तथा **usage** (कितने input और output tokens लगे) वाला JSON पाते हैं। सेवा **stateless** है: calls के बीच कुछ याद नहीं रखती, इसलिए आपका application हर बार पूरी बातचीत भेजता है। बिलिंग प्रति **token** है, इसलिए हर अनुरोध की क़ीमत और latency है। दो सबसे व्यापक परिवार हैं **Anthropic की Claude API** (*Messages API*) और **OpenAI की API** (*Chat Completions* और नई *Responses* API)। उनके ब्योरे अलग हैं, पर इस कोर्स के विचार दोनों और अधिकांश अन्य providers पर लागू होते हैं।

## Request अंदर, message बाहर

LLM API एक HTTPS call है: आप messages और settings भेजते हैं, और message व usage संख्याएँ वापस पाते हैं।

![चार हिस्से: key, request, response, usage।](assets/figures/llm-apis/section-1-map.svg) — चित्र 1.1 — Key, request, response और usage।

## बहुत भुलक्कड़ helpdesk

हर call helpdesk के ऐसे agent को नई फ़ोन call है जो कुछ याद नहीं रखता। हर बार आपको प्रासंगिक इतिहास दोहराना पड़ता है।

## Call का रूप

दोनों providers इसी पैटर्न पर चलते हैं, अलग field नामों के साथ।

```text
POST  https://<provider-host>/<messages-endpoint>
headers:  API key (+ content-type, + version header for some providers)
body:     { "model": "<model-name>",
            "messages": [ {"role": "user", "content": "..."} ],
            "max_tokens": ..., "temperature": ..., ... }

response: { "content"/"choices": [ the reply ],
            "stop_reason"/"finish_reason": "...",
            "usage": { input_tokens, output_tokens } }
```

**Quiz:** LLM API के लिए "stateless" का क्या अर्थ है?

- [ ] वह सिर्फ़ ऑफ़लाइन चलती है
- [ ] वह आपकी बातचीत मुफ़्त हमेशा के लिए रखती है
- [x] वह calls के बीच कुछ याद नहीं रखती, इसलिए आप बातचीत दोबारा भेजते हैं
- [ ] उसमें बिलिंग नहीं है

*Answer:* वह calls के बीच कुछ याद नहीं रखती, इसलिए आप बातचीत दोबारा भेजते हैं. हर अनुरोध में वह सारा संदर्भ होना चाहिए जो मॉडल को चाहिए।
