pplx-api ची ओळख

ओपन-सोर्स LLM साठी Perplexity Lab चे जलद आणि कार्यक्षम API

Introducing pplx-api by Perplexity Labs

कृपया लक्षात घ्या: वर्तमान मॉडेल्ससाठी खालील गोष्टी बंद करण्यात आल्या आहेत. आमच्या API बद्दल अधिक जाणून घ्या

Mistral 7B, Llama2 13B, Code Llama 34B, Llama2 70B, replit-code-v1.5-3b मॉडेल्समध्ये प्रवेश करण्याचा सर्वात वेगवान मार्ग असण्यासाठी डिझाइन केलेले pplx-api ची घोषणा करताना आम्हाला आनंद होत आहे. pplx-api विकासकांसाठी अत्याधुनिक ओपन-सोर्स LLM त्यांच्या प्रकल्पांमध्ये समाकलित करणे सोपे करते.

आमचे pplx-api खालील गोष्टी प्रदान करते:

वापरण्यास सुलभता: विकासक अत्याधुनिक ओपन-सोर्स मॉडेल्सचा थेट वापर करू शकतात आणि परिचित REST API सह काही मिनिटांत सुरू करू शकतात.

अत्यंत वेगवान अनुमान (इन्फरन्स): आमची विचारपूर्वक डिझाइन केलेली इन्फरन्स सिस्टम कार्यक्षम आहे आणि Replicate पेक्षा 2.9x कमी लेटन्सी आणि Anyscale पेक्षा 3.1x कमी लेटन्सी साध्य करते.

व्यवहारांमध्ये कसोटीवर उतरलेली पायाभूत सुविधा: pplx-api विश्वसनीय असल्याचे सिद्ध झाले आहे, ते आमच्या Perplexity उत्तर इंजिन आणि आमच्या Labs प्लेग्राउंड या दोन्हीमध्ये प्रॉडक्शन-स्तरीय ट्रॅफिक सेवा पुरवते.

ओपन-सोर्स LLM साठी वन-स्टॉप शॉप: आमची टीम नवीन ओपन-सोर्स मॉडेल्स आल्यावर ती जोडण्यासाठी समर्पित आहे. उदाहरणार्थ, आम्ही प्री-रिलीझ प्रवेशाशिवाय लॉन्च झाल्यानंतर काही तासांच्या आत Llama आणि Mistral मॉडेल्स जोडली.

pplx-api सार्वजनिक बीटा मध्ये आहे आणि Perplexity Pro सबस्क्रिप्शन असलेल्या वापरकर्त्यांसाठी विनामूल्य आहे.

कॅज्युअल वीकेंड हॅकाथॉनसाठी किंवा नवीन आणि नाविन्यपूर्ण उत्पादने तयार करण्यासाठी व्यावसायिक उपाय म्हणून pplx-api वापरू नका. या रिलीझद्वारे लोक आमच्या API सह छान आणि नाविन्यपूर्ण उत्पादने कशी तयार करू शकतात हे जाणून घेण्यास आम्हाला आवडेल. तुमच्याकडे pplx-api साठी व्यवसाय युझ केस असल्यास कृपया api@perplexity.ai वर संपर्क साधा. आम्हाला तुमच्याकडून ऐकायला नक्कीच आवडेल!

pplx-api चे फायदे

वापरण्यास सुलभता

LLM उपयोजन (डिप्लॉयमेंट) आणि इन्फरन्ससाठी मॉडेल सर्व्हिंग परफॉर्मंट आणि किफायतशीर करण्यासाठी महत्त्वपूर्ण पायाभूत सुविधांची आवश्यकता असते. C++/CUDA चे गाभाऊ ज्ञान किंवा GPU मध्ये प्रवेश नसतानाही विकासक आमचे API आउट-ऑफ-द-बॅक्स वापरू शकतात आणि अत्याधुनिक कार्यक्षमतेचा आनंद घेऊ शकतात. आमचे LLM इन्फरन्स आपल्या स्वतःच्या हार्डवेअरचे व्यवस्थापन करण्याची जटिलता आणि गरज देखील कमी करते, ज्यामुळे वापरण्याची सुलभता आणखी वाढते.


