🎯 कस्टमाइज़ करने योग्य, डिटेक्शन-प्रतिरोधी क्लाउड ब्राउज़र जो स्व-विकसित Chromium द्वारा संचालित है, वेब क्रॉलर और एआई एजेंट्स के लिए डिज़ाइन किया गया। 👉अभी आज़माएं
वापस ब्लॉग पर

एक स्थानीय LLM लाइव वेब खोज ओलामा + स्क्रेपलेस के साथ दें।

Alex Johnson
Alex Johnson

Senior Web Scraping Engineer

14-Jul-2026

एक मॉडल जो आपकी अपनी मशीन पर चल रहा है, अपने प्रशिक्षण कटर के बाद कुछ नहीं जानता। यदि आप इस सप्ताह की किसी मुख्य शीर्षक के बारे में एक स्थानीय लामा, क्वेन, या मिस्ट्रील चेकपॉइंट से पूछते हैं, तो यह या तो मना कर देता है या, उससे भी बदतर, कुछ विश्वसनीय और गलत बयान करता है। NIST की जनरेटिव एआई जोखिम प्रोफ़ाइल में दूसरे विफलता मोड के लिए एक नाम है: कन्फैब्यूलेशन, जिसे एक प्रणाली के रूप में परिभाषित किया गया है जो "प्रॉम्प्ट्स के जवाब में गलत या झूठा सामग्री उत्पन्न करती है और आत्मविश्वास से प्रस्तुत करती है।" एक मॉडल जिसके पास वर्तमान डेटा तक पहुँचने का कोई रास्ता नहीं है, वह आज के प्रश्न के बारे में जब पूछा जाता है, तो इससे बच नहीं सकता।

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

यह एकीकरण क्या सक्षम करता है

एक सर्च टूल से जुड़ा एक स्थानीय मॉडल उन प्रश्नों के उत्तर दे सकता है जिनका उत्तर उसके वेट्स अकेले नहीं दे सकते:

  • वर्तमान घटनाएँ और कीमतें। एक मॉडल जो महीनों पहले प्रशिक्षित हुआ था, इस तिमाही के नंबर नहीं जान सकता; एक जीवित सर्च कॉल कर सकता है।
  • अपने स्वयं के पुनः स्मरण की तथ्य-जांच। मॉडल एक उत्तर बताता है, फिर एक सर्च कॉल उसे अंतिम प्रतिक्रिया भेजने से पहले पुष्टि या सुधार करता है।
  • ऑफलाइन-प्रथम एजेंट जिनकी एक संकीर्ण नेटवर्क निर्भरता होती है। सब कुछ — वेट्स, तर्क, टूल-चयन लॉजिक — स्थानीय मशीन पर चलता है। एकमात्र आउटबाउंड कॉल सर्च अनुरोध स्वयं है, जो ठीक उस प्रश्न पर सीमित है जिसे मॉडल ने पूछने के लिए चुना।
  • छोटे मॉडल जो उनके प्रशिक्षण डेटा से अधिक शक्ति रखते हैं। इस गाइड में मॉडल 0.5 अरब पैरामीटर है। इसे मंगल की मिशनों के बारे में कुछ जानने की आवश्यकता नहीं है; इसे पहचानने की आवश्यकता है कि प्रश्न एक सर्च के लिए पूछ रहा है और एक तर्कसंगत प्रश्न को व्यक्त करने की आवश्यकता है।

सर्च टूल के लिए डीप सर्पएपीआई क्यों

ओल्लामा अपनी होस्टेड सर्च सुविधा (ollama.com/api/web_search) प्रदान करता है, और यह एक त्वरित प्रोटोटाइप के लिए एक उचित डिफ़ॉल्ट है। यह एक ओल्लामा खाता, एक OLLAMA_API_KEY, की आवश्यकता होती है, और प्रत्येक प्रश्न को ओल्लामा की अपनी क्लाउड सेवा के माध्यम से रूट करता है — मॉडल स्थानीय रहता है, लेकिन खोज चरण ओल्लामा की अवसंरचना से बाहर नहीं रहता। इसका प्रलेखित डिफ़ॉल्ट सीमा प्रति कॉल 5 परिणाम, अधिकतम 10 है।

