इसके माध्यम से साझा किया गया


एजेंट अवलोकन क्षमता

महत्त्वपूर्ण

Microsoft Agent 365 तक शीघ्र पहुँच प्राप्त करने के लिए आपको Frontier पूर्वावलोकन प्रोग्राम का भाग बनने की आवश्यकता है. फ्रंटियर आपको सीधे Microsoft के नवीनतम AI नवाचारों से जोड़ता है। फ्रंटियर पूर्वावलोकन आपके ग्राहक समझौतों की मौजूदा पूर्वावलोकन शर्तों के अधीन हैं। चूंकि ये सुविधाएँ अभी भी विकास में हैं, इसलिए उनकी उपलब्धता और क्षमताएं समय के साथ बदल सकती हैं।

एजेंट 365 पारिस्थितिकी तंत्र में भाग लेने के लिए, आपको अपने एजेंट में एजेंट 365 अवलोकन क्षमताओं को जोड़ना होगा। एजेंट 365 ऑब्जर्वेबिलिटी ओपनटेलीमेट्री (ओटेल) पर आधारित है और सभी एजेंट प्लेटफार्मों पर लगातार और सुरक्षित रूप से टेलीमेट्री को कैप्चर करने के लिए एक एकीकृत ढांचा प्रदान करता है। इस आवश्यक घटक को कार्यान्वित करके, आप Microsoft व्यवस्थापन केंद्र (MAC) में अपने एजेंट की गतिविधि की निगरानी करने के लिए IT व्यवस्थापकों को सक्षम करते हैं और सुरक्षा टीमों को अनुपालन और खतरे का पता लगाने के लिए डिफेंडर और Purview का उपयोग करने की अनुमति देते हैं।

के मुख्य लाभ हैं:

  • एंड-टू-एंड दृश्यता: सत्र, टूल कॉल और अपवाद सहित प्रत्येक एजेंट आह्वान के लिए व्यापक टेलीमेट्री कैप्चर करें, जिससे आपको सभी प्लेटफार्मों पर पूर्ण पता लगाने की क्षमता मिलती है।
  • सुरक्षा और अनुपालन सक्षमता: फीड यूनिफाइड ऑडिट लॉग इन डिफेंडर और पर्व्यू, जो आपके एजेंट के लिए उन्नत सुरक्षा परिदृश्य और अनुपालन रिपोर्टिंग को सक्षम करता है।
  • क्रॉस-प्लेटफ़ॉर्म लचीलापन: OTel मानकों पर निर्माण करें और Copilot Studio, Foundry और भविष्य के एजेंट फ्रेमवर्क जैसे विविध रनटाइम और प्लेटफ़ॉर्म का समर्थन करें।
  • व्यवस्थापकों के लिए परिचालन दक्षता: MAC में केंद्रीकृत अवलोकन प्रदान करें, समस्या निवारण समय को कम करें और आपके एजेंट का प्रबंधन करने वाली IT टीमों के लिए भूमिका-आधारित पहुँच नियंत्रणों के साथ शासन में सुधार करें।

स्थापना

एजेंट 365 द्वारा समर्थित भाषाओं के लिए observability मॉड्यूल को स्थापित करने के लिए इन आदेशों का उपयोग करें।

pip install microsoft-agents-a365-observability-core
pip install microsoft-agents-a365-runtime

कॉन्फ़िगरेशन

अवलोकन के लिए आवश्यक पर्यावरण चर हैं:

परिवेश चर विवरण
ENABLE_OBSERVABILITY=true ट्रेसिंग को सक्षम/अक्षम करने के लिए ध्वजांकित करें। डिफ़ॉल्ट रूप से:
ENABLE_A365_OBSERVABILITY_EXPORTER=true True हमारी सेवा में लॉग निर्यात करें। अन्यथा कंसोल निर्यातक के पास वापस आ जाता है
from microsoft_agents_a365.observability.core import config

def token_resolver(agent_id: str, tenant_id: str) -> str | None:
    # Implement secure token retrieval here
    return "Bearer <token>"

