
Rajinder Singh
Deep Learning Researcher

माइक्रोसॉफ्ट के ऑटोजेन फ्रेमवर्क बहु-चरण बातचीत के माध्यम से जटिल कार्य पूरा करने के लिए सहयोग करने वाले बातचीत आर्टिफिशियल इंटेलिजेंस एजेंट्स को सक्षम करता है। जब ऑटोजेन एजेंट वेब-आधारित ऑपरेशन करते हैं - डेटा प्राप्त करना, फॉर्म जमा करना या स्वचालित अनुसंधान - CAPTCHA चुनौतियां बातचीत के प्रवाह को बाधित करती हैं और कार्य पूरा करने को असंभव बना देती हैं। कैपसॉल्वर के capsolver-agent पैकेज में टूल स्कीमा और एक एसिंक्रोनस एक्सीक्यूटर होता है जो सीधे ऑटोजेन के कार्य-कॉलिंग मैकेनिज्म में एम्बेड किया जाता है, जो आपके एजेंट्स को मध्य-बातचीत में reCAPTCHA, Cloudflare Turnstile और अन्य सत्यापन चुनौतियों को हल करने की क्षमता प्रदान करता है।
register_function API के माध्यम से एक कॉल करने योग्य टूल के रूप में एम्बेड किया जाता हैcapsolver-agent एक्सीक्यूटर एसिंक्रोनस रूप से हल करता है और संरचित परिणाम लौटाता हैऑटोजेन के बहु-एजेंट आर्किटेक्चर में एजेंट्स संदेशों के माध्यम से सहयोग करते हैं। एक सामान्य सेटअप में एक एसिस्टेंट एजेंट (AI) और एक यूजर प्रॉक्सी एजेंट (जो कोड और टूल्स को चलाता है) शामिल होते हैं। जब सहायक यह निर्धारित करता है कि एक वेब कार्य के लिए CAPTCHA हल करना आवश्यक है, तो यह एक पंजीकृत कार्य कॉल करता है - अन्यथा बातचीत लूप बाधित हो जाता है और आगे बढ़ने का कोई तरीका नहीं होता।
समस्या ऑटोजेन के समूह चैट स्थितियों में अधिक गंभीर हो जाती है। बहुत सारे एजेंट एक साथ वेब एक्सेस की आवश्यकता हो सकती है: एक एजेंट कंपनी के डेटा के अनुसंधान कर रहा होता है, दूसरा संपर्क जानकारी की पुष्टि कर रहा होता है, तीसरा नियमावली के दस्तावेजों की जांच कर रहा होता है। प्रत्येक के अलग-अलग साइट पर CAPTCHA हो सकते हैं। कोई हल करने वाला तंत्र न होने पर, पूरी समूह बातचीत पहले सत्यापन दीवार पर रुक जाती है।
कैपसॉल्वर के उत्पादन डेटा के अनुसार, लगभग 30% एजेंट वेब कार्यों के अवरोध के अनुभव करते हैं। एक ऑटोजेन वर्कफ़्लो जो 10 वेब-निर्भर चरणों के साथ काम करता है, इसका अर्थ है कि प्रत्येक बातचीत में 3 संभावित बाधाएं हो सकती हैं - प्रत्येक के लिए या तो मानव हस्तक्षेप या एक स्वचालित हल करने वाला टूल की आवश्यकता होती है।
आवश्यक पैकेज स्थापित करें:
# कैपसॉल्वर कोर एंजिन (आवश्यक निर्भरता)
pip install git+https://github.com/capsolver-ai/capsolver-core.git
# कैपसॉल्वर एजेंट टूल्स
pip install git+https://github.com/capsolver-ai/capsolver-agent.git
# ऑटोजेन फ्रेमवर्क
pip install autogen-agentchat
पर्यावरण चर को सेट करें:
export CAPSOLVER_API_KEY="आपका-कैपसॉल्वर-एपी-की"
export OPENAI_API_KEY="आपका-ओपनएआई-एपी-की"
आपके पास एक कैपसॉल्वर खाता होना चाहिए जिसमें एपीआई क्रेडिट लोड हों।
ऑटोजेन register_function का उपयोग टूल्स को एजेंट्स द्वारा उपलब्ध कराने के लिए करता है। एक CAPTCHA हल करने वाला फंक्शन बनाएं और इसे पंजीकृत करें:
import asyncio
from autogen import AssistantAgent, UserProxyAgent, config_list_from_json
from capsolver_agent.schema import create_executor
# कैपसॉल्वर एक्सीक्यूटर बनाएं
executor = create_executor(api_key="आपका-कैपसॉल्वर-एपी-की")
def solve_captcha(
captcha_type: str,
website_url: str,
website_key: str,
page_action: str = "",
min_score: float = 0.7
) -> str:
"""CAPTCHA चुनौती हल करें और सत्यापन टोकन लौटाएं।
आर्ग्स:
captcha_type: CAPTCHA प्रकार - 'reCaptchaV2', 'reCaptchaV3', या 'cloudflare'
website_url: CAPTCHA वाले पृष्ठ का पूरा URL
website_key: साइट कुंजी (data-sitekey लक्षण)
page_action: reCAPTCHA v3 के लिए क्रिया नाम (वैकल्पिक)
min_score: reCAPTCHA v3 के लिए न्यूनतम स्कोर (डिफ़ॉल्ट 0.7)
लौटाता है:
हल किया गया CAPTCHA टोकन या त्रुटि संदेश
"""
params = {
"captcha_type": captcha_type,
"website_url": website_url,
"website_key": website_key
}
if page_action and captcha_type == "reCaptchaV3":
params["page_action"] = page_action
params["min_score"] = min_score
result = asyncio.run(executor.execute("solve_captcha", params))
if result["success"]:
token = result["solution"]["token"]
return f"CAPTCHA सफलतापूर्वक हल कर दिया गया। टोकन (पहले 80 अक्षर): {token[:80]}..."
return f"CAPTCHA हल करना विफल रहा: {result['error']}"
ऑटोजेन के कार्य पंजीकरण एजेंट्स के कार्यान्वयन क्षमता प्रदान करने के लिए मानक तरीका है। सहायक एजेंट को कार्य के विवरण मिलता है, डॉकस्ट्रिंग के माध्यम से इसके पैरामीटर को समझता है, और जब बातचीत में CAPTCHA हल करने की आवश्यकता होती है तो इसे कॉल करता है। यह ऑटोजेन के डिज़ाइन पैटर्न के अनुरूप है।
CAPTCHA हल करने की क्षमता के साथ एक एसिस्टेंट एजेंट और यूजर प्रॉक्सी एजेंट जोड़ें:
# LLM विन्यास
llm_config = {
"config_list": [{"model": "gpt-4o", "api_key": "आपका-ओपनएआई-की"}],
"temperature": 0
}
# सहायक एजेंट (जो क्या करना है यह निर्धारित करता है)
assistant = AssistantAgent(
name="वेब_सहायक",
system_message="""आप एक वेब अनुसंधान सहायक हैं जिसके पास CAPTCHA हल करने की क्षमता है।
जब किसी कार्य के लिए CAPTCHA-सुरक्षित वेबसाइट के एक्सेस की आवश्यकता होती है, तो उपयुक्त पैरामीटर के साथ solve_captcha
फंक्शन का उपयोग करें:
- captcha_type: 'reCaptchaV2', 'reCaptchaV3', या 'cloudflare'
- website_url: पृष्ठ का पूरा URL
- website_key: पृष्ठ से साइट कुंजी
हल करने के बाद, टोकन को उपयोगकर्ता को फॉर्म जमा करने के लिए लौटाएं।""",
llm_config=llm_config
)
# यूजर प्रॉक्सी (एजेंट के बजाय कार्य करता है)
user_proxy = UserProxyAgent(
name="यूजर_प्रॉक्सी",
human_input_mode="NEVER",
max_consecutive_auto_reply=5,
code_execution_config={"work_dir": "कार्यस्थल", "use_docker": False}
)
# CAPTCHA हल करने वाला कार्य पंजीकृत करें
from autogen import register_function
register_function(
solve_captcha,
caller=assistant, # सहायक निर्णय लेता है
executor=user_proxy, # यूजर प्रॉक्सी कार्य करता है
name="solve_captcha",
description="CAPTCHA चुनौती हल करें (reCAPTCHA v2/v3 या Cloudflare Turnstile) और सत्यापन टोकन लौटाएं"
)
द्वि-एजेंट पैटर्न ऑटोजेन की मुख्य व्यवस्था है। सहायक कार्य के बारे में विचार करता है और आवश्यकता होने पर solve_captcha कॉल करता है। यूजर प्रॉक्सी कार्य कॉल करता है और परिणाम को सहायक तक वापस लौटाता है, जो टोकन उपलब्ध होने पर बातचीत को जारी रखता है।
CAPTCHA हल करने की आवश्यकता वाली बातचीत शुरू करें:
# बातचीत शुरू करें
user_proxy.initiate_chat(
assistant,
message="""मुझे reCAPTCHA v2 द्वारा सुरक्षित पृष्ठ तक पहुंच की आवश्यकता है।
URL: https://example.com/data-portal
साइट कुंजी: 6LeIxAcTAAAAAJcZVRqyHh71UMIEGNQ_MXjiZKhI
कृपया CAPTCHA हल करें और मुझे टोकन प्रदान करें।"""
)
बातचीत का प्रवाह:
solve_captcha के साथ पैरामीटर कॉल करता हैजटिल वर्कफ़्लो के लिए, एक समूह चैट में CAPTCHA हल करने को पंजीकृत करें:
from autogen import GroupChat, GroupChatManager
# विशेषज्ञ एजेंट
researcher = AssistantAgent(
name="अनुसंधानकर्ता",
system_message="आप वेबसाइटों के अनुसंधान करते हैं और डेटा एकत्र करते हैं। जब आप सत्यापन चुनौतियों का सामना करते हैं तो solve_captcha का उपयोग करें।",
llm_config=llm_config
)
analyst = AssistantAgent(
name="विश्लेषक",
system_message="आप संग्रहित डेटा का विश्लेषण करते हैं और अंतर्दृष्टि पैदा करते हैं।",
llm_config=llm_config
)
executor_agent = UserProxyAgent(
name="एक्सीक्यूटर",
human_input_mode="NEVER",
code_execution_config={"work_dir": "कार्यस्थल", "use_docker": False}
)
# अनुसंधानकर्ता के लिए CAPTCHA हल करने को पंजीकृत करें
register_function(
solve_captcha,
caller=researcher,
executor=executor_agent,
name="solve_captcha",
description="वेबसाइटों पर CAPTCHA चुनौतियां हल करें"
)
# समूह चैट बनाएं
group_chat = GroupChat(
agents=[researcher, analyst, executor_agent],
messages=[],
max_round=10
)
manager = GroupChatManager(groupchat=group_chat, llm_config=llm_config)
# समूह अनुसंधान कार्य शुरू करें
executor_agent.initiate_chat(
manager,
message="https://example.com/reports पर डेटा के अनुसंधान करें। यह reCAPTCHA v2 (कुंजी: 6Le...) द्वारा सुरक्षित है। CAPTCHA हल करें, डेटा एकत्र करें, फिर इसका विश्लेषण करें।"
)
| CAPTCHA प्रकार | कार्य प्रकार पैरामीटर | औसत हल करने का समय | सामान्य साइटें |
|---|---|---|---|
| reCAPTCHA v2 | reCaptchaV2 |
5-12 सेकंड | लॉगिन पृष्ठ, फॉर्म, पोर्टल |
| reCAPTCHA v3 | reCaptchaV3 |
3-8 सेकंड | API, अदृश्य सुरक्षा |
| Cloudflare Turnstile | cloudflare |
2-5 सेकंड | आधुनिक SaaS, Shopify साइट्स |
कैपसॉल्वर reCAPTCHA गाइड और Cloudflare Turnstile डॉक्यूमेंटेशन प्रत्येक CAPTCHA प्रकार के लिए अतिरिक्त पैरामीटर विवरण प्रदान करते हैं।
अपना बोनस कोड दावा करें: कैपसॉल्वर डैशबोर्ड पर कोड WEBS का उपयोग करें ताकि प्रत्येक भरोसे में 5% का अतिरिक्त बोनस मिले। ऑटोजेन बहु-एजेंट वर्कफ़्लो चलाने वाली टीमों के लिए आदर्श।
उत्पादन डेप्लॉयमेंट के लिए रीट्री लॉजिक और बैलेंस चेकिंग जोड़ें:
def solve_captcha_with_retry(
captcha_type: str,
website_url: str,
website_key: str,
max_retries: int = 3
) -> str:
"""असफलता पर स्वचालित रीट्री के साथ CAPTCHA हल करें।"""
for attempt in range(max_retries):
params = {
"captcha_type": captcha_type,
"website_url": website_url,
"website_key": website_key
}
result = asyncio.run(executor.execute("solve_captcha", params))
if result["success"]:
return f"हल कर दिया (प्रयास {attempt+1})। टोकन: {result['solution']['token'][:80]}..."
if attempt < max_retries - 1:
import time
time.sleep(3)
return f"{max_retries} प्रयासों के बाद असफल: {result.get('error', 'अज्ञात')}"
def check_captcha_balance() -> str:
"""CAPTCHA हल करने वाले क्रेडिट की शेष राशि जांचें।"""
result = asyncio.run(executor.execute("get_balance", {}))
if result["success"]:
return f"कैपसॉल्वर बैलेंस: ${result['balance']:.2f}"
return "बैलेंस निकालना संभव नहीं रहा"
दोनों कार्यों को व्यापक क्षमता के लिए पंजीकृत करें:
register_function(solve_captcha_with_retry, caller=assistant, executor=user_proxy,
name="solve_captcha", description="रीट्री लॉजिक के साथ CAPTCHA हल करें")
register_function(check_captcha_balance, caller=assistant, executor=user_proxy,
name="check_balance", description="CAPTCHA हल करने वाले क्रेडिट बैलेंस जांचें")
कैपसॉल्वर वेब स्क्रैपिंग डॉक्यूमेंटेशन ऑटोजेन अनुसंधान एजेंट्स के लिए उच्च-आउटपुट डेटा संग्रह के लिए अतिरिक्त पैटर्न को कवर करता है। ब्राउजर-आधारित ऑटोमेशन के लिए, कैपसॉल्वर एक्सटेंशन विकास के दौरान CAPTCHA पैरामीटर की पहचान में मदद करता है।
ऑटोजेन एजेंट्स में CAPTCHA हल करने के लिए register_function के माध्यम से एक हल करने वाला कार्य पंजीकृत करना आवश्यक है, इसे कैपसॉल्वर के एक्सीक्यूटर से जोड़ें, और सहायक एजेंट को बातचीत के दौरान इसे कॉल करने के लिए छोड़ दें। कैपसॉल्वर आईएआई-शक्ति वाले हल करने की सुविधा प्रदान करता है जो 3-12 सेकंड में सत्यापन चुनौतियों को साफ करता है, आपकी ऑटोजेन बातचीत को मानव हस्तक्षेप के बिना बहुत आसानी से बहती रहती है।
सरल कार्यों के लिए द्वि-एजेंट पैटर्न से शुरू करें, फिर जटिल बहु-एजेंट वर्कफ़्लो के लिए समूह चैट में विस्तार करें। कार्य पंजीकरण दृष्टिकोण के कारण एजेंट बातचीत के संदर्भ में जब आवश्यकता होती है तो स्वाभाविक रूप से हल करते हैं - कोई भी कोड किए गए CAPTCHA निर्धारण की आवश्यकता नहीं होती है।
हां। ऑटोजेन के register_function का उपयोग सिंक्रोनस कार्य साइनेचर करता है, लेकिन आप कैपसॉल्वर के एसिंक्रोनस एक्सीक्यूटर को asyncio.run() के साथ लपेट सकते हैं। इससे ऑटोजेन के सिंक्रोनस कार्य-कॉलिंग इंटरफ़ेस के भीतर एसिंक्रोनस हल करने के लाभ (कनेक्शन पूलिंग, समानांतर मांग) मिलते हैं।
हां। एक ही हल करने वाला कार्य कई कॉलर एजेंटों के साथ एक समूह चैट में पंजीकृत करें। प्रत्येक एजेंट अपने विशिष्ट कार्य की आवश्यकता होने पर CAPTCHA हल करने के लिए स्वतंत्र रूप से कॉल कर सकता है। कैपसॉल्वर के API बिना किसी बाधा के समानांतर मांगों को संभालता है।
ऑटोजेन के सहायक एजेंट कार्य के विवरण और बातचीत के संदर्भ के माध्यम से निर्णय लेता है। जब कार्य किसी CAPTCHA-सुरक्षित संसाधन के एक्सेस के बारे में बताता है, तो सहायक आवश्यकता को निर्धारित करता है और उचित पैरामीटर के साथ कार्य कॉल उत्पन्न करता है। आप सिस्टम संदेश में विशिष्ट निर्देश भी शामिल कर सकते हैं।
कार्य एजेंट के पास त्रुटि संदेश लौटाता है। सहायक एजेंट अलग पैरामीटर के साथ पुनः प्रयास कर सकता है, स्पष्टीकरण मांग सकता है, या विफलता रिपोर्ट कर सकता है। ऑटोजेन के बातचीत लूप कार्य जारी रहता है - विफलता डायलॉग के हिस्से के रूप में संभाली जाती है बजाय तंत्र के विफलता के।
एक बातचीत में 1-3 CAPTCHAs के साथ एक ऑटोजेन बातचीत की लागत $0.002-0.009 होती है। reCAPTCHA v2 के लिए लगभग $2-3 प्रति 1,000 हल होते हैं, और Cloudflare Turnstile के लिए $1-2 प्रति 1,000। अधिकांश वर्कफ़्लो के लिए, CAPTCHA हल करने की लागत LLM API लागत के मुकाबले नगण्य होती है।
OpenAI Agents SDK में CapSolver function_tool का उपयोग करके उच्च स्कोर reCAPTCHA v3 टोकन उत्पन्न करें।

CrewAI बहु-एजेंट वर्कफ़्लो में Cloudflare Turnstile हल करने के लिए CapSolver के साथ एम्बेड करें।