डीप सर्पएपीआई एक समर्पित संरचित खोज एंडपॉइंट है: एक प्रामाणिक POST गूगल के जैविक परिणाम, संबंधित खोजें, पेजिनेशन, और (प्रश्न के आधार पर) वीडियो और नॉलेज-पैनल डेटा को पार्स किए गए JSON के रूप में लौटाता है — न कि एक संक्षिप्त सारांश। स्क्रेपलेस का अपना उत्पाद पृष्ठ "20+ गूगल सर्प परिदृश्यों और मुख्यधारा के खोज इंजनों" (खोज, समाचार, मानचित्र, खरीदारी, रुझान, और अधिक) में कवरेज, "1-2 सेकंड" की प्रतिक्रिया समय, और "2,000 मुफ़्त एपीआई कॉल" की एक मुफ्त श्रेणी बिना कार्ड की आवश्यकता के बारे में बताता है। भुगतान किया गया उपयोग "केवल $1.05/1K प्रश्नों से शुरू होता है।" यदि कोई प्रोजेक्ट पहले से ही अन्य डेटा संग्रह कार्य के लिए स्क्रेपलेस पर निर्भर है, या उसे संक्षिप्त उत्तर सारांश के बजाय पूर्ण जैविक-परिणाम स्कीमा की आवश्यकता है, तो एक ही खाते का डीप सर्पएपीआई कुंजी टूल-कॉलिंग लूप में जोड़ने से एक प्रदाता और एक बिल रखा जा सकता है, न कि दो।

एक मुफ्त एपीआई कुंजी प्राप्त करने के लिए साइन अप करें - कार्ड की आवश्यकता नहीं: app.scrapeless.com

पूर्वापेक्षाएँ

  • एक Linux, macOS, या WSL2 मशीन जिसमें कम से कम 2 GB की मुफ्त RAM है (इस गाइड का मॉडल लोड होने के बाद 1 GB से कम की आवश्यकता होती है; GPU वैकल्पिक है और केवल अनुमान को गति देता है)।
  • curl और Python 3.9 या नया।
  • डैशबोर्ड के एपीआई की प्रबंधन पृष्ठ से एक स्क्रेपलेस खाता और एपीआई कुंजी।
  • कोई ओल्लामा खाता और कोई OLLAMA_API_KEY नहीं - यह रास्ता कभी भी ओल्लामा की होस्टेड सेवा को कॉल नहीं करता।

स्थानीय रूप से एक टूल-कॉलिंग मॉडल स्थापित करें और चलाएँ

ओल्लामा स्थापित करें:

bash Copy
curl -fsSL https://raw.githubusercontent.com/ollama/ollama/main/scripts/install.sh | sh

एक systemd-प्रबंधित Linux होस्ट (जिसमें systemd सक्षम WSL2 शामिल है) पर इंस्टॉलर ऑटोमेटिकली ollama सेवा को पंजीकृत और शुरू करता है, जो 127.0.0.1:11434 पर सुनता है। बाइनरी और सेवा की पुष्टि करें:

bash Copy
ollama --version
# ollama version is 0.31.2

एक छोटा टूल-कॉलिंग-योग्य मॉडल प्राप्त करें। Qwen2.5 के निर्देश-ट्यून किए गए चेकपॉइंट फंक्शन कॉलिंग को 0.5 अरब-पैरामीटर आकार तक समर्थन करते हैं, जिससे डाउनलोड और मेमोरी फुटप्रिंट छोटा रहता है:

bash Copy
ollama pull qwen2.5:0.5b

ollama list के बाद पुष्टि करता है कि मॉडल स्थानीय है: एक 397 MB का प्रवेश जिसका नाम qwen2.5:0.5b है, बिना किसी और नेटवर्क एक्सेस के सेवा देने के लिए तैयार है।
यहाँ पर अनुवादित पाठ है:

हर स्थानीय रूप से चलने वाला मॉडल उपकरण कॉलिंग का समर्थन नहीं करता - इसके चारों ओर एक एजेंट लूप बनाने से पहले ओलामा के पुस्तकालय में मॉडल के पृष्ठ पर "उपकरण" टैग की जांच करें। बड़े Qwen2.5, Llama 3.1 और Mistral चेकपॉइंट वही टैग ले जाते हैं यदि 0.5B किसी दिए गए कार्य के लिए बहुत छोटा साबित होता है।