config.configure(
    service_name="my-agent-service",
    service_namespace="my.namespace",
    token_resolver=token_resolver,
)

कंसोल पर लॉग इन करने के लिए टोकन रिज़ॉल्वर को बाहर करें।

छवि एट्रिब्यूट

प्रासंगिक जानकारी सेट करने के लिए उपयोग करें BaggageBuilder जो एक अनुरोध में सभी स्पैन के माध्यम से प्रवाहित होती है। SDK मौजूदा विशेषताओं को अधिलेखित किए बिना सभी गैर-खाली सामान प्रविष्टियों को नए शुरू किए गए स्पैन में कॉपी SpanProcessor करता है।

from microsoft_agents_a365.observability.core.middleware.baggage_builder import BaggageBuilder

with (
    BaggageBuilder()
    .tenant_id("tenant-123")
    .agent_id("agent-456")
    .correlation_id("corr-789")
    .build()
):
    # Any spans started in this context will receive these as attributes
    pass

टोकन रिज़ॉल्वर

एजेंट 365 निर्यातक का उपयोग करते समय, आपको एक टोकन रिज़ॉल्वर फ़ंक्शन प्रदान करना होगा जो प्रमाणीकरण टोकन लौटाता है। एजेंट होस्टिंग फ्रेमवर्क के साथ एजेंट 365 ऑब्जर्वेबिलिटी एसडीके का उपयोग करते समय, आप एजेंट गतिविधियों से टोकन उत्पन्न कर सकते हैं TurnContext

from microsoft_agents.activity import load_configuration_from_env
from microsoft_agents.authentication.msal import MsalConnectionManager
from microsoft_agents.hosting.aiohttp import CloudAdapter
from microsoft_agents.hosting.core import (
    AgentApplication,
    Authorization,
    MemoryStorage,
    TurnContext,
    TurnState,
)
from microsoft_agents_a365.runtime.environment_utils import (
    get_observability_authentication_scope,
)

agents_sdk_config = load_configuration_from_env(environ)

STORAGE = MemoryStorage()
CONNECTION_MANAGER = MsalConnectionManager(**agents_sdk_config)
ADAPTER = CloudAdapter(connection_manager=CONNECTION_MANAGER)
ADAPTER.use(TranscriptLoggerMiddleware(ConsoleTranscriptLogger()))
AUTHORIZATION = Authorization(STORAGE, CONNECTION_MANAGER, **agents_sdk_config)

AGENT_APP = AgentApplication[TurnState](
    storage=STORAGE, adapter=ADAPTER, authorization=AUTHORIZATION, **agents_sdk_config
)

@AGENT_APP.activity("message", auth_handlers=["AGENTIC"])
async def on_message(context: TurnContext, _state: TurnState):
    aau_auth_token = await AGENT_APP.auth.exchange_token(
                        context,
                        scopes=get_observability_authentication_scope(),
                        auth_handler_id="AGENTIC",
                    )
    # cache this auth token and return via token resolver

ऑटो-इंस्ट्रूमेंटेशन

ऑटो-इंस्ट्रूमेंटेशन स्वचालित रूप से एजेटिक फ्रेमवर्क (एसडीके) मौजूदा टेलीमेट्री संकेतों को निशान के लिए सुनता है और उन्हें एजेंट 365 अवलोकन सेवा को अग्रेषित करता है। इससे डेवलपर्स को मैन्युअल रूप से निगरानी कोड लिखने, सेटअप को सरल बनाने और लगातार प्रदर्शन ट्रैकिंग सुनिश्चित करने की आवश्यकता समाप्त हो जाती है।

ऑटो-इंस्ट्रूमेंटेशन कई SDK और प्लेटफ़ॉर्म पर समर्थित है:

प्लेटफ़ॉर्म समर्थित एसडीके/फ्रेमवर्क
।जाल सिमेंटिक कर्नेल, ओपनएआई, एजेंट फ्रेमवर्क
Python सिमेंटिक कर्नेल, ओपनएआई, एजेंट फ्रेमवर्क, लैंगचेन
Node.js ओपनएआई

