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

Ollama API बनाम OpenAI API: एंडपॉइंट और कोड

Ollama API बनाम OpenAI API का प्रश्न दो अनुरोध फॉर्मेट और मॉडल चलाने के दो स्थानों तक सीमित है। Ollama का अपना नेटिव API और एक OpenAI-संगत परत है, इसलिए एक होस्टेड OpenAI-शैली के एंडपॉइंट पर जाना बेस URL और कुंजी में बदलाव हो सकता है।

अद्यतन

दो हल्के सेतुओं द्वारा जुड़ी डेस्कटॉप मशीन और क्लाउड सर्वर, जो समान संदेश लिफाफे ले जाते हैं
स्थानीय कंप्यूटर और क्लाउड सर्वर दोनों से चमकदार केबल्स द्वारा जुड़ी चैट विंडो

कोई कार्ड आवश्यक नहीं। साइन-अप के बाद, एक क्लिक से $0.50 का मुफ़्त ट्रायल क्रेडिट क्लेम करें (प्रति व्यक्ति एक बार)।

API कुंजी पाएँ

मुख्य बिंदु

  • Ollama के पास /api के तहत नेटिव राउट्स और /v1 के तहत एक OpenAI-संगत परत है; OpenAI SDK के लिए लिखे गए क्लाइंट आमतौर पर दोनों के साथ काम करते हैं।
  • नेटिव Ollama न्यूलाइन-विभक्त JSON स्ट्रीम करता है, जबकि OpenAI फॉर्मेट सर्वर-सेंट इवेंट्स स्ट्रीम करता है।
  • स्थानीय से होस्टेड पर जाने का मतलब है बेस URL, कुंजी और मॉडल नाम बदलना, आपका कोड नहीं।
  • स्थानीय डेटा को आपकी मशीन पर रखता है; होस्टेड हार्डवेयर की मेहनत हटा देता है और प्रति-टोकन बिल जोड़ता है।

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

दोनों आपको संदेशों की एक सूची POST करने और पाठ वापस पाने के लिए कहते हैं। अंतर अनुरोध के आकार में है, सर्वर कहाँ है और GPU के लिए कौन भुगतान करता है। Ollama मॉडल को आपकी अपनी कंप्यूटर पर चलाता है और पोर्ट 11434 पर सुनता है। OpenAI API एक होस्टेड सेवा है जिसके अपने भुगतान मॉडल हैं। ollama api vs openai api तुलना में लोग अक्सर एक तीसरी बात छूट जाते हैं: Ollama OpenAI-संगत राउट्स भी प्रकट करता है, इसलिए दोनों फॉर्मेट ओवरलैप करते हैं।

यह ओवरलैप ही माइग्रेशन को सस्ता बनाता है। यदि आपकी ऐप पहले से OpenAI SDK का उपयोग करती है, तो आप इसे आज स्थानीय Ollama के पास इंगित कर सकते हैं और कल एक होस्टेड OpenAI-संगत URL पर। इस साइट पर होस्टेड एंडपॉइंट उनमें से एक है। यह एकल मॉडल, uncensored, को https://api.ollamansfw.com/v1 पर प्रदान करता है, और यह OpenAI, Meta या किसी अन्य लैब का आधिकारिक उत्पाद नहीं है।

एंडपॉइंट-दर-एंडपॉइंट अंतर

कार्यOllama नेटिवOpenAI-शैली
चैटPOST /api/chatPOST /v1/chat/completions
एकल प्रॉम्प्टPOST /api/generatePOST /v1/responses या चैट कंप्लीशन्स
मॉडल सूचीबद्ध करेंGET /api/tagsGET /v1/models
Authडिफ़ॉल्ट रूप से कोई नहींAuthorization: Bearer key
स्ट्रीमिंगन्यूलाइन-डिलिमिटेड JSONसर्वर-सेंट इवेंट्स, एक done मार्कर पर समाप्त होते हैं
मॉडल का नामजो भी आपने खींचा, जैसे llama3जो भी प्रोवाइडर सूचीबद्ध करता है

Ollama /v1/chat/completions और /v1/models को उसी पोर्ट पर प्रदान करता है, जो OpenAI क्लाइंटों को इसके साथ काम करने देता है। नेटिव कॉल के लिए इसका डिफ़ॉल्ट स्ट्रीमिंग है, इसलिए जब आप एकल JSON जवाब चाहते हैं तो stream: false सेट करें।