जब मॉडल डाउनलोड हो रहा हो, तो एक मुफ्त स्क्रेपलेस एपीआई कुंजी प्राप्त करें - कार्ड की आवश्यकता नहीं: app.scrapeless.com

डीप सर्पएपीआई एंडपॉइंट की पुष्टि करें

डीप सर्पएपीआई प्रत्येक परिदृश्य के लिए एक ही आकार लेता है: एक एक्टर नाम और एक इनपुट ऑब्जेक्ट, जिसे docs.scrapeless.com पर दस्तावेजित किया गया है। गूगल सर्च परिदृश्य ‘scraper.google.search’ एक्टर का उपयोग करता है:

bash Copy
curl -s -X POST "https://api.scrapeless.com/api/v1/scraper/request" \
  -H "x-api-token: $SCRAPELESS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "actor": "scraper.google.search",
    "input": {"q": "मंगल सत्रहण मिशन के बारे में नवीनतम शीर्षक", "gl": "us", "hl": "en"}
  }'

उस क्वेरी के लिए एक लाइव कॉल HTTP 200 वापस करता है जिसमें एक JSON बॉडी होती है जिसमें ये शीर्ष-स्तरीय क्षेत्र होते हैं: organic_results, pagination, related_searches, search_information, inline_videos, video_results, और metadataorganic_results में प्रत्येक प्रविष्टि में position, title, link, redirect_link, favicon, snippet, snippet_highlighted_words, और source होता है। प्रतिक्रिया साधारण JSON है - कोई स्ट्रीमिंग नहीं, कोई सत्र नहीं है जो खुला रखे, एक अनुरोध भीतर और एक दस्तावेज बाहर। एक अनुरोध जो सर्वर-साइड पर समाप्त नहीं हुआ है, इसके बजाय HTTP 201 लौटाता है जिसमें taskId होता है; गूगल सर्च क्वेरी के लिए सामान्य मामला ऊपर दिखाए गए समन्वित 200 का है।

खोज उपकरण को परिभाषित करें और संलग्न करें

ओलामा का /api/chat एंडपॉइंट एक tools एरे स्वीकार करता है जो JSON स्कीमा फ़ंक्शन परिभाषाओं में आकारबद्ध होता है। एक उपकरण web_search परिभाषित करें और इसे बातचीत के साथ भेजें:

python Copy
TOOLS = [
    {
        "type": "function",
        "function": {
            "name": "web_search",
            "description": "वर्तमान जानकारी के लिए लाइव वेब पर खोजें और शीर्ष कार्बनिक परिणाम शीर्षकों, लिंक, और स्निप्पेट के साथ लौटाएं।",
            "parameters": {
                "type": "object",
                "properties": {
                    "query": {"type": "string", "description": "खोज प्रश्न"}
                },
                "required": ["query"],
            },
        },
    }
]

हर /api/chat अनुरोध में TOOLS संलग्न करें ताकि मॉडल को हमेशा पता चले कि उपकरण मौजूद है:

python Copy
import json
import urllib.request

OLLAMA_URL = "http://127.0.0.1:11434/api/chat"
MODEL = "qwen2.5:0.5b"

def ollama_chat(messages):
    body = json.dumps({"model": MODEL, "stream": False, "messages": messages, "tools": TOOLS}).encode()
    req = urllib.request.Request(OLLAMA_URL, data=body, headers={"Content-Type": "application/json"})
    with urllib.request.urlopen(req, timeout=180) as resp:
        return json.load(resp)

मॉडल खुद डीप सर्पएपीआई को कभी कॉल नहीं करता - यह केवल एक tool_calls प्रविष्टि उत्पन्न करता है जिसमें web_search का नाम होता है और इसके द्वारा चुने गए तर्क होते हैं। एक हल्का पायथन फ़ंक्शन वास्तव में HTTP कार्य करता है और आकारबद्ध परिणाम वापस करता है:

python Copy
import os