नोट

ऑटो-इंस्ट्रूमेंटेशन के लिए समर्थन प्लेटफ़ॉर्म और SDK कार्यान्वयन के अनुसार भिन्न होता है।

सिमेंटिक कर्नेल

ऑटो इंस्ट्रूमेंटेशन के लिए बैगेज बिल्डर के उपयोग की आवश्यकता होती है। का उपयोग करके BaggageBuilderएजेंट आईडी और किरायेदार आईडी सेट करें।

पैकेज स्थापित करें

pip install microsoft-agents-a365-observability-extensions-semantic-kernel

अवलोकन को कॉन्फ़िगर करें

from microsoft_agents_a365.observability.core.config import configure
from microsoft_agents_a365.observability.extensions.semantic_kernel import SemanticKernelInstrumentor

# Configure observability
configure(
    service_name="my-semantic-kernel-agent",
    service_namespace="ai.agents"
)

# Enable auto-instrumentation
instrumentor = SemanticKernelInstrumentor()
instrumentor.instrument()

# Your Semantic Kernel code is now automatically traced

ओपनएआई

ऑटो इंस्ट्रूमेंटेशन के लिए बैगेज बिल्डर के उपयोग की आवश्यकता होती है। का उपयोग करके BaggageBuilderएजेंट आईडी और किरायेदार आईडी सेट करें।

पैकेज स्थापित करें।

pip install microsoft-agents-a365-observability-extensions-openai

अवलोकन को कॉन्फ़िगर करें।

from microsoft_agents_a365.observability.core.config import configure
from microsoft_agents_a365.observability.extensions.openai_agents import OpenAIAgentsTraceInstrumentor

# Configure observability
configure(
    service_name="my-openai-agent",
    service_namespace="ai.agents"
)

# Enable auto-instrumentation
instrumentor = OpenAIAgentsTraceInstrumentor()
instrumentor.instrument()

# Your OpenAI Agents code is now automatically traced

एजेंट फ्रेमवर्क

ऑटो इंस्ट्रूमेंटेशन के लिए बैगेज बिल्डर के उपयोग की आवश्यकता होती है। BaggageBuilder का उपयोग करके एजेंट आईडी और टेनेंट आईडी सेट करें।

पैकेज स्थापित करें

pip install microsoft-agents-a365-observability-extensions-agent-framework

अवलोकन को कॉन्फ़िगर करें

from microsoft_agents_a365.observability.core.config import configure
from microsoft_agents_a365.observability.extensions.agentframework.trace_instrumentor import (
    AgentFrameworkInstrumentor,
)

# Configure observability
configure(
    service_name="AgentFrameworkTracingWithAzureOpenAI",
    service_namespace="AgentFrameworkTesting",
)

# Enable auto-instrumentation
AgentFrameworkInstrumentor().instrument()

लैंगचेन फ्रेमवर्क

ऑटो-इंस्ट्रूमेंटेशन के लिए बैगेज बिल्डर के उपयोग की आवश्यकता होती है। का उपयोग करके BaggageBuilderएजेंट आईडी और किरायेदार आईडी सेट करें।

पैकेज स्थापित करें।

pip install microsoft-agents-a365-observability-extensions-langchain

अवलोकन को कॉन्फ़िगर करें

from microsoft_agents_a365.observability.core.config import configure
from microsoft_agents_a365.observability.extensions.langchain import CustomLangChainInstrumentor

# Configure observability
configure(
    service_name="my-langchain-agent",
    service_namespace="ai.agents"
)

# Enable auto-instrumentation
CustomLangChainInstrumentor()

# Your LangChain code is now automatically traced

मैनुअल इंस्ट्रूमेंटेशन

एजेंट 365 अवलोकन एसडीके का उपयोग एजेंट के आंतरिक कामकाज को समझने के लिए किया जा सकता है। एसडीके तीन स्कोप प्रदान करता है जिन्हें शुरू किया जा सकता है: InvokeAgentScope, , ExecuteToolScopeऔर InferenceScope.

