Skip to main content

स्थानीय टूल

जब Rust प्रक्रिया ऑपरेशन चला सकती हो, तब Tool::new(...) इस्तेमाल करें:
parameters वैल्यू मॉडल को JSON Schema के रूप में भेजी जाती है। टूल इनपुट और आउटपुट serde_json::Value होते हैं। अगर रनटाइम पर अधिक मज़बूत गारंटी चाहिए, तो executor के अंदर अविश्वसनीय आर्ग्युमेंट की जाँच करें।

अनुमोदन की आवश्यकता वाले टूल

ऑपरेशन चलाने से पहले रोकने के लिए require_approval() जोड़ें:
जब मॉडल इस टूल को कॉल करता है, तो रन run.status == "waiting_for_human" और run.pause.kind == "tool_approval" के साथ लौटता है। सटीक कॉल ID का उपयोग करके रन फिर से शुरू करें:
Rust 0.1 API में अलग अस्वीकृति प्रकार उपलब्ध नहीं है। जिस कॉल को अनुमोदन नहीं मिला उसे रुका रहने दें, या फिर से शुरू करने से पहले अपने ऐप की अस्वीकृति नीति लागू करें।

बाहरी टूल

जब कोई दूसरी प्रक्रिया ऑपरेशन करती है, तब Tool::external(...) इस्तेमाल करें:
जब हर लंबित कॉल को बाहरी नतीजे की ज़रूरत हो, तब pause kind external_output होता है। हर नतीजा उसकी कॉल ID के साथ दें:
अगर मॉडल के एक टर्न में ऑटोमैटिक और लंबित, दोनों तरह के टूल हों, तो pause लौटाने से पहले runtime ऑटोमैटिक टूल चलाता है।

टूल की त्रुटियाँ

स्थानीय executor से लौटाया गया AgentError संरचित टूल त्रुटि संदेश बनकर मॉडल को भेजा जाता है। अज्ञात टूल नाम या अनुमोदन/आउटपुट न मिलने पर आगे चलाने का अनुरोध AgentError के साथ विफल होता है।

संबंधित जानकारी

अंतिम संशोधन 2 अक्टूबर 2026