def web_search(query: str) -> str:
    body = json.dumps({
        "actor": "scraper.google.search",
        "input": {"q": query, "gl": "us", "hl": "en"},
    }).encode()
    req = urllib.request.Request(
        "https://api.scrapeless.com/api/v1/scraper/request",
        data=body,
        headers={
            "x-api-token": os.environ["SCRAPELESS_API_KEY"],
            "Content-Type": "application/json",
        },
    )
    with urllib.request.urlopen(req, timeout=60) as resp:
        data = json.load(resp)
    results = data.get("organic_results", [])[:3]
    shaped = [
        {"title": r.get("title"), "link": r.get("link"), "snippet": r.get("snippet")}
        for r in results
    ]
    return json.dumps(shaped)

उपकरण आउटपुट को लौटाने से पहले शीर्ष तीन परिणामों तक सीमित करना दूसरे /api/chat कॉल को छोटा रखता है - एक 0.5-अरब-पैरामीटर मॉडल की सीमित संदर्भ विंडो होती है, और पूर्ण प्रतिक्रिया पृष्ठक्रमण लिंक, फ़ेविकॉन्स, और संबंधित-खोज ब्लॉक्स को ले जाती है जो मॉडल को प्रश्न का उत्तर देने के लिए आवश्यक नहीं है।

प्रवृत्ति-चालित उपयोग: मॉडल को निर्णय लेते हुए देखना

टुकड़ों को एक साथ रखें: एक ऐसा प्रॉम्प्ट भेजें जिसे वर्तमान जानकारी की आवश्यकता हो, मॉडल को टूल का अनुरोध करने दें, उस अनुरोध को डीप सर्पएपीआई के खिलाफ लागू करें, और grounded अंतिम उत्तर के लिए परिणाम वापस भेजें।

python Copy
import json
import os
import urllib.request

OLLAMA_URL = "http://127.0.0.1:11434/api/chat"

Here is the translation of the provided text into Hindi:

python Copy
SCRAPELESS_URL = "https://api.scrapeless.com/api/v1/scraper/request"
MODEL = "qwen2.5:0.5b"

TOOLS = [
    {
        "type": "function",
        "function": {
            "name": "web_search",
            "description": "वर्तमान जानकारी के लिए लाइव वेब से खोजें और शीर्ष जैविक परिणामों को शीर्षक, लिंक और अंश के साथ लौटाएं।",
            "parameters": {
                "type": "object",
                "properties": {
                    "query": {"type": "string", "description": "खोज क्वेरी"}
                },
                "required": ["query"],
            },
        },
    }
]

def ollama_chat(messages):
    body = json.dumps({"model": MODEL, "stream": False, "messages": messages, "tools": TOOLS}).encode()
    req = urllib.request.Request(OLLAMA_URL, data=body, headers={"Content-Type": "application/json"})
    with urllib.request.urlopen(req, timeout=180) as resp:
        return json.load(resp)

def web_search(query: str) -> str:
    body = json.dumps({
        "actor": "scraper.google.search",
        "input": {"q": query, "gl": "us", "hl": "en"},
    }).encode()
    req = urllib.request.Request(
        SCRAPELESS_URL,
        data=body,
        headers={"x-api-token": os.environ["SCRAPELESS_API_KEY"], "Content-Type": "application/json"},
    )
    with urllib.request.urlopen(req, timeout=60) as resp:
        data = json.load(resp)
    results = data.get("organic_results", [])[:3]
    return json.dumps([
        {"title": r.get("title"), "link": r.get("link"), "snippet": r.get("snippet")}
        for r in results
    ])

messages = [{"role": "user", "content":
    "आज मंगल नमूना वापसी अभियान के बारे में नवीनतम समाचार क्या हैं? "
    "यदि आपको वर्तमान जानकारी की आवश्यकता है, तो खोज उपकरण का उपयोग करें।"}]

first_turn = ollama_chat(messages)
print(json.dumps(first_turn["message"], indent=2))

tool_call = first_turn["message"]["tool_calls"][0]
query = tool_call["function"]["arguments"]["query"]
result = web_search(query)

messages.append(first_turn["message"])
messages.append({"role": "tool", "content": result, "tool_name": "web_search"})

second_turn = ollama_chat(messages)
print(json.dumps(second_turn["message"], indent=2))

