API दस्तावेज़
अवलोकन
Kimi K2 API, Kimi K2 भाषा मॉडल तक प्रोग्रामेटिक एक्सेस देता है। यह API OpenAI और Anthropic दोनों मैसेज फॉर्मैट्स को सपोर्ट करता है, जिससे मौजूदा ऐप्स में सहज एकीकरण हो सके।
बेस URL
https://kimi-k2.ai/api
समर्थित प्रोटोकॉल
- HTTPS पर REST API
- JSON अनुरोध और प्रतिक्रिया बॉडी
- UTF-8 कैरेक्टर एन्कोडिंग
- ब्राउज़र‑आधारित ऐप्स के लिए CORS सपोर्ट
त्वरित शुरुआत
Kimi K2 API शुरू करने के लिए तीन सरल चरण:
- अकाउंट बनाएं और 100 मुफ्त क्रेडिट प्राप्त करें
- अपने डैशबोर्ड से API key जनरेट करें
- अपना पहला अनुरोध भेजें (अधिकांश मॉडल प्रति अनुरोध 1 क्रेडिट लेते हैं;
kimi-k2.5प्रति अनुरोध 2 क्रेडिट लेता है)
उदाहरण अनुरोध
curl https://kimi-k2.ai/api/v1/chat/completions \
-H "Authorization: Bearer $KIMI_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "kimi-k2-0905",
"messages": [{"role": "user", "content": "नमस्ते"}]
}'
प्रमाणीकरण
API कुंजियाँ
API keys का उपयोग करके प्रमाणीकरण करें। अनुरोध हेडर में अपनी API key शामिल करें:
Authorization: Bearer YOUR_API_KEY
या Anthropic‑compatible endpoints के लिए:
X-API-Key: YOUR_API_KEY
प्रमाणीकरण तरीके
| तरीका | हेडर | फ़ॉर्मेट | एंडपॉइंट्स |
|---|---|---|---|
| Bearer Token | Authorization | Bearer YOUR_API_KEY | /v1/chat/completions |
| API Key | X-API-Key | YOUR_API_KEY | /v1/messages |
API संदर्भ
मॉडल सूची
API के साथ उपयोग किए जा सकने वाले सभी उपलब्ध मॉडल सूचीबद्ध करें।
उपलब्ध मॉडल सूची
GET /v1/models
API के लिए उपलब्ध मॉडलों की सूची लौटाता है।
प्रतिक्रिया प्रारूप
{
"object": "list",
"data": [
{
"id": "kimi-k2",
"object": "model",
"created": 1735785600,
"owned_by": "moonshot-ai",
"permission": [...],
"root": "kimi-k2",
"parent": null
},
{
"id": "kimi-k2-0905",
"object": "model",
"created": 1735785600,
"owned_by": "moonshot-ai",
"permission": [...],
"root": "kimi-k2-0905",
"parent": null
},
{
"id": "kimi-k2-thinking",
"object": "model",
"created": 1735785600,
"owned_by": "moonshot-ai",
"permission": [...],
"root": "kimi-k2-thinking",
"parent": null
}
]
}
प्रतिक्रिया फ़ील्ड
| फ़ील्ड | प्रकार | विवरण |
|---|---|---|
object | string | हमेशा list |
data | array | उपलब्ध मॉडलों की सूची |
data[].id | string | API अनुरोधों में उपयोग होने वाला मॉडल पहचानकर्ता |
data[].object | string | हमेशा model |
data[].owned_by | string | मॉडल का स्वामी संगठन |
चैट कम्प्लीशन्स
Chat Completions API बातचीत के लिए मॉडल प्रतिक्रियाएँ जनरेट करता है। यह endpoint OpenAI के API फ़ॉर्मेट के साथ संगत है।
कम्प्लीशन बनाएं
POST /v1/chat/completions
दिए गए संवाद के लिए मॉडल प्रतिक्रिया जनरेट करता है।
अनुरोध प्रारूप
{
"model": "kimi-k2-0905",
"messages": [
{
"role": "system",
"content": "आप एक सहायक असिस्टेंट हैं।"
},
{
"role": "user",
"content": "क्वांटम कंप्यूटिंग समझाएं"
}
],
"temperature": 0.7,
"max_tokens": 2048,
"top_p": 1.0,
"frequency_penalty": 0,
"presence_penalty": 0,
"stream": false,
"n": 1
}
पैरामीटर्स
| पैरामीटर | प्रकार | आवश्यक | डिफ़ॉल्ट | विवरण |
|---|---|---|---|---|
model | string | हाँ | - | मॉडल पहचानकर्ता। kimi-k2 का उपयोग करें |
messages | array | हाँ | - | इनपुट संदेश। हर संदेश में role और content होते हैं |
temperature | number | नहीं | 0.6 | 0 से 2 के बीच sampling temperature। कम मान आउटपुट को अधिक deterministic बनाते हैं |
max_tokens | integer | नहीं | 1024 | जनरेट होने वाले अधिकतम टोकन। मॉडल अधिकतम 128000 |
top_p | number | नहीं | 1.0 | nucleus sampling threshold। temperature का विकल्प |
frequency_penalty | number | नहीं | 0 | रिपीटेड टोकन पर पेनल्टी। रेंज: -2.0 से 2.0 |
presence_penalty | number | नहीं | 0 | उपस्थिति‑आधारित टोकन पेनल्टी। रेंज: -2.0 से 2.0 |
stream | boolean | नहीं | false | प्रतिक्रियाओं को incremental तरीके से स्ट्रीम करें |
n | integer | नहीं | 1 | जनरेट होने वाली completions की संख्या |
stop | string/array | नहीं | null | stop sequences (अधिकतम 4) |
user | string | नहीं | null | end‑user ट्रैकिंग के लिए यूनिक पहचानकर्ता |
संदेश ऑब्जेक्ट
| फ़ील्ड | प्रकार | विवरण |
|---|---|---|
role | string | इनमें से एक: system, user, assistant |
content | string | संदेश सामग्री |
प्रतिक्रिया प्रारूप
{
"id": "chatcmpl-9d4c2f68-5e3a-4b2f-a3c9-7d8e6f5c4b3a",
"object": "chat.completion",
"created": 1709125200,
"model": "kimi-k2-0905",
"system_fingerprint": "fp_a7c4d3e2",
"choices": [
{
"index": 0,
"message": {
"role": "assistant",
"content": "क्वांटम कंप्यूटिंग क्वांटम मैकेनिक्स के सिद्धांतों का उपयोग करती है..."
},
"finish_reason": "stop"
}
],
"usage": {
"prompt_tokens": 25,
"completion_tokens": 189,
"total_tokens": 214
}
}
प्रतिक्रिया फ़ील्ड
| फ़ील्ड | प्रकार | विवरण |
|---|---|---|
id | string | यूनिक अनुरोध पहचानकर्ता |
object | string | ऑब्जेक्ट प्रकार: chat.completion |
created | integer | Unix timestamp |
model | string | उपयोग किया गया मॉडल |
choices | array | जनरेटेड completions |
usage | object | टोकन उपयोग आँकड़े |
समाप्ति कारण
| मान | विवरण |
|---|---|
stop | प्राकृतिक अंत या stop sequence तक पहुँचा |
length | अधिकतम टोकन सीमा पहुँची |
स्ट्रीमिंग
stream: true होने पर Server‑Sent Events फ़ॉर्मेट:
data: {"id":"chatcmpl-...","choices":[{"delta":{"content":"नमस्ते"},"index":0}]}
data: {"id":"chatcmpl-...","choices":[{"delta":{"content":" वहाँ"},"index":0}]}
data: [DONE]
संदेश
Messages API, Anthropic‑compatible मैसेज जनरेशन प्रदान करता है।
संदेश बनाएं
POST /v1/messages
Messages फ़ॉर्मेट के साथ मॉडल प्रतिक्रिया बनाता है।
अनुरोध प्रारूप
{
"model": "kimi-k2-0905",
"messages": [
{
"role": "user",
"content": "फ्रांस की राजधानी क्या है?"
}
],
"max_tokens": 1024,
"system": "आप एक जानकार भूगोल सहायक हैं।",
"temperature": 0.7,
"top_p": 1.0,
"stop_sequences": ["\n\nHuman:"]
}
पैरामीटर्स
| पैरामीटर | प्रकार | आवश्यक | डिफ़ॉल्ट | विवरण |
|---|---|---|---|---|
model | string | हाँ | - | मॉडल पहचानकर्ता |
messages | array | हाँ | - | बातचीत संदेश (केवल user/assistant) |
max_tokens | integer | हाँ | - | जनरेट होने वाले अधिकतम टोकन |
system | string | नहीं | null | व्यवहार गाइड करने हेतु सिस्टम प्रॉम्प्ट |
temperature | number | नहीं | 0.6 | sampling temperature (0-1) |
top_p | number | नहीं | 1.0 | nucleus sampling threshold |
stop_sequences | array | नहीं | null | stop sequences (अधिकतम 4) |
stream | boolean | नहीं | false | स्ट्रीमिंग प्रतिक्रिया सक्षम करें |
metadata | object | नहीं | null | अनुरोध metadata |
प्रतिक्रिया प्रारूप
{
"id": "msg_01XFDUDYJgAACzvnptvVoYEL",
"type": "message",
"role": "assistant",
"content": [
{
"type": "text",
"text": "फ्रांस की राजधानी पेरिस है।"
}
],
"model": "kimi-k2-0905",
"stop_reason": "end_turn",
"stop_sequence": null,
"usage": {
"input_tokens": 15,
"output_tokens": 9
}
}
प्रतिक्रिया फ़ील्ड
| फ़ील्ड | प्रकार | विवरण |
|---|---|---|
id | string | यूनिक संदेश पहचानकर्ता |
type | string | ऑब्जेक्ट प्रकार: message |
role | string | हमेशा assistant |
content | array | संदेश सामग्री ब्लॉक्स |
model | string | उपयोग किया गया मॉडल |
stop_reason | string | जनरेशन क्यों रुकी |
usage | object | टोकन उपयोग |
सिस्टम प्रॉम्प्ट
Messages API में सिस्टम प्रॉम्प्ट अलग से निर्दिष्ट किए जाते हैं:
{
"system": "आप Claude हैं, Anthropic द्वारा बनाया गया AI सहायक।",
"messages": [
{"role": "user", "content": "नमस्ते"}
],
"max_tokens": 1024
}
मॉडल
उपलब्ध मॉडल
| मॉडल ID | कॉन्टेक्स्ट विंडो | विवरण |
|---|---|---|
kimi-k2 | 128,000 tokens | सामान्य chat completions के लिए प्राथमिक मॉडल |
kimi-k2-0905 | 256,000 tokens | विस्तारित कॉन्टेक्स्ट विंडो वाला उन्नत मॉडल |
kimi-k2-thinking | 256,000 tokens | गहन रीजनिंग, गणितीय प्रमाण, रिसर्च विश्लेषण और बहु‑चरण समस्या‑समाधान के लिए विशेषज्ञ मॉडल |
kimi-k2.5 | 256,000 tokens | Native multimodal agentic MoE मॉडल (1T कुल / 32B सक्रिय) मजबूत tool use और reasoning के साथ |
मॉडल चयन
अपने उपयोग‑केस के आधार पर सही मॉडल चुनें:
kimi-k2: सामान्य conversational AI, कंटेंट जनरेशन और standard tasks के लिए सर्वश्रेष्ठkimi-k2-0905: लंबे कॉन्टेक्स्ट (256K तक) की जरूरत वाले कार्यों के लिए, जैसे पूरे दस्तावेज़ या लंबे संवाद का विश्लेषणkimi-k2-thinking: जटिल reasoning कार्यों के लिए optimized:- गणितीय प्रमाण और प्रतियोगिता‑स्तर के प्रश्न
- रिसर्च विश्लेषण और literature review
- लॉजिकल reasoning के साथ multi‑step समस्या‑समाधान
- उन्नत tool orchestration (200-300 sequential tool calls)
- जटिल UI आवश्यकताओं के साथ फ्रंटएंड डेवलपमेंट
- स्वायत्त नेविगेशन वाले agentic search tasks
kimi-k2.5: Native multimodal, agentic मॉडल, 256K कॉन्टेक्स्ट के साथ tool use और reasoning के लिए optimized
Kimi-K2.5 प्रमुख स्पेक्स: MoE आर्किटेक्चर (1T कुल पैरामीटर, 32B सक्रिय), 256K कॉन्टेक्स्ट, और MoonViT vision encoder।
Thinking मॉडल अपना reasoning प्रक्रिया step‑by‑step दिखाता है, जिससे यह शिक्षा और पारदर्शिता‑आधारित अनुप्रयोगों के लिए आदर्श है।
अनुरोध सीमाएँ
रेट लिमिट्स
रेट लिमिट्स API key के क्रेडिट बैलेंस के आधार पर लागू होती हैं:
| क्रेडिट बैलेंस | अनुरोध/मिनट | अनुरोध/घंटा | अनुरोध/दिन |
|---|---|---|---|
| 1-100 | 20 | 600 | 5,000 |
| 101-1,000 | 60 | 2,000 | 20,000 |
| 1,001-10,000 | 200 | 6,000 | 50,000 |
| 10,000+ | 500 | 15,000 | 100,000 |
रेट लिमिट हेडर्स:
X-RateLimit-Limit: 60
X-RateLimit-Remaining: 59
X-RateLimit-Reset: 1709125800
टोकन सीमाएँ
| लिमिट प्रकार | मान |
|---|---|
| अधिकतम इनपुट टोकन | 128,000 |
| अधिकतम आउटपुट टोकन | 8,192 |
| अधिकतम कुल टोकन | 128,000 |
टाइमआउट सेटिंग्स
| टाइमआउट प्रकार | अवधि |
|---|---|
| कनेक्शन टाइमआउट | 30 सेकंड |
| रीड टाइमआउट | 600 सेकंड |
| स्ट्रीम टाइमआउट | 600 सेकंड |
त्रुटि कोड
HTTP स्थिति कोड
| स्थिति | अर्थ |
|---|---|
| 200 | Success |
| 400 | Bad Request - Invalid parameters |
| 401 | Unauthorized - Invalid or missing API key |
| 403 | Forbidden - Insufficient credits or permissions |
| 404 | Not Found - Invalid endpoint |
| 429 | Too Many Requests - Rate limit exceeded |
| 500 | Internal Server Error |
| 503 | Service Unavailable |
त्रुटि प्रकार
OpenAI फ़ॉर्मेट त्रुटियाँ
{
"error": {
"message": "Invalid API key provided",
"type": "invalid_request_error",
"code": "invalid_api_key"
}
}
| Error Code | Type | Description |
|---|---|---|
invalid_api_key | invalid_request_error | API key अमान्य या गलत फ़ॉर्मेट में है |
insufficient_credits | insufficient_quota | क्रेडिट बैलेंस अपर्याप्त है |
rate_limit_exceeded | rate_limit_error | बहुत अधिक अनुरोध |
invalid_request | invalid_request_error | अनुरोध मान्यकरण विफल |
model_not_found | invalid_request_error | निर्दिष्ट मॉडल मौजूद नहीं है |
context_length_exceeded | invalid_request_error | इनपुट कॉन्टेक्स्ट सीमा से अधिक है |
Anthropic फ़ॉर्मेट त्रुटियाँ
{
"type": "error",
"error": {
"type": "authentication_error",
"message": "Invalid API key"
}
}
| Error Type | Description |
|---|---|
authentication_error | Authentication failed |
invalid_request_error | Request validation failed |
rate_limit_error | Rate limit exceeded |
api_error | Server-side error |
त्रुटि हैंडलिंग
Retries के लिए jitter के साथ exponential backoff लागू करें:
import time
import random
def retry_with_backoff(
func,
max_retries=3,
base_delay=1,
max_delay=60
):
for attempt in range(max_retries):
try:
return func()
except RateLimitError:
if attempt == max_retries - 1:
raise
delay = min(
base_delay * (2 ** attempt) + random.uniform(0, 1),
max_delay
)
time.sleep(delay)
क्लाइंट लाइब्रेरीज़
Python
इंस्टॉलेशन
pip install openai
# या
pip install anthropic
OpenAI क्लाइंट
from openai import OpenAI
client = OpenAI(
api_key="YOUR_API_KEY",
base_url="https://kimi-k2.ai/api/v1"
)
# उपलब्ध मॉडल सूचीबद्ध करें
models = client.models.list()
for model in models.data:
print(f"मॉडल ID: {model.id}")
# चैट कम्प्लीशन बनाएं
response = client.chat.completions.create(
model="kimi-k2-0905",
messages=[
{"role": "user", "content": "नमस्ते"}
]
)
Anthropic क्लाइंट
from anthropic import Anthropic
client = Anthropic(
api_key="YOUR_API_KEY",
base_url="https://kimi-k2.ai/api/v1"
)
response = client.messages.create(
model="kimi-k2-0905",
messages=[
{"role": "user", "content": "नमस्ते"}
],
max_tokens=1024
)
Node.js
इंस्टॉलेशन
npm install openai
# या
npm install @anthropic-ai/sdk
OpenAI क्लाइंट
import OpenAI from 'openai';
const openai = new OpenAI({
apiKey: process.env.KIMI_API_KEY,
baseURL: 'https://kimi-k2.ai/api/v1',
});
// उपलब्ध मॉडल सूचीबद्ध करें
const models = await openai.models.list();
for (const model of models.data) {
console.log(`मॉडल ID: ${model.id}`);
}
// चैट कम्प्लीशन बनाएं
const response = await openai.chat.completions.create({
model: 'kimi-k2-0905',
messages: [{ role: 'user', content: 'नमस्ते' }],
});
Anthropic क्लाइंट
import Anthropic from '@anthropic-ai/sdk';
const anthropic = new Anthropic({
apiKey: process.env.KIMI_API_KEY,
baseURL: 'https://kimi-k2.ai/api/v1',
});
const response = await anthropic.messages.create({
model: 'kimi-k2-0905',
messages: [{ role: 'user', content: 'नमस्ते' }],
max_tokens: 1024,
});
Go
इंस्टॉलेशन
go get github.com/sashabaranov/go-openai
उदाहरण
package main
import (
"context"
"fmt"
openai "github.com/sashabaranov/go-openai"
)
func main() {
config := openai.DefaultConfig("YOUR_API_KEY")
config.BaseURL = "https://kimi-k2.ai/api/v1"
client := openai.NewClientWithConfig(config)
resp, err := client.CreateChatCompletion(
context.Background(),
openai.ChatCompletionRequest{
Model: "kimi-k2",
Messages: []openai.ChatCompletionMessage{
{
Role: openai.ChatMessageRoleUser,
Content: "नमस्ते",
},
},
},
)
if err != nil {
panic(err)
}
fmt.Println(resp.Choices[0].Message.Content)
}
REST API
बिना क्लाइंट लाइब्रेरी के सीधे HTTP अनुरोध:
cURL
curl -X POST https://kimi-k2.ai/api/v1/chat/completions \
-H "Authorization: Bearer $KIMI_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "kimi-k2",
"messages": [
{"role": "user", "content": "नमस्ते"}
]
}'
Python (requests)
import requests
response = requests.post(
"https://kimi-k2.ai/api/v1/chat/completions",
headers={
"Authorization": f"Bearer {api_key}",
"Content-Type": "application/json"
},
json={
"model": "kimi-k2",
"messages": [{"role": "user", "content": "नमस्ते"}]
}
)
Node.js (fetch)
const response = await fetch('https://kimi-k2.ai/api/v1/chat/completions', {
method: 'POST',
headers: {
'Authorization': `Bearer ${apiKey}`,
'Content-Type': 'application/json',
},
body: JSON.stringify({
model: 'kimi-k2-0905',
messages: [{ role: 'user', content: 'नमस्ते' }],
}),
});
बिलिंग
क्रेडिट सिस्टम
API उपयोग क्रेडिट सिस्टम के माध्यम से बिल किया जाता है:
- अधिकांश मॉडल: प्रति API अनुरोध 1 क्रेडिट
kimi-k2.5: प्रति API अनुरोध 2 क्रेडिट- सफल completion के बाद क्रेडिट घटते हैं
- विफल अनुरोध (4xx) पर शुल्क नहीं लगता
- सर्वर त्रुटि (5xx) पर शुल्क नहीं लगता
- नए यूज़र को रजिस्ट्रेशन पर 100 मुफ्त क्रेडिट मिलते हैं
- इनवाइट रिवॉर्ड्स:
- 50 क्रेडिट जब कोई आपके इनवाइट कोड से रजिस्टर करे
- 500 क्रेडिट जब आमंत्रित यूज़र पहला भुगतान करे
क्रेडिट पैकेज
| पैकेज | क्रेडिट | कीमत | प्रति क्रेडिट | वैधता |
|---|---|---|---|---|
| Starter | 500 | $4.99 | $0.0099 | No expiration |
| Standard | 5,000 | $29.99 | $0.0060 | 1 month |
| Premium | 20,000 | $59.99 | $0.0030 | 1 month |
| Enterprise | Custom | Contact sales | Custom | Custom |
उपयोग ट्रैकिंग
अपना उपयोग यहाँ ट्रैक करें:
- Response headers:
X-Credits-Remaining: 4523 - डैशबोर्ड: रियल‑टाइम उपयोग आँकड़े /my-credits
- API endpoint:
GET /api/user/credits
उपयोग डेटा में शामिल है:
- कुल क्रेडिट खपत
- शेष क्रेडिट
- दिन/घंटे के अनुसार उपयोग
- प्रति अनुरोध औसत टोकन
माइग्रेशन गाइड
OpenAI से
OpenAI API से माइग्रेशन में न्यूनतम बदलाव चाहिए:
-
Base URL अपडेट करें:
# पहले client = OpenAI(api_key="sk-...") # बाद में client = OpenAI( api_key="sk-...", base_url="https://kimi-k2.ai/api/v1" ) -
मॉडल नाम अपडेट करें:
# पहले model="gpt-4" # बाद में model="kimi-k2-0905" -
अन्य किसी बदलाव की जरूरत नहीं — API पूरी तरह संगत है
Anthropic से
Anthropic API से माइग्रेशन:
-
Base URL अपडेट करें:
# पहले client = Anthropic(api_key="sk-ant-...") # बाद में client = Anthropic( api_key="sk-...", base_url="https://kimi-k2.ai/api/v1" ) -
प्रमाणीकरण अपडेट करें:
- Kimi K2 डैशबोर्ड से API key जनरेट करें
- Anthropic API key को replace करें
-
मॉडल संगतता:
Kimi K2समर्थित है
चेंज लॉग
2025-11-10
- kimi-k2-thinking मॉडल जोड़ा गया
- जटिल reasoning कार्यों के लिए विशेषज्ञ मॉडल
- step‑by‑step reasoning प्रक्रिया दिखाने का समर्थन
- गणितीय प्रमाण, रिसर्च विश्लेषण और multi‑step समस्या‑समाधान के लिए सपोर्ट
- एडवांस्ड tool orchestration क्षमताएँ (200-300 sequential tool calls)
2025-09-05
- 256K कॉन्टेक्स्ट विंडो सपोर्ट
- kimi-k2-0905 मॉडल सपोर्ट
2025-01-30
- Anthropic Messages API संगतता जोड़ी गई
- X-API-Key प्रमाणीकरण विधि पेश की गई