अत्यंत वेगवान इन्फरन्स

Perplexity चे LLM API जलद इन्फरन्ससाठी काळजीपूर्वक डिझाइन आणि ऑप्टिमाइझ केले गेले आहे. हे साध्य करण्यासाठी, आम्ही AWS द्वारे प्रदान केलेल्या A100 GPU वर सर्व्ह केल्या जाणाऱ्या NVIDIA च्या TensortRT-LLM भोवती एक मालकीची LLM इन्फरन्स पायाभूत सुविधा तयार केली आहे. pplx-api पायाभूत सुविधांचा आढावा विभागात अधिक जाणून घ्या. परिणामी, pplx-api हे व्यावसायिकरित्या उपलब्ध असलेल्या सर्वात वेगवान Llama आणि Mistral API पैकी एक आहे.

विद्यमान उपायांविरुद्ध बेंचमार्क करण्यासाठी, आम्ही pplx-api च्या लेटन्सीची इतर LLM इन्फरन्स लायब्ररींशी तुलना केली. आमच्या प्रयोगांमध्ये, pplx-api ने टेक्स्ट जनरेशन इन्फरन्स (TGI) च्या तुलनेत एकूण लेटन्सीमध्ये 2.92x पर्यंत वेगवान लेटन्सी आणि सुरुवातीच्या प्रतिसाद लेटन्सीमध्ये 4.35x पर्यंत वेगवान लेटन्सी साध्य केली. या प्रयोगासाठी, आम्ही दोन्ही GPU मध्ये शार्डेड केलेल्या Llama-2-13B-chat मॉडेलचा वापर करून 2 A100 GPU वर सिंगल-स्ट्रीम आणि सर्व्हर परिदृश्यांसाठी TGI आणि Perplexity च्या इन्फरन्सची तुलना केली. सिंगल-स्ट्रीम परिदृश्यासाठी, सर्व्हर एकामागून एक विनंती प्रक्रिया करतो. सर्व्हर परिदृश्यामध्ये, क्लायंट भिन्न लोडचे अनुकरण करण्यासाठी भिन्न विनंती दरांसह पोइसन वितरणा अनुसार विनंत्या पाठवतो. विनंती दरासाठी, आम्ही TGI द्वारे समर्थित जास्तीत जास्त थ्रुपुट, प्रति सेकंद कमाल 1 विनंती पर्यंत एक लहान स्वीप करतो. उत्पादनाच्या वर्तनाचे अनुकरण करण्यासाठी आम्ही विविध इनपुट आणि आउटपुट टोकन लांबीसह वास्तविक-जगातील डेटा वापरला. विनंत्यांमध्ये सरासरी ~700 इनपुट टोकन्स आणि ~550 आउटपुट टोकन्स आहेत.

समान इनपुट वापरून आणि विनंत्यांची एकल मालिका पाठवून, आम्ही इतर विद्यमान API च्या तुलनेत कामगिरीचा आधारभूत स्तर गोळा करण्यासाठी याच मॉडेलसाठी Replicate आणि Anyscale च्या API चे सरासरी लेटन्सी देखील मोजले.

Perplexity Labs - प्रथम टोकन लेटन्सी
Perplexity Labs - डिकोडिंग स्पीड

समान प्रायोगिक सेटअप वापरून, लेटन्सी मर्यादा म्हणून डिकोडिंग स्पीडसह, आम्ही TGI विरुद्ध pplx-api च्या कमाल थ्रुपुटची तुलना केली. आमच्या प्रयोगांमध्ये, pplx-api हे TGI पेक्षा 1.90x-6.75x वेगाने टोकन्सवर प्रक्रिया करते आणि TGI हे 60 आणि 80 टोकन्स/सेकंद वर आमच्या कठोर लेटन्सी मर्यादा पूर्ण करण्यात पूर्णपणे अपयशी ठरते. आम्ही pplx-api चे मूल्यांकन करण्यासाठी वापरलेल्या समान हार्डवेअर आणि लोड परिस्थिती अंतर्गत TGI चे मूल्यांकन करतो. Replicate आणि Anyscale सह या मेट्रिकची तुलना करणे शक्य नाही कारण आम्ही त्यांचे हार्डवेअर आणि लोड घटक नियंत्रित करू शकत नाही.