एक लाइव रन qwen2.5:0.5b के खिलाफ पहले टर्न के लिए ये प्रिंट करता है — अभी कोई अंतिम उत्तर नहीं, केवल एक उपकरण का अनुरोध:

json Copy
{
  "role": "assistant",
  "content": "",
  "tool_calls": [
    {
      "id": "call_dwndere1",
      "function": {
        "index": 0,
        "name": "web_search",
        "arguments": {
          "query": "Mars Sample Return Mission Latest Headlines"
        }
      }
    }
  ]
}

मॉडल ने अनुभाग पढ़ा, पहचाना कि इसे वर्तमान जानकारी की आवश्यकता है, और अपनी खोज क्वेरी का चयन किया — इस रन का वाक्यांश मॉडल से आया, उपयोगकर्ता की वाक्यांश की नकल नहीं। कॉलिंग कोड web_search(query="Mars Sample Return Mission Latest Headlines") को Deep SerpApi के खिलाफ निष्पादित करता है, तीन आकारों के परिणाम वापस प्राप्त करता है, और उन्हें एक role: "tool" संदेश के रूप में संलग्न करता है इससे पहले कि संवाद को /api/chat पर दूसरी बार भेजा जाए।

आपको क्या वापस मिलता है

दूसरा print कथन मॉडल का वास्तविक उत्तर है, जो खोज कॉल द्वारा लौटाए गए पर आधारित है:

json Copy
{
  "role": "assistant",
  "content": "यहां मंगल नमूना वापसी अभियान के बारे में कुछ नवीनतम समाचार हैं:\n\n- [Mars Sample Return - Mars Missions](https://www.jpl.nasa.gov/missions/mars-sample-return-msr/)\n  - यह लिंक आपको NASA की वेबसाइट पर ले जाता है जिसमें मंगल नमूना वापसी कार्यक्रम के बारे में जानकारी है।\n- [NASA-ESA Mars Sample Return](https://en.wikipedia.org/wiki/NASA-ESA_Mars_Sample_Return)\n  - परियोजना का विकिपीडिया पृष्ठ भी उपलब्ध है, जो अभियान और इसके खर्चों के बारे में अधिक विस्तृत जानकारी प्रदान करता है।\n\nयहां मंगल नमूना वापसी अभियान से संबंधित कुछ लेखों के लिंक हैं:\n\n1. [NASA's Mars Sample Return Is Dead, Paving The Way For China](https://www.universetoday.com/articles/nasas-mars-sample-return-is-dead-paving-the-way-for-china/)\n  - यह लेख मंगल नमूना वापसी अभियान की वर्तमान स्थिति के बारे में अधिक जानकारी प्रदान करता है।\n\nमुझे उम्मीद है कि इससे मदद मिलेगी! यदि आपको कोई अन्य लेख या अपडेट चाहिए, तो मुझे बताएं।"
}

उस उत्तर में हर लिंक वास्तव में उन तीन परिणामों में से एक पर वापस आता है जो web_search ने वास्तव में लौटाए — मॉडल ने उन्हें सारांशित किया और अपने स्वयं के सूची में पुनर्गठित किया न कि कुछ नया आविष्कार किया। यह कोई गारंटी नहीं है: 0.5-बिलियन-पैरामीटर मॉडल अभी भी एक ऐसा विवरण उत्पन्न कर सकता है जो उपकरण के परिणाम में कभी नहीं था, यहां तक कि उसके संदर्भ में वास्तविक खोज परिणाम बैठे हैं। आधारभूतता उस होने की संभावनाओं को कम करती है; यह उन्हें समाप्त नहीं करती है, और एक उत्पादन प्रणाली जो एक मॉडल के उत्तर से लिंक निकालती है, उसे पहले तथ्य के रूप में मानने से पहले प्रत्येक एक को उपकरण के आउटपुट के खिलाफ जांचना चाहिए। एक समान अनुरोध-और-प्रतिक्रिया पैटर्न तब भी चलता है जब विषय की क्वेरी अलग हो: मॉडल तय करता है कि कब खोजें, उपकरण कॉल ही एकमात्र नेटवर्क यात्रा है जिसे मॉडल के अपने वजन नहीं मानते, और दूसरा पूर्णता तब तक नहीं चलती जब तक कि उपकरण के परिणाम संवाद में न हों।