होस्टेड एंडपॉइंट POST /v1/chat/completions, POST /v1/responses और GET /v1/models को लागू करता है, साथ ही GET /v1/balance पर बैलेंस चेक। पूरी सूची के लिए API docs देखें।

एक ही अनुरोध, तीन तरीके

Python से नेटिव Ollama:

import requests

r = requests.post(
    "http://localhost:11434/api/chat",
    json={
        "model": "llama3",
        "messages": [{"role": "user", "content": "Say hello in five words."}],
        "stream": False,
    },
)
print(r.json()["message"]["content"])

स्थानीय और होस्टेड सेटिंग्स के साथ OpenAI SDK। केवल टिप्पणी वाली पंक्ति बदलती है:

from openai import OpenAI

# Local Ollama through its OpenAI-compatible layer:
# client = OpenAI(base_url="http://localhost:11434/v1", api_key="ollama")

# Hosted endpoint, same code from here on:
client = OpenAI(base_url="https://api.ollamansfw.com/v1", api_key="YOUR_KEY")

resp = client.chat.completions.create(
    model="uncensored",   # local would be e.g. "llama3"
    messages=[{"role": "user", "content": "Say hello in five words."}],
)
print(resp.choices[0].message.content)

और स्ट्रीमिंग के साथ होस्टेड एंडपॉइंट के खिलाफ curl:

curl https://api.ollamansfw.com/v1/chat/completions \
  -H "Authorization: Bearer YOUR_KEY" \
  -H "Content-Type: application/json" \
  -d '{"model":"uncensored","messages":[{"role":"user","content":"Hello"}],"stream":true}'

नेटिव साइड पर पार्सिंग अलग है: प्रत्येक स्ट्रीम की गई पंक्ति एक JSON ऑब्जेक्ट होती है जिसमें message.content होता है, और अंतिम में done: true होता है। OpenAI फॉर्मेट में प्रत्येक इवेंट data: से शुरू होता है, choices[0].delta.content का एक हिस्सा लेता है, और स्ट्रीम [DONE] पर समाप्त होती है। SDK का उपयोग करें और आपको इनमें से कोई नहीं दिखेगा।

जहाँ प्रत्येक का उपयोग उचित है

स्थानीय Ollama सही विकल्प है जब गोपनीयता शीर्ष चिंता है, जब आपके पास आपके द्वारा वांछित मॉडल के लिए पर्याप्त मेमोरी वाला GPU है, या जब आप कई मॉडल के साथ प्रयोग करते हैं। कुछ भी आपकी मशीन से बाहर नहीं जाता और कोई प्रति-टोकन बिल नहीं है। लागत हार्डवेयर, पावर और आपके समय के रूप में प्रकट होती है। हमारे GUI के साथ Ollama उपयोग गाइड उस राउट के मित्रवत पक्ष को कवर करती है।

एक होस्टेड OpenAI-कम्पैटिबल एंडपॉइंट तब बेहतर फिट बैठता है जब आपके पास हार्डवेयर न हो, आपको कई समानांतर अनुरोधों की आवश्यकता हो, आप किसी अन्य लोगों के लिए बॉट या सेवा चला रहे हों, या एक स्थिर URL चाहिए जो आपके लैपटॉप के चालू रहने पर निर्भर न करे। एक पूर्ण कुंजी 8 समानांतर अनुरोधों और प्रति मिनट 300 अनुरोधों की अनुमति देती है। कॉन्टेक्स्ट विंडो 100,000 टोकन का है, जो कई स्थानीय सेटअप मेमोरी में नहीं रख सकते।

बहुत से लोग दोनों का उपयोग करते हैं: प्रयोगों के लिए स्थानीय, किसी भी चीज़ के लिए जो चलनी चाहिए, होस्टेड। यदि आप अन्य स्थानीय टूल्स पर विचार कर रहे हैं, तो Ollama सॉफ़्टवेयर विकल्प पढ़ें।