एजेंट आह्वान

इस दायरे का उपयोग आपकी एजेंट प्रक्रिया की शुरुआत में किया जाना चाहिए। इनवोक एजेंट स्कोप के साथ, आप वर्तमान एजेंट को लागू किए जा रहे गुणों, एजेंट उपयोगकर्ता डेटा आदि को कैप्चर करते हैं।

from microsoft_agents_a365.observability.core.invoke_agent_scope import InvokeAgentScope
from microsoft_agents_a365.observability.core.invoke_agent_details import InvokeAgentDetails
from microsoft_agents_a365.observability.core.tenant_details import TenantDetails
from microsoft_agents_a365.observability.core.request import Request

invoke_details = InvokeAgentDetails(
    details=agent_details,        # AgentDetails instance
    endpoint=my_endpoint,         # Optional endpoint (with hostname/port)
    session_id="session-42"
)
tenant_details = TenantDetails(tenant_id="tenant-123")
req = Request(content="User asks a question")

with InvokeAgentScope.start(invoke_details, tenant_details, req):
    # Perform agent invocation logic
    response = call_agent(...)

उपकरण निष्पादन

निम्नलिखित उदाहरण प्रदर्शित करते हैं कि निगरानी और ऑडिटिंग उद्देश्यों के लिए टेलीमेट्री को कैप्चर करने के लिए अवलोकन ट्रैकिंग के साथ अपने एजेंट के टूल निष्पादन को कैसे इंस्ट्रूमेंट किया जाए।

from microsoft_agents_a365.observability.core.execute_tool_scope import ExecuteToolScope
from microsoft_agents_a365.observability.core.tool_call_details import ToolCallDetails

tool_details = ToolCallDetails(
    tool_name="summarize",
    tool_type="function",
    tool_call_id="tc-001",
    arguments="{'text': '...'}",
    description="Summarize provided text",
    endpoint=None  # or endpoint object with hostname/port
)

with ExecuteToolScope.start(tool_details, agent_details, tenant_details):
    result = run_tool(tool_details)

अनुमान

निम्नलिखित उदाहरण दिखाते हैं कि टोकन उपयोग, मॉडल विवरण और प्रतिक्रिया मेटाडेटा को कैप्चर करने के लिए अवलोकन ट्रैकिंग के साथ एआई मॉडल अनुमान कॉल को कैसे इंस्ट्रूमेंट किया जाए।

from microsoft_agents_a365.observability.core.inference_scope import InferenceScope
from microsoft_agents_a365.observability.core.inference_call_details import InferenceCallDetails
from microsoft_agents_a365.observability.core.request import Request

inference_details = InferenceCallDetails(
    operationName=SomeEnumOrValue("chat"),
    model="gpt-4o-mini",
    providerName="azure-openai",
    inputTokens=123,
    outputTokens=456,
    finishReasons=["stop"],
    responseId="resp-987"
)
req = Request(content="Explain quantum computing simply.")

with InferenceScope.start(inference_details, agent_details, tenant_details, req):
    completion = call_llm(...)

स्थानीय स्तर पर मान्य करें

परिवेश चर सहेजें. यह कंसोल करने के लिए फैलाता है (निशान)।

अवलोकन के साथ अपने एजेंट का परीक्षण करें

अपने एजेंट में अवलोकन को लागू करने के बाद, यह सुनिश्चित करने के लिए परीक्षण करें कि टेलीमेट्री सही ढंग से कैप्चर की जा रही है। अपने परिवेश को सेट करने के लिए परीक्षण मार्गदर्शिका का पालन करें, फिर मुख्य रूप से अवलोकन योग्यता लॉग देखें अनुभाग पर ध्यान केंद्रित करें ताकि यह सत्यापित किया जा सके कि आपका अवलोकन कार्यान्वयन अपेक्षित रूप से काम कर रहा है।