निष्कर्ष

स्थानीय मॉडल को Deep SerpApi से जोड़ने के लिए एक टूल परिभाषा, एक HTTP फ़ंक्शन, और दो /api/chat कॉल्स की आवश्यकता होती है - मॉडल यह निर्धारित करता है कि कब खोज करना है और क्या पूछना है, जिस तरह एक होस्टेड-मॉडल एजेंट ढांचा करेगा, लेकिन उत्पादन का हर टोकन उस मशीन पर रहता है जो इसे चलाती है। यह पैटर्न इस एक उदाहरण से आगे बढ़कर बढ़ता है: प्रॉम्प्ट बदलें, मॉडल बदलें, या TOOLS को और फ़ंक्शनों के साथ विस्तारित करें, और यही अनुरोध-टूल-काल-प्रतिक्रिया लूप बाकी को संभालता है।

मुफ्त शुरू करें - कोई कार्ड आवश्यक नहीं: app.scrapeless.com। पूर्ण पैरामीटर संदर्भ docs.scrapeless.com पर है, और वर्तमान प्रति-प्रश्न मूल्य निर्धारण scrapeless.com/en/pricing पर है। एक SERP एंडपॉइंट जैसे इस एक और Scrapeless के अभिनेताओं के बीच जो होस्टेड AI प्लेटफ़ॉर्म के अपने जवाबों को कैप्चर करते हैं, उसके बीच के अंतर के लिए SERP-API-विरुद्ध-LLM-स्क्रेपर तुलना देखें।

सामान्य प्रश्न

प्र: कौन से स्थानीय मॉडल टूल कॉलिंग का समर्थन करते हैं?

Ollama के मॉडल पुस्तकालय पर "Tools" टैग वाले किसी भी मॉडल का उपयोग इस पैटर्न के साथ किया जा सकता है। Qwen2.5 (0.5B तक), Llama 3.1 और 3.2, Mistral, और IBM Granite सभी टूल-कॉलिंग-योग्य चेकपॉइंट भेजते हैं। बिना उस टैग वाले मॉडल अभी भी tool_calls-आकार का JSON सामान्य टेक्स्ट के रूप में उत्पन्न कर सकते हैं, जिसे कॉलिंग कोड को संरचित फ़ील्ड पढ़ने के बजाय मैन्युअल रूप से पार्स करना होगा - दिए गए मॉडल के चारों ओर निर्माण करने से पहले टैग की जांच करें।

प्र: क्या इनमें से किसी के लिए मॉडल के लिए इंटरनेट कनेक्शन की आवश्यकता होती है?

नहीं। मॉडल, प्रॉम्प्ट, और तर्क सभी स्थानीय मशीन पर चलते हैं। एकमात्र आउटबाउंड अनुरोध Deep SerpApi के लिए web_search टूल कॉल है, जो बिल्कुल उसी प्रश्न पर केंद्रित है जो मॉडल ने उत्पन्न किया - रन के बारे में कुछ भी नेटवर्क को छूता नहीं है।

प्र: अलग API कुंजी के बजाय Ollama की अंतर्निहित वेब खोज का उपयोग क्यों नहीं करें?

Ollama की होस्टेड खोज (ollama.com/api/web_search) एक तेज प्रोटोटाइप के लिए एक उचित विकल्प है, और इसे Ollama के अपने अलावा किसी अलग विक्रेता खाते की आवश्यकता नहीं है। यह एक फ्री Ollama खाते से जुड़ी OLLAMA_API_KEY की मांग करता है, प्रत्येक कॉल पर 10 परिणामों तक सीमित करता है, और Google's पूर्ण ऑर्गेनिक-रिज़ल्ट स्कीमा (पद, संबंधित खोजें, पृष्ठण, वर्टिकल्स) के बजाय एक सामान्य परिणाम सूची लौटाता है। जब किसी प्रोजेक्ट को उस fuller schema, गैर-गूगल-सर्च परिदृश्यों, या पहले से ही Scrapeless खाते के माध्यम से अन्य काम करने की आवश्यकता होती है, तो Deep SerpApi बेहतर विकल्प है।

प्र: यदि खोज कॉल विफल होती है तो क्या होता है?

