पाठ 25 / 25

Revision: Cheat Sheet और Self-Check

पूरे कोर्स का loop, protocol और सुरक्षा का सार दोहराएँ।

Cheat sheet

Agent = model + tools + step सीमा वाला loop। Tool call = tool_use, फिर id से मिला tool_result। Frameworks plumbing बचाते हैं पर abstraction जोड़ते हैं; tools को स्वतंत्र रखें। MCP = JSON-RPC पर host, client, server; primitives हैं tools (model), resources (ऐप), prompts (user)। FastMCP: @mcp.tool(), @mcp.resource(), @mcp.prompt()। Transports: local के लिए stdio, remote के लिए OAuth सहित streamable HTTP। Safety: servers की जाँच, least privilege, मंज़ूरी, tool output को अविश्वसनीय मानें। Quality: स्पष्ट descriptions, unit tests, evals, छिपे हुए logs।

इंटरव्यू में पूछे जाने वाले सवाल

इन्हें समझाने को तैयार रहें: model और कोड के बीच tool call कैसे चलती है, framework कब छोड़ेंगे, MCP कौन-सी समस्या हल करता है, tools, resources और prompts में अंतर, stdio servers पर stdout वर्जित क्यों है, और prompt injection से बचाव कैसे करेंगे।

त्वरित जाँच: एक stdio MCP server बीच-बीच में टूटता है। आपको tool में `print("debug")` मिलता है। संभावित कारण क्या है?

  • print धीमा है
  • Stdout protocol messages ले जाता है, इसलिए prints stream बिगाड़ते हैं
  • Python functions में print मना करता है
  • Host अंग्रेज़ी का समर्थन नहीं करता
Answer

Stdout protocol messages ले जाता है, इसलिए prints stream बिगाड़ते हैं — Stdio servers पर diagnostics के लिए standard error या log फ़ाइल उपयोग करें।

त्वरित जाँच: Read-only कंपनी policy दस्तावेज़ कौन-सी primitive उपलब्ध कराए?

  • Tool
  • Resource
  • Transport
  • Sampling loop
Answer

Resource — स्थिर संदर्भ डेटा resource में ठीक बैठता है जिसे ऐप context के रूप में जोड़ सकती है।

त्वरित जाँच: आपका agent निजी files पढ़ सकता है और HTTP requests भी भेज सकता है। मुख्य जोखिम क्या है?

  • धीमे उत्तर
  • Injected text उसे निजी डेटा बाहर भेजने को उकसा सकता है
  • ज़्यादा disk उपयोग
  • कोई जोखिम नहीं
Answer

Injected text उसे निजी डेटा बाहर भेजने को उकसा सकता है — निजी डेटा access और बाहर भेजने का रास्ता मिलाना ख़तरनाक है; उन्हें अलग करें या रोक लगाएँ।