संदर्भासाठी, सरासरी मानवी वाचण्याचा वेग ५ टोकन्स/सेकंद आहे, याचा अर्थ pplx-api कोणीही वाचू शकेल त्यापेक्षा वेगाने सेवा देण्यास सक्षम आहे.

Perplexity Labs - प्रति GPU टोकन थ्रुपुट

pplx-api पायाभूत सुविधांचा आढावा

हे लेटन्सी क्रमांक साध्य करण्यासाठी अत्याधुनिक सॉफ्टवेअर आणि हार्डवेअरचे संयोजन आवश्यक आहे.

NVIDIA A100 GPU द्वारे समर्थित AWS p4d इन्स्टन्स उत्कृष्ट घड्याळाच्या वेगाने (क्लाॅक स्पीड) GPU स्केल आउट करण्यासाठी सर्वात किफायतशीर आणि विश्वासार्ह पर्याय म्हणून स्टेज सेट करतात.

सॉफ्टवेअरसाठी या हार्डवेअरचा लाभ घेण्यासाठी, आम्ही NVIDIA चे TensorRT-LLM चालवतो, जी एक ओपन-सोर्स लायब्ररी आहे जी LLM इन्फरन्सला वेगवान आणि ऑप्टिमाइझ करते. TensorRT-LLM हे TensorRT चे डीप लर्निंग कंपाइलर रॅप करते आणि LLM मॉडेल अंमलबजावणीच्या संदर्भ आणि जनरेशन चरणांसाठी FlashAttention आणि मास्क्ड मल्टि-हेड अटेंशन (MHA) च्या अत्याधुनिक अंमलबजावणीसाठी बनवलेले नवीनतम ऑप्टिमाइझ केलेले कर्नल समाविष्ट करते.

येथून, AWS चा पाठीराखा आणि कुबेरनेट्स (Kubernetes) सह त्याचे मजबूत एकात्मिकरण आम्हाला शेकडो GPU च्या पलीकडे लवचिकपणे स्केल करण्यास आणि डाउनटाइम आणि नेटवर्क ओव्हरहेड कमी करण्यास सक्षम करते.

युझ केस: प्रॉडक्शनमध्ये आमचे API

Perplexity मध्ये pplx-api: खर्च कपात आणि विश्वसनीयता

आमचे API आधीपासूनच Perplexity च्या मुख्य उत्पादन वैशिष्ट्यांपैकी एकाला चालना देत आहे. बाह्य API वरून pplx-api वर फक्त एक वैशिष्ट्य बदलल्यामुळे $0.62M/वर्ष खर्च वाचला, ज्यामुळे खर्चात अंदाजे 4x घट झाली. गुणवत्तेत कोणतीही घसरण होणार नाही याची खात्री करण्यासाठी आम्ही A/B चाचण्या चालवल्या आणि पायाभूत सुविधांच्या मेट्रिक्सचे निरीक्षण केले. 2 आठवड्यांच्या कोर्समध्ये, आम्हाला A/B चाचणीमध्ये सांख्यिकीयदृष्ट्या कोणताही महत्त्वपूर्ण फरक आढळला नाही. याव्यतिरिक्त, pplx-api दररोज दीड लाखाहून अधिक विनंत्यांचा दैनिक भार सहन करू शकते, ज्यामुळे दररोज एकूण जवळपास एक अब्ज प्रक्रियेत आलेले टोकन्स तयार होतात.