एक गलत अनुरोध HTTP 400 लौटाता है; एक अमान्य या गायब API कुंजी एक प्रमाणीकरण त्रुटि लौटाती है; एक प्रश्न जो सर्वर-साइड पर समाप्त नहीं हुआ है, एक taskId के साथ HTTP 201 लौटाता है बजाय परिणाम शरीर के। किसी भी HTTP क्लाइंट के तरह प्रतिक्रिया के शरीर को पार्स करने से पहले स्थिति कोड की जांच करें।

प्र: क्या मैं अंग्रेजी के अलावा किसी देश या भाषा का लक्ष्य बना सकता हूं?

हाँ - gl Google देश कोड सेट करता है और hl प्रत्येक scraper.google.search अनुरोध पर इंटरफ़ेस भाषा सेट करता है; दोनों input वस्तु में सामान्य स्ट्रिंग फ़ील्ड हैं, प्रत्येक कॉल पर सेट किया गया।

प्र: क्या मॉडल कभी सीधे Deep SerpApi को कॉल करता है?

नहीं। मॉडल केवल tool_calls प्रविष्टि उत्पन्न करता है जो यह वर्णन करता है कि कौन सा फ़ंक्शन चलाना है और किन तर्कों के साथ - इसका कोई नेटवर्क एक्सेस नहीं है। कॉलिंग पायथन कोड वास्तविक HTTP अनुरोध का मालिक होता है, जो यह भी सुनिश्चित करता है कि API कुंजी पूरी तरह से मॉडल के संदर्भ से बाहर है।

प्र: क्या इसे API के बजाय स्क्रैपिंग खोज परिणामों पर केंद्रित करना सुरक्षित है?

Deep SerpApi पहले से ही एक प्रामाणित एंडपॉइंट पर पार्स की गई Google डेटा लौटाता है, इसलिए कॉलर्स की ओर से कोई रोबोट्स.txt या दर सीमित करने की चिंता नहीं है - वह बुनियादी ढांचा काम Scrapeless के अंत पर होता है। जो कोई भी Google के परिणाम पृष्ठों को सीधे स्क्रैप करके समकक्ष बनाने की कोशिश कर रहा है, वह पहले Robots Exclusion Protocol और उस लक्ष्य की अपनी शर्तें पढ़ ले; एक प्रबंधित खोज एंडपॉइंट विशेष रूप से उस प्रकार की समस्या से बचने के लिए है।

प्र: जब मॉडल "निर्णय" करता है कि खोज करना है तो वास्तव में क्या हो रहा है?
यह मूल रिकवरी-वृद्धित उत्पादन अनुसंधान में वर्णित पुनः प्राप्त-फिर-सृजन पैटर्न है: एक मॉडल अपनी अंतिम आउटपुट को उन दस्तावेजों पर शर्तें रखता है जो निष्पादन समय पर अधिग्रहित किए गए हैं, न कि केवल इसके वजन में बेक किए गए डेटा पर। उपकरण कॉलिंग वह तंत्र है जिसका उपयोग आधुनिक चैट-ट्यून किए गए मॉडल उस अधिग्रहण को सक्रिय करने के लिए करते हैं, बातचीत के बीच में, न कि हर प्रॉम्प्ट से पहले चलने वाले एक निश्चित पुनर्प्राप्ति कदम में।

प्र: क्या ग्राउंडिंग मॉडल को चीजें बनाने से पूरी तरह रोकता है?

नहीं। यह खोज परिणामों द्वारा वास्तव में कवर किए गए विशिष्ट तथ्यों पर कल्पनाओं को कम करता है, लेकिन एक छोटा मॉडल अभी भी गलत तरीके से श्रेय दे सकता है, अधिक संक्षेप कर सकता है, या एक विवरण जोड़ सकता है जो उपकरण के आउटपुट में नहीं था। दूसरे टर्न को वास्तविक डेटा से सूचित ड्राफ्ट के रूप में मानें, ना कि एक अधिकृत उद्धरण के रूप में — किसी भी भार वहन करने वाले मामले में, मॉडल के दावों की तुलना उस organic_results पेलोड के साथ करें जो वास्तव में इसे दिए गए थे, उस पर भरोसा करने से पहले।

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

सबसे लोकप्रिय लेख

सूची