स्थानीय Ollama से होस्टेड में माइग्रेट करना

  1. पहले OpenAI फॉर्मेट पर स्विच करें। यदि आपकी कोड /api/chat को कॉल करती है, तो इसे Ollama के /v1 राउट पर इंगित OpenAI SDK में ले जाएं। पुष्टि करें कि यह स्थानीय रूप से अभी भी काम करता है।
  2. एक कुंजी प्राप्त करें। साइन अप करें और API कुंजी पेज पर $0.50 ट्रायल क्लेम करें। इसके लिए भुगतान की आवश्यकता नहीं है और यह 7 दिनों तक चलता है।
  3. तीन मान बदलें। Base URL को https://api.ollamansfw.com/v1, कुंजी को अपनी, मॉडल को uncensored पर।
  4. पैरामीटर जांचें। तापमान, top_p, stop, seed और पेनल्टीज पास हो जाती हैं। स्थानीय-केवल विकल्प जैसे Ollama का num_ctx या keep_alive लागू नहीं होते; विंडो 100,000 टोकन पर स्थिर है।
  5. रीट्राई लॉजिक जोड़ें। होस्टेड API सीमा से परे 429 rate_limited या concurrency के साथ लौटाता है, और अस्थायी ओवरलोड के दौरान Retry-After: 5 के साथ 429 लौटाता है। स्थानीय सर्वर ऐसा दुर्लभ ही करते हैं, इसलिए मौजूदा कोड इसे संभाल नहीं सकता हो सकता है।

यदि स्विच करने के बाद कुछ विफल हो जाता है, तो सामान्य Ollama API त्रुटियाँ लेख गलत पोर्ट्स और मॉडल नामों की कमी जैसे सामान्य कारणों को कवर करता है।

होस्टेड की लागत क्या है, और यह क्या नहीं करेगा

बिलिंग प्रीपेड क्रेडिट से पे-एज़-यू-गो है: 1M इनपुट टोकन के लिए $0.15 और 1M आउटपुट टोकन के लिए $0.50। 1,000 इनपुट और 400 आउटपुट टोकन वाले एक चैट टर्न की लागत $0.00015 + $0.0002 = $0.00035 होती है, इसलिए $20 लगभग 57,000 ऐसे टर्न कवर करता है। विफल या अस्वीकृत अनुरोधों के लिए चार्ज नहीं किया जाता है और क्रेडिट कभी समाप्त नहीं होता। टॉप-अप $20 से $500 तक चलते हैं, $50 से +5%, $100 से +10% और $200 से +15% बोनस के साथ। भुगतान केवल क्रिप्टो द्वारा होता है (TRC20 पर USDT या Base पर USDC)। मूल्य निर्धारण पेज पर अधिक जानकारी।

जानने योग्य सीमाएँ: केवल टेक्स्ट, इसलिए एम्बेडिंग्स, इमेज जनरेशन या फाइन-ट्यूनिंग नहीं। यदि आप स्थानीय एम्बेडिंग्स पर निर्भर हैं, तो उन्हें स्थानीय रखें। मॉडल वयस्कों के वैध उपयोग के लिए बिना सेंसर जवाब देने के लिए ट्यून्ड है। नाबालिगों से जुड़ा यौन सामग्री कभी अनुमत नहीं है। प्रॉम्प्ट को ट्रेनिंग के लिए उपयोग नहीं किया जाता है।

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

क्या Ollama API OpenAI API के संगत है?

आंशिक रूप से। Ollama के पास /api के तहत नेटिव राउट्स हैं और यह /v1/chat/completions जैसी OpenAI-शैली की राउट्स भी प्रदान करता है, इसलिए OpenAI SDK क्लाइंट इससे बात कर सकते हैं।

स्थानीय Ollama से एक होस्टेड एंडपॉइंट पर जाने के लिए मुझे क्या बदलना चाहिए?

बेस URL, API कुंजी और मॉडल नाम। यदि आपका कोड पहले से ही OpenAI SDK का उपयोग करता है, तो कुछ और बदलने की आवश्यकता नहीं है।

क्या होस्टेड API Ollama की तरह एम्बेडिंग्स का समर्थन करता है?

नहीं। यह केवल पाठ उत्पादन है: चैट पूर्णताएं और प्रतिक्रियाएं, बिना एम्बेडिंग्स, छवियों या सूक्ष्म-अनुकूलन के।

क्या Ollama मुफ़्त है?

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