
Rajinder Singh
Deep Learning Researcher

The OpenAI Agents SDK उत्पादन-तैयार फ्रेमवर्क प्रदान करता है जो AI एजेंट बनाने के लिए उपयोग किया जा सकता है जिसमें टूल-कॉलिंग क्षमता होती है। जब इन एजेंट रिकैपचा से सुरक्षित वेबसाइटों के साथ अंतःक्रिया करते हैं, तो उन्हें प्रोग्रामेटिक रूप से सत्यापन चुनौतियां समाप्त करने का एक तरीका चाहिए। CapSolver के capsolver-agent पैकेज को @function_tool डेकोरेटर के माध्यम से OpenAI Agents SDK के साथ एकीकृत किया गया है, जो आपके एजेंट को अपने स्वयं के कार्य प्रवाह के हिस्से के रूप में reCAPTCHA v2 और v3 चुनौतियां हल करने में सक्षम बनाता है।
@function_tool का उपयोग करके कॉल करने योग्य टूल रजिस्टर करता है - CapSolver इस पैटर्न के साथ नैतिक रूप से फिट होता हैcapsolver-agent के execute_tool() फ़ंक्शन एक असिंक्रोनस कॉल में हल करता है जो SDK के साथ संगत हैOpenAI Agents SDK विकासकर्ताओं को टूल के उपयोग के माध्यम से बहु-चरण कार्य करने वाले एजेंट बनाने की अनुमति देता है। जब एजेंट के कार्य में वेब अंतःक्रिया शामिल होती है - लॉगिन के पीछे डेटा तक पहुंच, फॉर्म जमा करना, या सुरक्षित पृष्ठों से जानकारी एकत्र करना - reCAPTCHA चुनौतियां प्रगति को रोक देती हैं। एजेंट अगला क्या करना है, इसके बारे में तर्क कर सकता है, लेकिन एक हल करने वाला टूल के बिना, यह आगे बढ़ने के लिए आवश्यक सत्यापन टोकन उत्पन्न नहीं कर सकता है।
reCAPTCHA एजेंट के लिए आवश्यक साइटों पर विशेष रूप से सामान्य है: लॉगिन पोर्टल, दर सीमा वाले डेटा एपीआई, सरकारी डेटाबेस और SaaS प्लेटफॉर्म। गूगल के reCAPTCHA दस्तावेज़ बताते हैं कि दुनिया भर में 5 मिलियन से अधिक साइटें reCAPTCHA का उपयोग करती हैं, जो आपके एजेंट के लिए सबसे संभावित सत्यापन चुनौतियां हैं।
CapSolver की व्यवस्था OpenAI Agents SDK के डिज़ाइन के साथ पूरी तरह से मेल खाती है: एजेंट यह तय करता है कि क्या करना है (शामिल होने के लिए कैप्चा हल करना भी शामिल है), और CapSolver अपनी AI सेवा के माध्यम से हल करता है। इस उत्तरदायित्व के विभाजन से आपके एजेंट के तर्क साफ रहता है जबकि सत्यापन-स्पष्टीकरण क्षमता जोड़ी जाती है।
आवश्यक पैकेज स्थापित करें:
# CapSolver कोर इंजन
pip install git+https://github.com/capsolver-ai/capsolver-core.git
# CapSolver एजेंट टूल
pip install git+https://github.com/capsolver-ai/capsolver-agent.git
# OpenAI Agents SDK
pip install openai-agents
पर्यावरण चर को सेट करें:
export CAPSOLVER_API_KEY="your-capsolver-api-key"
export OPENAI_API_KEY="your-openai-api-key"
आपके पास CapSolver खाता होना चाहिए जिसमें क्रेडिट हों। SDK अब reCAPTCHA v2, reCAPTCHA v3 (शामिल हैं एंटरप्राइज), और Cloudflare Turnstile का समर्थन करता है - एजेंट के लिए सबसे अक्सर मिलने वाले सत्यापन प्रकारों को कवर करता है।
OpenAI Agents SDK @function_tool का उपयोग टूल को पंजीकृत करने के लिए करता है जिन्हें एजेंट कॉल कर सकता है। CapSolver के एक्सीक्यूटर को इस पैटर्न में लपेटें:
from agents import Agent, Runner, function_tool
from capsolver_agent.schema import execute_tool
@function_tool
async def solve_recaptcha(
website_url: str,
website_key: str,
captcha_type: str = "reCaptchaV2"
) -> str:
"""एक वेबसाइट पर reCAPTCHA चुनौतियां हल करें और सत्यापन टोकन लौटाएं।
जब आपको वेबपेज पर reCAPTCHA सत्यापन से गुजरना होता है, तो इस टूल का उपयोग करें।
आर्ग्स:
website_url: reCAPTCHA वाले पृष्ठ का पूरा URL
website_key: reCAPTCHA साइट कुंजी (data-sitekey एट्रिब्यूट में पाया जाता है)
captcha_type: या तो 'reCaptchaV2' या 'reCaptchaV3' (डिफ़ॉल्ट: reCaptchaV2)
वापसी:
g-recaptcha-response के रूप में जमा करने के लिए हल किया गया reCAPTCHA टोकन
"""
result = await execute_tool("solve_captcha", {
"captcha_type": captcha_type,
"website_url": website_url,
"website_key": website_key
}, api_key="YOUR_CAPSOLVER_API_KEY")
if result["success"]:
return f"reCAPTCHA हल कर दिया गया। टोकन: {result['solution']['token']}"
return f"हल करना विफल रहा: {result['error']}"
capsolver-agent से execute_tool() फ़ंक्शन एक बार के असिंक्रोनस कॉल है जो पूरे हल के जीवन चक्र को प्रबंधित करता है - कार्य बनाना, परिणामों के लिए पॉलिंग करना, और संरचित आउटपुट लौटाना। इसे तब विशेष रूप से डिज़ाइन किया गया है जब आपको एक हल करने की आवश्यकता होती है बिना पूर्ण एक्सीक्यूटर लूप बनाए।
OpenAI Agents SDK के @function_tool डेकोरेटर स्वचालित रूप से एजेंट को आवश्यक टूल के पैरामीटर के लिए JSON स्कीमा बनाता है। एजेंट टूल विवरण को देखता है, यह समझता है कि इसका उपयोग कब करना है, और सही आर्ग्यूमेंट के साथ इसे कॉल करता है - सभी SDK के आंतरिक फ़ंक्शन-कॉलिंग मैकेनिज्म के माध्यम से।
async def टूल फ़ंक्शन का उपयोग करें और CapSolver कॉल के लिए await का उपयोग करें।एक OpenAI एजेंट बनाएं जिसमें reCAPTCHA हल करने की क्षमता हो:
from agents import Agent, Runner
# reCAPTCHA हल करने क्षमता के साथ एजेंट बनाएं
captcha_agent = Agent(
name="वेब एक्सेस एजेंट",
instructions="""आप उपयोगकर्ताओं के साथ वेबसाइटों में अंतःक्रिया करने में मदद करने वाले एजेंट हैं। जब कार्य के लिए एक reCAPTCHA-सुरक्षित पृष्ठ तक पहुंचना आवश्यक होता है, तो solve_recaptcha टूल का उपयोग करके एक सत्यापन टोकन प्राप्त करें।
reCAPTCHA v2 के लिए: captcha_type='reCaptchaV2' का उपयोग करें
reCAPTCHA v3 के लिए: captcha_type='reCaptchaV3' का उपयोग करें
हमेशा उपयोगकर्ता के अनुरोध से ठीक वेबसाइट URL और वेबसाइट की कुंजी प्रदान करें।""",
tools=[solve_recaptcha]
)
# एजेंट चलाएं
async def main():
result = await Runner.run(
captcha_agent,
"मुझे https://example.com/login तक पहुंचने की आवश्यकता है जिसमें reCAPTCHA v2 है। "
"साइट की कुंजी 6LeIxAcTAAAAAJcZVRqyHh71UMIEGNQ_MXjiZKhI है। "
"कृपया इसे हल करें और मुझे टोकन दें।"
)
print(result.final_output)
import asyncio
asyncio.run(main())
एजेंट कार्य को प्रक्रिया करता है, यह समझता है कि reCAPTCHA हल करना आवश्यक है, दिए गए पैरामीटर के साथ टूल को कॉल करता है, और उपयोगकर्ता के लिए टोकन लौटाता है।
OpenAI Agents SDK बातचीत लूप, टूल डिस्पैच और परिणाम एकीकरण को स्वचालित रूप से प्रबंधित करता है। आप एक बार टूल को परिभाषित करते हैं, और SDK के रनटाइम इसके बारे में निर्णय लेता है कि इसे कब और कैसे कॉल किया जाए। यह हाथ से फ़ंक्शन-कॉलिंग लूप बनाने की तुलना में सरल है।
reCAPTCHA v3 स्कोर-आधारित और अदृश्य है - इसमें page_action पैरामीटर की आवश्यकता होती है और एक स्कोर-आधारित टोकन लौटाता है। एक विशेषज्ञ टूल बनाएं:
@function_tool
async def solve_recaptcha_v3(
website_url: str,
website_key: str,
page_action: str = "verify",
min_score: float = 0.7
) -> str:
"""एक reCAPTCHA v3 (अदृश्य, स्कोर-आधारित) चुनौतियां हल करें।
जब साइट reCAPTCHA v3 का उपयोग करती है - कोई दृश्य चेकबॉक्स नहीं होता है,
लेकिन साइट पृष्ठ के पीछे एक स्कोर-आधारित टोकन की जांच करती है।
आर्ग्स:
website_url: पृष्ठ का पूरा URL
website_key: reCAPTCHA v3 साइट की कुंजी
page_action: स्कोरिंग के लिए क्रिया नाम (उदाहरण के लिए, 'लॉगिन', 'जमा', 'सत्यापित')
min_score: न्यूनतम स्वीकृत स्कोर (0.0-1.0, डिफ़ॉल्ट 0.7)
"""
result = await execute_tool("solve_captcha", {
"captcha_type": "reCaptchaV3",
"website_url": website_url,
"website_key": website_key,
"page_action": page_action,
"min_score": min_score
}, api_key="YOUR_CAPSOLVER_API_KEY")
if result["success"]:
return f"reCAPTCHA v3 उच्च स्कोर के साथ हल कर दिया गया। टोकन: {result['solution']['token']}"
return f"हल करना विफल रहा: {result['error']}"
reCAPTCHA v3 हल करने का गाइड विभिन्न साइटों के लिए सही page_action पैरामीटर की पहचान करने के बारे में बताता है। सामान्य क्रियाएं 'लॉगिन', 'जमा', 'होमपेज', और 'सत्यापित' होती हैं।
reCAPTCHA हल करने के साथ अन्य टूल के साथ एजेंट को जोड़ें जो पूर्ण वेब कार्य करते हैं:
from agents import Agent, Runner, function_tool
@function_tool
async def solve_recaptcha(website_url: str, website_key: str, captcha_type: str = "reCaptchaV2") -> str:
"""reCAPTCHA को हल करें और टोकन लौटाएं।"""
result = await execute_tool("solve_captcha", {
"captcha_type": captcha_type,
"website_url": website_url,
"website_key": website_key
}, api_key="YOUR_CAPSOLVER_API_KEY")
if result["success"]:
return f"टोकन: {result['solution']['token']}"
return f"असफल: {result['error']}"
@function_tool
async def check_solver_balance() -> str:
"""CAPTCHA हल करने वाले क्रेडिट जांचें।"""
result = await execute_tool("get_balance", {}, api_key="YOUR_CAPSOLVER_API_KEY")
if result["success"]:
return f"बैलेंस: ${result['balance']:.2f}"
return "बैलेंस जांचना संभव नहीं रहा"
# बहु-क्षमता एजेंट
web_agent = Agent(
name="स्वायत्त वेब एजेंट",
instructions="""आप उपयोगकर्ताओं को सुरक्षित वेब संसाधनों तक पहुंच में मदद करते हैं। आप reCAPTCHA v2 (दृश्य चेकबॉक्स) और v3 (अदृश्य स्कोर-आधारित) दोनों को हल कर सकते हैं। यदि उपयोगकर्ता लागत के बारे में पूछता है तो हमेशा बैलेंस जांचें।
reCAPTCHA हल करते समय:
- v2: captcha_type='reCaptchaV2' का उपयोग करें
- v3: captcha_type='reCaptchaV3' का उपयोग करें और ज्ञात होने पर page_action शामिल करें
उपयोगकर्ता के फॉर्म के साथ टोकन स्पष्ट रूप से लौटाएं।""",
tools=[solve_recaptcha, check_solver_balance]
)
async def run_web_agent(task: str):
result = await Runner.run(web_agent, task)
return result.final_output
इस पैटर्न कार्यकाल में विभिन्न साइटों पर विभिन्न reCAPTCHA संस्करणों के साथ काम करने वाले एजेंट के लिए काम करता है।
अपना बोनस कोड दावा करें: CapSolver डैशबोर्ड पर कोड WEBS का उपयोग करके हर भुगतान पर 5% अतिरिक्त बोनस प्राप्त करें। OpenAI Agents के साथ वेब एक्सेस क्षमता वाले विकासकर्ताओं के लिए आदर्श।
उत्पादन OpenAI Agents के साथ reCAPTCHA हल करने के लिए:
import os
from agents import Agent, Runner, function_tool
from capsolver_agent.schema import create_executor
# उत्पादन एक्सीक्यूटर के साथ कस्टम सेटिंग्स
executor = create_executor(
api_key=os.environ["CAPSOLVER_API_KEY"],
default_timeout=90, # 90 सेकंड का समय सीमा
polling_interval=3 # प्रत्येक 3 सेकंड में पॉलिंग
)
@function_tool
async def solve_recaptcha_production(
website_url: str,
website_key: str,
captcha_type: str = "reCaptchaV2"
) -> str:
"""उत्पादन-श्रेणी reCAPTCHA हल करने वाला जिसमें पुनर्प्रयास लॉजिक होता है।"""
for attempt in range(3):
result = await executor.execute("solve_captcha", {
"captcha_type": captcha_type,
"website_url": website_url,
"website_key": website_key
})
if result["success"]:
return f"हल कर दिया गया (प्रयास {attempt+1})। टोकन: {result['solution']['token']}"
if attempt < 2:
await asyncio.sleep(2)
return f"3 प्रयासों के बाद असफल: {result.get('error')}"
उत्पादन में महत्वपूर्ण विचार:
default_timeout सेट करेंCapSolver API दस्तावेज़ उत्पादन वातावरण में समाधान समय को अनुकूलित करने के लिए अतिरिक्त कॉन्फ़िगरेशन विकल्पों को कवर करता है। लक्ष्य साइटों पर reCAPTCHA पैरामीटर की पहचान करने के लिए, CapSolver ब्राउज़र एक्सटेंशन स्वचालित रूप से पहचान प्रदान करता है।
OpenAI Agents SDK में reCAPTCHA हल करने के लिए, @function_tool के एक execute_tool() फ़ंक्शन के साथ लपेटा जाना चाहिए, फिर इसे एजेंट में नियुक्त करें। SDK के रनटाइम टूल डिस्पैच स्वचालित रूप से प्रबंधित करता है - एजेंट यह तय करता है कि reCAPTCHA हल करना कब आवश्यक है और उपयुक्त पैरामीटर के साथ टूल को कॉल करता है। CapSolver reCAPTCHA v2, v3 और एंटरप्राइज वेरिएंट्स के लिए वैध टोकन उत्पन्न करने वाली AI-शक्ति समाधान बुनियादी सुविधा प्रदान करता है।
एक एकल solve_recaptcha टूल से शुरू करें, अपने एजेंट के साथ ज्ञात लक्ष्य पर परीक्षण करें, फिर v3 समर्थन और उत्पादन पुनर्प्रयास लॉजिक जोड़ें। OpenAI Agents SDK की असिंक्रोनस आर्किटेक्चर अच्छी तरह से CapSolver के असिंक्रोनस API के साथ मेल खाती है, जो एक साफ और कार्यक्षम एकीकरण बनाती है।
हां। SDK पूरी तरह से असिंक्रोनस है, और CapSolver के execute_tool() एक असिंक्रोनस फ़ंक्शन है। @function_tool डेकोरेटर async def फ़ंक्शन के साथ प्राकृतिक रूप से संगत है, इसलिए CAPTCHA हल करना एजेंट के इवेंट लूप को ब्लॉक बिना चलता है।
हां। पैरामीटर में enterprise: true पास करें। reCAPTCHA एंटरप्राइज के लिए वी2/वी3 टास्क प्रकार का उपयोग किया जाता है लेकिन s टोकन पैरामीटर की आवश्यकता हो सकती है। CapSolver इसी API के माध्यम से एंटरप्राइज वेरिएंट्स को स्पष्ट रूप से प्रबंधित करता है।
एजेंट के निर्देशों में v2 और v3 की पहचान के बारे में दिशा-निर्देश शामिल करें। या टास्क प्रेरक में CAPTCHA प्रकार प्रदान करें। reCAPTCHA पहचान गाइड अंतरों के बारे में बताता है: v2 एक दृश्य विजेट दिखाता है, जबकि v3 स्क्रिप्ट टैग के माध्यम से अदृश्य रूप से लोड होता है।
reCAPTCHA v2 के लिए लगभग $2-3 प्रति 1,000 हल होते हैं, और reCAPTCHA v3 के लिए $1-2 प्रति 1,000 होते हैं। एक एजेंट जो प्रति सत्र 10 reCAPTCHAs हल करता है, उसकी लागत लगभग $0.02-0.03 प्रति सत्र होती है - जो स्वयं-संचालित कार्य पूरा करने के मूल्य की तुलना में नगण्य है।
हां। आप एक विशेष "CAPTCHA सॉल्वर" एजेंट बना सकते हैं और मुख्य एजेंट के पास एक सत्यापन चुनौति होने पर इसे हैंडऑफ कर सकते हैं। सॉल्वर एजेंट CAPTCHA को हल करता है और मुख्य एजेंट के पास टोकन के साथ वापस आता है। यह एजेंट की जिम्मेदारियों को स्पष्ट रूप से अलग रखता है।
पूर्ण गाइड CrewAI बहु-एजेंट वर्कफ़्लो में CAPTCHA हल करने के लिए एम्बेड करने के लिए CapSolver के साथ, reCAPTCHA और Cloudflare Turnstile के लिए कोड उदाहरण के साथ।

एक LangGraph Cloudflare Turnstile सॉल्वर वर्कफ़्लो बनाएं, जिसमें CapSolver, Playwright सेशन हैंडलिंग, नीति गेट्स, पुनर्प्रयास, सत्यापन और समीक्षा शामिल हैं।