या सुरुवातीच्या अन्वेषणाचे परिणाम अत्यंत उत्साहवर्धक आहेत, आणि आम्हाला अपेक्षा आहे की pplx-api कालांतराने आमच्या अधिक उत्पादन वैशिष्ट्यांना सामर्थ्य प्रदान करेल.

Perplexity Labs मध्ये pplx-api: ओपन सोर्स इन्फरन्स इकोसिस्टम

आम्ही विविध ओपन-सोर्स मॉडेल्सची सेवा देणारे आमचे मॉडेल प्लेग्राउंड, Perplexity Labs ला सामर्थ्य देण्यासाठी pplx-api चा वापर सुद्धा करतो.

दररोज सरासरी टोकन सर्व्ह केले

आमची टीम नवीनतम अत्याधुनिक ओपन-सोर्स LLM मध्ये प्रवेश प्रदान करण्यासाठी वचनबद्ध आहे. त्यांच्या रिलीजच्या काही तासांच्या आत आम्ही Mistral 7B, Code Llama 34b आणि सर्व Llama 2 मॉडेल्स समाकलित केले, आणि अधिक सक्षम आणि ओपन-सोर्स LLM उपलब्ध झाल्यावर असेच करण्याची योजना आखली आहे.

Perplexity च्या AI API सह सुरुवात करा

तुम्ही HTTPS विनंत्या वापरून pplx-api REST API मध्ये प्रवेश करू शकता. pplx-api मध्ये प्रमाणीकरण करण्यामध्ये खालील चरणांचा समावेश आहे:

Perplexity खाते सेटिंग्ज पृष्ठ द्वारे API की जनरेट करा. API की हा दीर्घकाळ टिकणारा ऍक्सेस टोकन आहे जो व्यक्तिचलितपणे रीफ्रेश किंवा हटवले जाईपर्यंत वापरला जाऊ शकतो.

प्रत्येक pplx-api विनंतीसह Authorization हेडरमध्ये बेअरर टोकन म्हणून API की पाठवा.

खालील उदाहरणात, PERPLEXITY_API_KEY हे वरील सूचना वापरून तयार केलेल्या की ला बाइंड केलेले पर्यावरण चल (एन्व्हायर्नमेंट व्हेरिएबल) आहे. चॅट पूर्ण करण्याची विनंती सबमिट करण्यासाठी CURL वापरले जाते.

bash
curl -X POST \ --url https://perplexity.coolkeypoint.com/__p/api.perplexity.ai/chat/completions \ --header 'accept: application/json' \ --header 'content-type: application/json' \ --header "Authorization: Bearer ${PERPLEXITY_API_KEY}" \ --data '{ "model": "mistral-7b-instruct", "stream": false, "max_tokens": 1024, "frequency_penalty": 1, "temperature": 0.0, "messages": [ { "role": "system", "content": "Be precise and concise in your responses." }, { "role": "user", "content": "How many stars are there in our galaxy?" } ] }'

ज्यामुळे खालील प्रतिसाद मिळतो, ज्यामध्ये content-type: application/json आहे

json
{ "id": "3fbf9a47-ac23-446d-8c6b-d911e190a898", "model": "mistral-7b-instruct", "object": "chat.completion", "created": 1765322, "choices": [ { "index": 0, "finish_reason": "stop", "message": { "role": "assistant", "content": " The Milky Way galaxy contains an estimated 200-400 billion stars.." }, "delta": { "role": "assistant", "content": " The Milky Way galaxy contains an estimated 200-400 billion stars.." } } ], "usage": { "prompt_tokens": 40, "completion_tokens": 22, "total_tokens": 62 } }

येथे एक Python कॉलचे उदाहरण आहे:

python
from openai import OpenAI YOUR_API_KEY = "INSERT API KEY HERE" messages = [ { "role": "system", "content": ( "You are an artificial intelligence assistant and you need to " "engage in a helpful, detailed, polite conversation with a user." ), }, { "role": "user", "content": ( "Count to 100, with a comma between each number and no newlines. " "E.g., 1, 2, 3, ..." ), }, ] client = OpenAI(api_key=YOUR_API_KEY, base_url="https://perplexity.coolkeypoint.com/__p/api.perplexity.ai") # demo chat completion without streaming response = client.chat.completions.create( model="mistral-7b-instruct", messages=messages, ) print(response) # demo chat completion with streaming response_stream = client.chat.completions.create( model="mistral-7b-instruct", messages=messages, stream=True, ) for response in response_stream: print(response)

आम्ही सध्या Mistral 7B, Llama 13B, Code Llama 34B, Llama 70B चे समर्थन करतो आणि विद्यमान अनुप्रयोगांसह सुलभ एकात्मिकरणासाठी API सोयीस्करपणे OpenAI क्लायंट-सुसंगत आहे.

अधिक माहितीसाठी, कृपया आमच्या API कागदपत्रांना आणि त्वरित सुरूवात मार्गदर्शिकेला (Quickstart Guide) भेट द्या.

पुढे काय आहे

नजीकच्या भविष्यात, pplx-api खालील गोष्टींना समर्थन देईल:

सानुकूल Perplexity LLMs आणि इतर ओपन-सोर्स LLMs.

सानुकूल Perplexity एम्बेडिंग्स आणि ओपन-सोर्स एम्बेडिंग्स.

सार्वजनिक बीटा फेज आउट झाल्यानंतर सामान्य प्रवेशासह समर्पित API किंमत संरचना.

तथ्ये आणि उद्धरण (सिटेशन्स) साठी ग्राउंडिंगसह Perplexity RAG-LLM API.

यापैकी कोणत्याही युझ केसेसमध्ये तुम्हाला रस असल्यास api@perplexity.ai वर संपर्क साधा.

आमच्या Perplexity ब्लॉग पोस्ट मालिकेची ही सुरुवात देखील आहे. आमच्या पुढील पोस्टमध्ये, आम्ही LLM इन्फरन्ससाठी A100 विरुद्ध H100 कामगिरीच्या तुलनेवर सखोल माहिती शेअर करू. संपर्कात राहा!

आम्ही कामावर घेत आहोत! तुम्हाला मोठ्या प्रमाणावर उपयोजित उत्पादनावर काम करायचे असल्यास आणि आमच्यासह विचारपूर्वक डिझाइन केलेली, काळजीपूर्वक ऑप्टिमाइझ केलेली जनरेटिव्ह आणि लार्ज लँग्वेज मॉडेल इन्फ्रास्ट्रक्चर तयार करायची असल्यास, कृपया आमच्यात सामील व्हा.

अधिक चर्चेसाठी आम्हाला Twitter, LinkedIn वर फॉलो करा आणि आमच्या Discord मध्ये सामील व्हा.

लेखक:

लॉरेन यांग, केविन हू, आरश हेदरामी, विल्यम झांग, दिमित्री पेर्वुखिन, ग्रिगोरी अलेक्सेयेव, अलेक्झांडर यारट्स

डेटा गोपनीयता

pplx-api निवड, करून तुम्ही तुमच्या वापरकर्त्यांची आणि ग्राहकांची गोपनीयता आणि विश्वास सुरक्षित ठेवताना LLMs ची पूर्ण क्षमता वापरू शकता. तुमची वैयक्तिक माहिती संरक्षित करण्याच्या महत्त्वाचे आम्हाला समजते आणि आम्ही आमच्या वापरकर्त्यांची सुरक्षा आणि गोपनीयता राखण्यासाठी वचनबद्ध आहोत. API डेटा 30 दिवसांनंतर आपोआप हटवला जातो, आणि pplx-api द्वारे प्रसारित केलेल्या कोणत्याही डेटावर आम्ही कधीही प्रशिक्षण घेत नाही. वापरकर्त्यांकडे त्यांच्या खाते सेटिंग्जमध्ये डेटा धारणा (डेटा रिटेन्शन) निवड रद्द करण्याचा पर्याय आहे. आमचे API गोपनीयता धोरण येथे शोधा.