जिन मानों की प्रतिलिपि बनानी है
जो mimo api बेस url की तलाश में हैं, उन्हें तीन मानों की आवश्यकता है, और बाकी सब आप जिस टूल को कॉन्फ़िगर कर रहे हैं, उसका विवरण है।
| सेटिंग | मान |
|---|---|
| बेस URL | https://api.mimoapi.top/v1 |
| मॉडल ID | uncensored |
| Auth हेडर | Authorization: Bearer YOUR_KEY |
| Chat एंडपॉइंट | POST /v1/chat/completions |
| मॉडल सूची | GET /v1/models |
यह सेवा OpenAI-संगत है, इसलिए कोई भी क्लाइंट जो आपको OpenAI बेस URL और कुंजी बदलने की अनुमति देता है, काम करेगा। यह एक होस्टेड टेक्स्ट API है जो एक स्वतंत्र प्रदाता से एक ओपन-वेट मॉडल चलाती है; यह किसी भी मॉडल विक्रेता की आधिकारिक API नहीं है। केवल टेक्स्ट: इसमें इमेज, ऑडियो या वीडियो जनरेशन, एम्बेडिंग्स और फाइन-ट्यूनिंग नहीं है, इसलिए ऐसे एंडपॉइंट्स की उम्मीद करने वाले क्लाइंट उन्हें नहीं पाएंगे। यदि आपके पास अभी तक कोई कुंजी नहीं है, तो कुंजी पेज पर एक मिनट लगते हैं।
बेस URL बनाम पूरा एंडपॉइंट
सबसे आम भ्रम बेस URL और एंडपॉइंट URL के बीच होता है। बेस URL /v1 पर रुक जाता है। एंडपॉइंट बेस और एक पाथ का योग है। आधिकारिक OpenAI SDK और उन पर बने अधिकांश टूल्स दोनों को आपके लिए जोड़ देते हैं।
- बेस URL:
https://api.mimoapi.top/v1 - चैट एंडपॉइंट:
https://api.mimoapi.top/v1/chat/completions - मॉडल एंडपॉइंट:
https://api.mimoapi.top/v1/models
जब सेटिंग्स स्क्रीन "बेस URL", "API बेस", "एंडपॉइंट" या "होस्ट" के लिए पूछे, तो उसका प्लेसहोल्डर पढ़ें। यदि प्लेसहोल्डर /v1 पर समाप्त होता है, तो बेस URL पेस्ट करें। यदि यह /chat/completions पर समाप्त होता है, तो पूरा चैट एंडपॉइंट पेस्ट करें। बेस URL की उम्मीद वाले फ़ील्ड में पूरा एंडपॉइंट पेस्ट करने पर /chat/completions/chat/completions बनता है, जो मौजूद नहीं है। केवल डोमेन को बेस URL की उम्मीद वाले फ़ील्ड में पेस्ट करने पर /chat/completions बनता है, जिसमें /v1 नहीं होता, जिससे वही त्रुटि आती है।
होस्ट का भी ध्यान रखें। API api सबडोमेन पर चलता है। साधारण साइट डोमेन वेब पेज सर्व करता है, इसलिए API पथ के साथ उस पर अनुरोध भेजने पर मॉडल तक नहीं पहुँचा जा सकता।
Python और Node
आधिकारिक SDK में, क्लाइंट बनाते समय आप बेस URL एक बार सेट करते हैं। इसे pip install openai या npm install openai से इंस्टॉल करें।
from openai import OpenAI
client = OpenAI(
base_url="https://api.mimoapi.top/v1",
api_key="YOUR_KEY",
)
resp = client.chat.completions.create(
model="uncensored",
messages=[{"role": "user", "content": "Name three uses for a base URL."}],
max_tokens=150,
)
print(resp.choices[0].message.content)
import OpenAI from "openai";
const client = new OpenAI({
baseURL: "https://api.mimoapi.top/v1",
apiKey: process.env.LLM_API_KEY,
});
const resp = await client.chat.completions.create({
model: "uncensored",
messages: [{ role: "user", content: "Name three uses for a base URL." }],
max_tokens: 150,
});
console.log(resp.choices[0].message.content);
Python और Node OpenAI SDK कोड में मान पास न करने पर पर्यावरण चर OPENAI_BASE_URL और OPENAI_API_KEY भी पढ़ते हैं। इससे मौजूदा स्क्रिप्ट को बिना एडिट किए उसका लक्ष्य बदला जा सकता है: दोनों चर एक्सपोर्ट करें, और स्क्रिप्ट इस API से बात करेगी। जांचें कि स्क्रिप्ट में GPT नाम जैसा कोई मॉडल हार्डकोड तो नहीं है; उसे uncensored से बदलें।
त्वरित परीक्षण के लिए curl
एक साधारण HTTP कॉल अन्य हर चर को हटा देता है, इसलिए यह सबसे अच्छा पहला परीक्षण है। पहला कमांड मॉडल्स सूचीबद्ध करता है और कुंजी की पुष्टि करता है। दूसरा चैट अनुरोध भेजता है।
export LLM_API_KEY="YOUR_KEY"
curl -s https://api.mimoapi.top/v1/models \
-H "Authorization: Bearer $LLM_API_KEY"
curl -s https://api.mimoapi.top/v1/chat/completions \
-H "Authorization: Bearer $LLM_API_KEY" \
-H "Content-Type: application/json" \
-d '{"model":"uncensored","messages":[{"role":"user","content":"ping"}],"max_tokens":20}' -i
-i फ्लैग रिस्पॉन्स हेडर प्रिंट करता है। X-Request-Id (सपोर्ट से संपर्क करते समय इसे बताएँ), X-Balance-USD (आपका शेष क्रेडिट) और दो रेट लिमिट हेडर, X-RateLimit-Limit-Requests और X-RateLimit-Limit-Concurrency की तलाश करें। स्ट्रीमिंग के लिए, बॉडी में "stream": true और curl में -N जोड़ें ताकि आउटपुट बफर्ड न हो। पांच मिनट का क्विकस्टार्ट स्ट्रीमिंग और टूल कॉलिंग को चरण-दर-चरण समझाता है।
LangChain, चैट फ्रंटएंड और अन्य टूल्स
थर्ड-पार्टी टूल्स अपने लेबल का उपयोग करते हैं, लेकिन सभी को उसी तीन मानों की आवश्यकता है। कुछ पैटर्न जो आप देखेंगे:
- LangChain (Python):
ChatOpenAI(model="uncensored", base_url="https://api.mimoapi.top/v1", api_key="YOUR_KEY")। यह क्लास किसी भी OpenAI-कम्पैटिबल सर्वर के लिए काम करता है। - SillyTavern और समान रोलप्ले फ्रंटएंड: एक कस्टम या जनरिक OpenAI-कम्पैटिबल चैट स्रोत चुनें, बेस URL पेस्ट करें, कुंजी जोड़ें, और यदि सूची स्वयं भरे नहीं तो मॉडल नाम के रूप में
uncensoredटाइप करें। - Open WebUI और अन्य सेल्फ-होस्टेड चैट UIs: सेटिंग्स में OpenAI-कम्पैटिबल कनेक्शन जोड़ें, उसी बेस URL और कुंजी का उपयोग करके।
- एडिटर प्लगइन और स्क्रिप्ट्स: प्लगइन सेटिंग्स में "custom OpenAI endpoint" या "override base URL" की तलाश करें।
प्रत्येक टूल के मेनू नाम संस्करणों के बीच बदल जाते हैं, इसलिए सटीक लेबल के बजाय फ़ील्ड के उद्देश्य पर भरोसा करें। यदि कोई टूल कुंजी की जांच एक निश्चित प्रदाता के खिलाफ करने पर जोर देता है, तो वह कस्टम एंडपॉइंट के साथ संगत नहीं है, और एक अलग टूल ही समाधान है।
जब कोई टूल मॉडल ड्रॉपडाउन प्रदान करता है, तो यह आमतौर पर GET /v1/models कॉल करके इसे भरता है। यदि ड्रॉपडाउन खाली रहता है, तो मॉडल ID हाथ से टाइप करें। यदि टूल अज्ञात मॉडल नामों को अस्वीकार करता है, तो "custom model" लेबल वाले विकल्प की तलाश करें।
आम कॉन्फ़िगरेशन त्रुटियों को ठीक करना
जब एक अनुरोध विफल हो जाता है, तो स्टेटस कोड और सटीक URL कारण को जल्दी संकीर्ण करते हैं। इस सूची को ऊपर से नीचे देखें।
- प्रमाणीकरण त्रुटि। कुंजी गायब है, कटी हुई है या अंत में स्पेस या न्यूलाइन है। इसे फिर से पेस्ट करें, और सुनिश्चित करें कि हेडर
Bearer, एक स्पेस, फिर कुंजी पढ़ता है। - मिला नहीं। पथ गलत है। अपने क्लाइंट द्वारा बनाए गए अंतिम URL को प्रिंट करें। वह बिल्कुल
https://api.mimoapi.top/v1/chat/completionsहोना चाहिए। किसी गायब/v1, दोगुने पथ या गलत होस्ट की तलाश करें। - अज्ञात मॉडल। किसी अन्य प्रदाता से बचा हुआ मॉडल नाम। मॉडल को
uncensoredपर सेट करें। - HTTP 429
rate_limitedयाconcurrencyके साथ। आप प्रति मिनट 300 अनुरोध या एक साथ 8 अनुरोधों से अधिक भेज रहे हैं (ट्रायल कुंजी पर 60 और 2)। गति कम करें या अनुरोधों को कतार में लगाएं।Retry-After: 5हेडर के साथ 429 का अर्थ अस्थायी ओवरलोड है; पांच सेकंड प्रतीक्षा करें और पुनः प्रयास करें। - अनुरोध बहुत बड़ा है। बॉडी की सीमा 8 MB है, और प्रॉम्प्ट और कंप्लीशन मिलाकर कॉन्टेक्स्ट विंडो 100,000 टोकन है। इतिहास को कम करें।
- curl में काम करता है, ब्राउज़र में विफल होता है। फ्रंट-एंड जावास्क्रिप्ट से सीधे API को कॉल करने से आपकी कुंजी हर आगंतुक के लिए उजागर हो जाती है। अपने सर्वर के माध्यम से कॉल रूट करें।
कुंजी को सार्वजनिक रिपॉजिटरी या क्लाइंट-साइड बंडल में कभी न रखें। इसे एक एनवायरनमेंट वेरिएबल में स्टोर करें, और इसे स्क्रीनशॉट और सपोर्ट टिकट से दूर रखें।
पहली सफल कॉल के बाद अगले कदम
एक बार बेस URL काम करने के बाद, कुछ सेटिंग्स जानना उपयोगी हैं। SSE के माध्यम से स्ट्रीमिंग stream: true से चालू होती है। टूल कॉलिंग tools और tool_choice का उपयोग करती है, जिसके परिणाम role: "tool" संदेशों के रूप में वापस भेजे जाते हैं। JSON मोड response_format: {"type": "json_object"} है। temperature, top_p, stop, seed और पेनल्टी जैसे सैंपलिंग नियंत्रण पास किए जाते हैं।
मूल्य की बात करें, तो आप प्रीपेड क्रेडिट से 1M इनपुट टोकन के लिए $0.15 और 1M आउटपुट टोकन के लिए $0.50 देते हैं; मूल्य निर्धारण पृष्ठ पर टॉप-अप आकार और बोनस सूचीबद्ध हैं। मॉडल वयस्कों के कानूनी उपयोग के लिए बिना सामग्री अस्वीकृति के उत्तर देने के लिए ट्यून्ड है, और नाबालिगों से संबंधित यौन सामग्री कभी भी अनुमत नहीं है। प्रॉम्प्ट को ट्रेनिंग के लिए उपयोग नहीं किया जाता है।
