ai-agents-for-beginners

ಮೈಕ್ರೋಸಾಫ್ಟ್ ಏಜೆಂಟ್ ಫ್ರೇಮ್‌ವರ್ಕ್ ಅನ್ವೇಷಣೆ

Agent Framework

ಪರಿಚಯ

ಈ ಪಾಠದಲ್ಲಿ ಈ ವಿಷಯಗಳನ್ನು ಒಳಗೊಂಡಿದೆ:

ಕಲಿಕೆಯ ಗುರಿಗಳು

ಈ ಪಾಠವನ್ನು ಪೂರ್ಣಗೊಳಿಸಿದ ನಂತರ, ನೀವು ತಿಳಿಯುವ ಮೂಲಕ:

ಸಂಕೇತ ಉದಾಹರಣೆಗಳು

Microsoft Agent Framework (MAF)ಗಾಗಿ ಸಂಕೇತ ಉದಾಹರಣೆಗಳನ್ನು ಈ ರೆಪೊಸಿಟರಿಯಲ್ಲಿ xx-python-agent-framework ಮತ್ತು xx-dotnet-agent-framework ಕಡತಗಳ ಅಡಿಯಲ್ಲಿ ಕಾಣಬಹುದು.

ಮೈಕ್ರೋಸಾಫ್ಟ್ ಏಜೆಂಟ್ ಫ್ರೇಮ್‌ವರ್ಕ್ ಅನ್ನು ಅರ್ಥಮಾಡಿಕೊಳ್ಳುವುದು

Framework Intro

Microsoft Agent Framework (MAF) ಮೈಕ್ರೋಸಾಫ್ಟ್ ನ ಒಕ್ಕೂಟಿತ ಫ್ರೇಮ್‌ವರ್ಕ್ ಆಗಿದ್ದು, AI ಏಜೆಂಟ್ಗಳನ್ನು ನಿರ್ಮಿಸಲು ಬಳಸಲಾಗುತ್ತದೆ. ಇದು ಉತ್ಪಾದನೆ ಮತ್ತು ಸಂಶೋಧನಾ ಪರಿಸರಗಳಲ್ಲಿ ಕಂಡುಬರುವ ವಿವಿಧ ಏಜೆಂಟಿಕ್ ಬಳಕೆಯ ಪ್ರಕರಣಗಳನ್ನು ನಿಭಾಯಿಸುವ ಸೌಕರ್ಯವನ್ನು ನೀಡುತ್ತದೆ, ಉದಾಹರಣೆಗೆ:

ಉತ್ಪಾದನೆಯಲ್ಲಿ AI ಏಜೆಂಟ್ಗಳನ್ನು ಹಂಚಿಕೊಡುವುದಕ್ಕಾಗಿ, MAF ಈ ಸೂಚನೆಗಳನ್ನು ಒಳಗೊಳ್ಳುತ್ತದೆ:

ಮೈಕ್ರೋಸಾಫ್ಟ್ ಏಜೆಂಟ್ ಫ್ರೇಮ್‌ವರ್ಕ್ ಅಧಿಕ ಸಂಯೋಜಿಸುವುದನ್ನು ಗಮನಿಸಿದ್ದು:

ಈ ವೈಶಿಷ್ಟ್ಯಗಳು ಮೈಕ್ರೋಸಾಫ್ಟ್ ಏಜೆಂಟ್ ಫ್ರೇಮ್‌ವರ್ಕ್‌ನ ಕೆಲವು ಪ್ರಮುಖ ಸಂಶೋಧನೆಗಳಲ್ಲಿ ಹೇಗೆ ಅನ್ವಯಿಸುತ್ತದೆ ಎಂಬುದನ್ನು ನೋಡೋಣ.

ಮೈಕ್ರೋಸಾಫ್ಟ್ ಏಜೆಂಟ್ ಫ್ರೇಮ್‌ವರ್ಕ್‌ನ ಪ್ರಮುಖ ಸಂಶೋಧನೆಗಳು

ಏಜೆಂಟ್ಗಳು

Agent Framework

ಏಜೆಂಟ್ ರಚನೆ

ಏಜೆಂಟ್ ರಚನೆ LLM ಪ್ರೊವೈಡರ್ ಎಂಬ ಇನ್ಫರೆನ್ಸ್ ಸೇವೆಯನ್ನು, AI ಏಜೆಂಟ್ ಅನುಸರಿಸಬೇಕಾದ ಸೂಚನೆಗಳನ್ನು ಮತ್ತು ಒಂದು ನಿಯೋಜಿತ ನಾಮವನ್ನು ನಿರ್ದಿಷ್ಟಪಡಿಸುವ ಮೂಲಕ ಮಾಡಲಾಗುತ್ತದೆ:

agent = AzureOpenAIChatClient(credential=AzureCliCredential()).create_agent( instructions="You are good at recommending trips to customers based on their preferences.", name="TripRecommender" )

ಮೇಲಿನ ಉದಾಹರಣೆ Azure OpenAI ಬಳಸಿ ಮಾಡಲಾಗಿದ್ದು, ಆದರೆ ವಿವಿಧ ಸೇವೆಗಳೊಂದಿಗೆ ಏಜೆಂಟ್‌ಗಳನ್ನು ರಚಿಸಬಹುದು, ಉದಾಹರಣೆಗಾಗಿ Microsoft Foundry Agent Service:

AzureAIAgentClient(async_credential=credential).create_agent( name="HelperAgent", instructions="You are a helpful assistant." ) as agent

OpenAI Responses, ChatCompletion API ಗಳು

agent = OpenAIResponsesClient().create_agent( name="WeatherBot", instructions="You are a helpful weather assistant.", )
agent = OpenAIChatClient().create_agent( name="HelpfulAssistant", instructions="You are a helpful assistant.", )

ಅಥವಾ ದೂರದ ಏಜೆಂಟ್‌ಗಳು A2A ಪ್ರೋಟೋಕಾಲ್ ಬಳಸಿ:

agent = A2AAgent( name=agent_card.name, description=agent_card.description, agent_card=agent_card, url="https://your-a2a-agent-host" )

ಏಜೆന്റ് ಚಾಲನೆ

ಏಜೆಂಟ್‌ಗಳು .run ಅಥವಾ .run_stream ವಿಧಾನಗಳನ್ನು ಬಳಸಿ ನಾನ್-ಸ್ಟ್ರೀಮಿಂಗ್ ಅಥವಾ ಸ್ಟ್ರೀಮಿಂಗ್ ಪ್ರತಿಕ್ರಿಯೆಗಳಿಗೆ ಸಕ್ರಿಯಗೊಳ್ಳುತ್ತವೆ.

result = await agent.run("What are good places to visit in Amsterdam?")
print(result.text)
async for update in agent.run_stream("What are the good places to visit in Amsterdam?"):
    if update.text:
        print(update.text, end="", flush=True)

ಪ್ರತಿಯೊಂದು ಏಜೆಂಟ್ ಚಾಲನೆಗೆ max_tokens (ಏಜೆಂಟ್ ಬಳಕೆಯ ಮ್ಯಾಕ್ಸ್ ಟೋಕನ್ಸ್), tools (ಏಜೆಂಟ್ ಕರೆ ಮಾಡಬಹುದಾದ ಸಾಧನಗಳು), ಮತ್ತು ಏಜೆಂಟ್ ಬಳಕೆ ಮಾಡುವ model ಮುಂತಾದ ಆಯ್ಕಗಳನ್ನು ಕಸ್ಟಮೈಸ್ ಮಾಡಬಹುದು.

ನಿರ್ದಿಷ್ಟ ಮಾದರಿ ಅಥವಾ ಸಾಧನಗಳು ಬಳಕೆದಾರರ ಕಾರ್ಯ ಪೂರ್ಣಗೊಳಿಸಲು ಅಗತ್ಯವಿರುವ ಸಂದರ್ಭದಲ್ಲಿ ಇದು ಉಪಯುಕ್ತ.

ಸಾಧನಗಳು

ಸಾಧನಗಳನ್ನು ಏಜೆಂಟ್ ನಿರ್ಧರಿಸುವಾಗ ಅಥವಾ ಏಜೆಂಟ್ ಅನ್ನು ಚಾಲನೆ ಮಾಡುವಾಗ ಎರಡೂ ಸಮಯದಲ್ಲಿಯೂ ನಿಗದಿಪಡಿಸಬಹುದು:

def get_attractions( location: Annotated[str, Field(description="The location to get the top tourist attractions for")], ) -> str: """Get the top tourist attractions for a given location.""" return f"The top attractions for {location} are." 


# ಚಾಟ್ ಏಜೆಂಟ್ ಅನ್ನು ನೇರವಾಗಿ ರಚಿಸುವಾಗ

agent = ChatAgent( chat_client=OpenAIChatClient(), instructions="You are a helpful assistant", tools=[get_attractions]


result1 = await agent.run( "What's the best place to visit in Seattle?", tools=[get_attractions] # ಈ ಓಟಿನಿಗಾಗಿ ಮಾತ್ರ ಒದಗಿಸಿದ ಉಪಕರಣ )

ಏಜೆಂಟ್ ಥ್ರೆಡ್‌ಗಳು

ಬಹು-ತಿರುವು ಸಂಭಾಷಣೆಗಳನ್ನು ನಿರ್ವಹಿಸಲು ಏಜೆಂಟ್ ಥ್ರೆಡ್‌ಗಳು ಬಳಸಲ್ಪಡುತ್ತವೆ. ಥ್ರೆಡ್‌ಗಳನ್ನು ಕೆಳಗಿನ ರೀತಿಯಲ್ಲಿ ರಚಿಸಬಹುದು:

ಥ್ರೆಡ್ ರಚನೆಯ ಉದಾಹರಣೆ:

# ಹೊಸ ಸೇಜೋತು ರಚಿಸಿ.
thread = agent.get_new_thread() # ಆ ಜೋತೆಯೊಂದಿಗೆ ಏಜೆಂಟ್ ಅನ್ನು ಚಾಲನೆ ಮಾಡಿ.
response = await agent.run("Hello, I am here to help you book travel. Where would you like to go?", thread=thread)

ನಂತರ ಥ್ರೆಡ್ ಅನ್ನು ಸಂರಕ್ಷಿಸಲು ಸರಣೀಕರಿಸಬಹುದು:

# ಹೊಸ ಥ್ರೆಡ್ ಅನ್ನು ರಚಿಸಿ.
thread = agent.get_new_thread() 

# ಥ್ರೆಡ್ ಜೊತೆಯಾಗಿ ಏಜೆಂಟ್ ಅನ್ನು ಚಾಲನೆ ಮಾಡಿ.

response = await agent.run("Hello, how are you?", thread=thread) 

# ಸಂಗ್ರಹಣೆಗೆ ಥ್ರೆಡ್ ಅನ್ನು ಸರಣೀಕರಿಸಿ.

serialized_thread = await thread.serialize() 

# ಸಂಗ್ರಹಣೆಯಿಂದ ಲೋಡ್ ಮಾಡಿಕೊಳ್ತಾದ ನಂತರ ಥ್ರೆಡ್ ಸ್ಥಿತಿಯನ್ನು ಡೀಸಿರಿಯಲೈಸ್ ಮಾಡಿ.

resumed_thread = await agent.deserialize_thread(serialized_thread)

ಏಜೆಂಟ್ ಮಿಡ್‌ಲ್‌ವೇರ್

ಏಜೆಂಟ್‌ಗಳು ಸಾಧನಗಳು ಮತ್ತು LLM ಗಳೊಂದಿಗೆ ಉಪಯೋಗದ ಕಾರ್ಯಗಳನ್ನು ಪೂರ್ಣಗೊಳಿಸಲು ಸಂವಹನ ಮಾಡುತ್ತವೆ. ಕೆಲವು ಸಂದರ್ಭಗಳಲ್ಲಿ, ಈ ತುತ್ತುಗಳಲ್ಲಿ ಕಾರ್ಯಗಳನ್ನು ನಡೆಸಲು ಅಥವಾ ಟ್ರ್ಯಾಕ್ ಮಾಡಲು ಇಂತೆ ಮಾಡಬೇಕಾಗುತ್ತದೆ. ಏಜೆಂಟ್ ಮಿಡ್‌ಲ್‌ವೇರ್ ಇದನ್ನು ಅನುಮತಿಸುತ್ತದೆ:

ಫಂಕ್ಷನ್ ಮಿಡ್‌ಲ್‌ವೇರ್

ಇದೆಂದು ನಾವು ಏಜೆಂಟ್ ಮತ್ತು ಅದು ಕರೆ ಮಾಡಲಿರುವ ಕಾರ್ಯ/ಸಾಧನ ನಡುವಿನ ಕ್ರಿಯೆಯನ್ನು ನಡೆಸಬಹುದು. ಉದಾಹರಣೆಗೆ, ಕಾರ್ಯ ಕರೆಯುವಿಕೆಯಲ್ಲಿ ಲಾಗಿಂಗ್ ಮಾಡಲು ಇದನ್ನು ಬಳಸಬಹುದು.

ಕೆಳಗಿನ ಕೋಡ್ ನಲ್ಲಿ next ಮುಂದಿನ ಮಿಡ್‌ಲ್‌ವೇರ್ ಅಥವಾ ನಿಜವಾದ ಕಾರ್ಯವನ್ನು ಕರೆಸಬೇಕೇ ಎಂಬುದನ್ನು ನಿರ್ಧರಿಸುತ್ತದೆ.

async def logging_function_middleware(
    context: FunctionInvocationContext,
    next: Callable[[FunctionInvocationContext], Awaitable[None]],
) -> None:
    """Function middleware that logs function execution."""
    # ಪೂರ್ವ ಕಾರ್ಯಾಚರಣೆ: ಫังก್ಷನ್ ಕಾರ್ಯ ನಿರ್ವಹಣೆಗೆ ಮೊದಲು ಲಾಗ್ ಮಾಡಿ
    print(f"[Function] Calling {context.function.name}")

    # ಮುಂದಿನ ಮಧ್ಯವರ್ತಿಯ ಅಥವಾ ಫังก್ಷನ್ ಕಾರ್ಯ ನಿರ್ವಹಣೆಗೆ ಮುಂದುವರಿಯಿರಿ
    await next(context)

    # ನಂತರದ ಕಾರ್ಯಾಚರಣೆ: ಫังก್ಷನ್ ಕಾರ್ಯ ನಿರ್ವಹಣೆ ಬಳಿಕ ಲಾಗ್ ಮಾಡಿ
    print(f"[Function] {context.function.name} completed")

ಚಾಟ್ ಮಿಡ್‌ಲ್‌ವೇರ್

ಎಲ್ಎಲ್‌ಎಂ ನಡುವಿನ ವಿನಂತಿಗಳನ್ನು ಏಜೆಂಟ್ ಜೊತೆ ಸಂವಹನದ ವೇಳೆ ಕ್ರಿಯೆಗಳನ್ನ ಅಥವಾ ದಾಖಲಾತಿಗಳನ್ನು ಮಾಡಲು ಅನುಮತಿಸುತ್ತದೆ.

ಇದಲ್ಲದೆ, ಇದು AI ಸೇವೆಗೆ ಕಳುಹಿಸಲಾಗುವ messages ಸ implicit ಮಾಹಿತಿ ಒಳಗೊಂಡಿದೆ.

async def logging_chat_middleware(
    context: ChatContext,
    next: Callable[[ChatContext], Awaitable[None]],
) -> None:
    """Chat middleware that logs AI interactions."""
    # ಪೂರ್ವ-ಪ್ರಕ್ರಿಯೆ: AI ಕರೆದ ಮೊದಲು ಲಾಗ್ ಮಾಡಿ
    print(f"[Chat] Sending {len(context.messages)} messages to AI")

    # ಮುಂದಿನ ಮಿಡ್ಲ್‌ವೇರ್ ಅಥವಾ AI ಸೇವೆಗೆ ಮುಂದುವರಿಸಿ
    await next(context)

    # ನಂತರ-ಪ್ರಕ್ರಿಯೆ: AI ಪ್ರತಿಕ್ರಿಯೆ ನಂತರ ಲಾಗ್ ಮಾಡಿ
    print("[Chat] AI response received")

ಏಜೆಂಟ್ ಮೆಮೊರಿ

Agentic Memory ಪಾಠದಲ್ಲಿ ಸ್ಪಷ್ಟಪಡಿಸಿದಂತೆ, ಮೆಮೊರಿ ವಿವಿಧ ಪಂಕ್ತಿಗಳಲ್ಲಿ ಏಜೆಂಟ್ ಕಾರ್ಯನಿರ್ವಹಿಸಲು ಮುಖ್ಯ ಅಂಶವಾಗಿದೆ. MAF ವಿವಿಧ ಪ್ರಕಾರದ ಮೆಮೊರಿಗಳನ್ನು ಒದಗಿಸುತ್ತದೆ:

ಇನ್-ಮೆಮೊರಿ ಸಂಗ್ರಹಣೆ

ಅಧಿಕೃತ ಜಾಗದಲ್ಲಿ ಸಂಗ್ರಹಿಸಲ್ಪಡುವ ಮೆಮೊರಿ.

# ಹೊಸ ಥ್ರೆಡ್ ಸೃಷ್ಟಿಸಿ.
thread = agent.get_new_thread() # ಆ ಥ್ರೆಡ್‌ನೊಂದಿಗೆ ಏಜೆಂಟ್ ಅನ್ನು ಚಲಾಯಿಸಿ.
response = await agent.run("Hello, I am here to help you book travel. Where would you like to go?", thread=thread)

ಅಕ್ಷಯ ಸಂದೇಶಗಳು

ಅನೇಕ ಅಧಿವೇಶನಗಳಲ್ಲಿ ಸಂಭಾಷಣೆ ಇತಿಹಾಸವನ್ನು ಸಂಗ್ರಹಿಸಲು ಬಳಸುವ ಮೆಮೊರಿ, ಇದನ್ನು chat_message_store_factory ಮೂಲಕ ನಿರ್ದಿಷ್ಟಪಡಿಸಲಾಗುತ್ತದೆ:

from agent_framework import ChatMessageStore

# ಕಸ್ಟಮ್ ಸಂದೇಶ ಸಂಗ್ರಹಣೆಯನ್ನು ರಚಿಸಿ
def create_message_store():
    return ChatMessageStore()

agent = ChatAgent(
    chat_client=OpenAIChatClient(),
    instructions="You are a Travel assistant.",
    chat_message_store_factory=create_message_store
)

ಡೈನಾಮಿಕ್ ಮೆಮೊರಿ

ಏಜೆಂಟ್ ಗಳನ್ನು ಚಾಲನೆ ಮಾಡುವ ಮುಂದುಕೊಂಡ ಟೆಂಪ್ಲೇಟ್ಗಾಗಿ, ಈ ಮೆಮೊರಿಗಳು mem0 ಮುಂತಾದ ಬಾಹ್ಯ ಸೇವೆಗಳಲ್ಲಿ ಸಂಗ್ರಹಿಸಬಹುದು:

from agent_framework.mem0 import Mem0Provider

# ಪ್ರगत್ಮಕ ಸ್ಮರಣೆ ಕಾರ್ಯಕ್ಷಮತೆಗಾಗಿ Mem0 ಉಪಯೋಗಿಸುತ್ತಿದೆ
memory_provider = Mem0Provider(
    api_key="your-mem0-api-key",
    user_id="user_123",
    application_id="my_app"
)

agent = ChatAgent(
    chat_client=OpenAIChatClient(),
    instructions="You are a helpful assistant with memory.",
    context_providers=memory_provider
)

ಏಜೆಂಟ್ ಅವಲೋಕನ

ಒಳ್ಳೆಯ ಮತ್ತು ನಿರ್ವಹಣೀಯ ಏಜೆಂಟಿಕ್ ವ್ಯವಸ್ಥೆಗಳನ್ನು ನಿರ್ಮಿಸಲು ಅವಲೋಕನ ಅತ್ಯಂತ ಮುಖ್ಯ. MAF, ಓಪನ್Telemetry ಜೊತೆಗೆ ಸಂಯೋಜಿಸಿ, ಉತ್ತಮ ಅವಲೋಕನಕ್ಕಾಗಿ ಹಾದಿ ಗುರುತಿಸುವಿಕೆ ಮತ್ತು ಮೀಟರ್‌ಗಳನ್ನು ಒದಗಿಸುತ್ತದೆ.

from agent_framework.observability import get_tracer, get_meter

tracer = get_tracer()
meter = get_meter()
with tracer.start_as_current_span("my_custom_span"):
    # ಏನಾದರೂ ಮಾಡಿ
    pass
counter = meter.create_counter("my_custom_counter")
counter.add(1, {"key": "value"})

ವರ್ಕ್‌ಫ್ಲೋಗಳು

MAF ಕಾರ್ಯಪಡೆಯಲ್ಲಿರುವ ಭಾಗಗಳಾಗಿ AI ಏಜೆಂಟ್ ಗಳು ಸಮಾವೇಶಿತವಾಗಿರುವ ಕಾರ್ಯ ಪೂರ್ಣಗೊಳಿಸುವ ಪೂರ್ವ-ನಿರ್ಧರಿತ ಹಂತಗಳ ಅನ್ನು ಒದಗಿಸುತ್ತದೆ.

ವರ್ಕ್‌ಫ್ಲೋಗಳು ವಿವಿಧ ಭಾಗಗಳಿಂದ ಕೂಡಿವೆ, ಇದು ಉತ್ತಮ ನಿಯಂತ್ರಣ ಪ್ರವಾಹವನ್ನು ಒದಗಿಸುತ್ತದೆ. ವರ್ಕ್‌ಫ್ಲೋಗಳು ಬಹು-ಏಜೆಂಟ್ ಸಂಯೋಜನೆ ಮತ್ತು ಚೆಕ್‌ಪಾಯಿಂಟ್ ಮೂಲಕ ವರ್ಕ್‌ಫ್ಲೋ ಸ್ಥಿತಿಗಳನ್ನು ಉಳಿಸುವುದನ್ನು ಅನುಮತಿಸುತ್ತದೆ.

ವರ್ಕ್‌ಫ್ಲೋ ಮೂಲಭೂತ ಘಟಕಗಳು:

ನಿರ್ವಾಹಕರು

ನಿರ್ವಾಹಕರು ಇನ್ಪುಟ್ ಸಂದೇಶಗಳನ್ನು ಸ್ವೀಕರಿಸಿ, ನಿಯೋಜಿತ ಕಾರ್ಯಗಳನ್ನು ಪೂರ್ಣಗೊಳಿಸಿ, ಮತ್ತು ಉತ್ಪನ್ನ ಸಂದೇಶವನ್ನು ತಯಾರಿಸುತ್ತಾರೆ. ಇದು ದೊಡ್ಡ ಕಾರ್ಯ ಪೂರ್ಣಗೊಳಿಸುವತ್ತ ವರ್ಕ್‌ಫ್ಲೋನ್ನು ಮುನ್ನಡೆಸುತ್ತದೆ. ನಿರ್ವಾಹಕರು AI ಏಜೆಂಟ್ ಆಗಿರಬಹುದು ಅಥವಾ ಕಸ್ಟಮ್ ಲಾಜಿಕ್ ಆಗಿರಬಹುದು.

ಧಾರೆಗಳು

ವರ್ಕ್‌ಫ್ಲೋ ನಲ್ಲಿ ಸಂದೇಶಗಳ ಪ್ರವಾಹವನ್ನು ನಿರ್ಧರಿಸಲು ಧಾರೆಗಳು ಬಳಸಲಾಗುತ್ತವೆ. ಇವುಗಳು:

ನೇರ ಧಾರೆಗಳು - ನಿರ್ವಾಹಕರ ನಡುವೆ ಸರಳ ಒಬ್ಬನಿಂದ ಒಬ್ಬರಿಗೆ ಸಂಪರ್ಕ:

from agent_framework import WorkflowBuilder

builder = WorkflowBuilder()
builder.add_edge(source_executor, target_executor)
builder.set_start_executor(source_executor)
workflow = builder.build()

ಶರತ ಪ್ರಕರಣ ಧಾರೆಗಳು - ನಿರ್ದಿಷ್ಟ ಶರತ ಪೂರೈಸಿದ ಮೇಲೆ ಸಕ್ರಿಯವಾಗುತ್ತದೆ. ಉದಾಹರಣೆಗೆ, ಹೋಟೆಲ್ ಕೊಠಡಿಗಳು ಲಭ್ಯವಿಲ್ಲದಾಗ, ನಿರ್ವಾಹಕರು ಬೇರೆ ಆಯ್ಕೆಗಳು ಸೂಚಿಸಬಹುದು.

ಸ್ವಿಚ್-ಕೆಸ್ಇ ಧಾರೆಗಳು - ನಿರ್ದಿಷ್ಟ ಶರತಗಳ ಆಧಾರದಲ್ಲಿ ಸಂದೇಶಗಳನ್ನು ವಿಭಿನ್ನ ನಿರ್ವಾಹಕರಿಗೆ ಮಾರ್ಗದರ್ಶನ ಮಾಡುತ್ತದೆ. ಉದಾಹರಣೆಗೆ, ಪ್ರಯಾಣ ಗ್ರಾಹಕರಿಗೆ ಪ್ರಾಥಮಿಕ ಪ್ರವೇಶವಿದ್ದರೆ ಅವರ ಕಾರ್ಯಗಳನ್ನು ಬೇರೆ ವರ್ಕ್‌ಫ್ಲೋ ಮೂಲಕ ನಿರ್ವಹಿಸಲಾಗುತ್ತದೆ.

ಫ್ಯಾನ್-ಔಟ್ ಧಾರೆಗಳು - ಒಂದು ಸಂದೇಶವನ್ನು ಹಲವು ಗಮ್ಯಸ್ಥಾನಗಳಿಗೆ ಕಳುಹಿಸುವುದು.

ಫ್ಯಾನ್-ಇನ್ ಧಾರೆಗಳು - ವಿಭಿನ್ನ ನಿರ್ವಾಹಕರಿಂದ ಹಲವಾರು ಸಂದೇಶಗಳನ್ನು ಸಂಗ್ರಹಿಸಿ ಒಂದು ಗಮ್ಯಸ್ಥಾನಕ್ಕೆ ಕಳುಹಿಸುವುದು.

ಘಟನೆಗಳು

ವರ್ಕ್‌ಫ್ಲೋಗಳಿಗೆ ಉತ್ತಮ ಅವಲೋಕನ ನೀಡಲು, MAF ಕಾರ್ಯಾಚರಣೆಗಾಗಿ ನಿರ್ಮಿತ ಘಟನೆಯನ್ನು ಒದಗಿಸುತ್ತದೆ:

ಏಡ್ವಾನ್ಸ್ಡ್ MAF ಮಾದರಿಗಳು

ಮೇಲಿನ ವಿಭಾಗಗಳು ಮೈಕ್ರೋಸಾಫ್ಟ್ ಏಜೆಂಟ್ ಫ್ರೇಮ್‌ವರ್ಕ್‌ನ ಪ್ರಮುಖ ಸಂಶೋಧನೆಗಳನ್ನು ಹತ್ತಿಹರಿಯುತ್ತವೆ. ಹೆಚ್ಚು ಸಂಕೀರ್ಣ ಏಜೆಂಟ್‌ಗಳನ್ನು ನಿರ್ಮಿಸುವಾಗ, ಇಲ್ಲಿ ಕೆಲವೇ ಏಡ್ವಾನ್ಸ್ಡ್ ಮಾದರಿಗಳನ್ನು ಪರಿಗಣಿಸಿ:

ಸಂಕೇತ ಉದಾಹರಣೆಗಳು

ಮೈಕ್ರೋಸಾಫ್ಟ್ ಏಜೆಂಟ್ ಫ್ರೇಮ್‌ವರ್ಕ್‌ಗಾಗಿ ಸಂಕೇತ ಉದಾಹರಣೆಗಳನ್ನು ಈ ರೆಪೊಸಿಟರಿಯಲ್ಲಿ xx-python-agent-framework ಮತ್ತು xx-dotnet-agent-framework ಕಡತಗಳ ಅಡಿಯಲ್ಲಿ ಕಾಣಬಹುದು.

ಮೈಕ್ರೋಸಾಫ್ಟ್ ಏಜೆಂಟ್ ಫ್ರೇಮ್‌ವರ್ಕ್ ಕುರಿತು ಇನ್ನಷ್ಟು ಪ್ರಶ್ನೆಗಳಿವೆಯೇ?

ಇತರ ಕಲಿಕೆದಾರರೊಂದಿಗೆ ಭೇಟಿ ಮಾಡುವುದು, ಆಫೀಸ್ ಗಂಟೆಗಳ ಭಾಗವಹಿಸುವುದು ಮತ್ತು ನಿಮ್ಮ AI ಏಜೆಂಟ್ ಪ್ರಶ್ನೆಗಳಿಗೆ ಉತ್ತರಗಳನ್ನು ಪಡೆಯಲು Microsoft Foundry Discord ನಲ್ಲಿ ಸೇರಿ.


ವಾರ್ನಿಂಗ್: ಈ ದಾಖಲೆ AI ಅನುವಾದ ಸೇವೆ Co-op Translator ಬಳಸಿ ಅನುವಾದಿಸಲಾಗಿದೆ. ನಾವು ಸರಿಯಾದ ಅನುವಾದಕ್ಕೆ ಪ್ರಯತ್ನಿಸುವುದರಿದ್ದರೂ, ಸ್ವಯಂ ಪ್ರೇರಿತ ಅನುವಾದಗಳಲ್ಲಿ ದೋಷಗಳು ಅಥವಾ ಅಸಮರ್ಪಕತೆಗಳಿರಬಹುದೆಂದು ದಯವಿಟ್ಟು ಗಮನದಲ್ಲಿರಲಿ. ಮೂಲ ಭಾಷೆಯ ದಾಖಲೆವೇ ಅಧಿಕೃತ ಮೂಲವಾಗಿದೆ ಎಂದು ಪರಿಗಣಿಸಬೇಕು. ಅತ್ಯಂತ ಅಗತ್ಯ ಮಾಹಿತಿ కోసం ವೃತ್ತಿಪರ ಮಾನವ ಅನುವಾದವನ್ನು ಶಿಫಾರಸು ಮಾಡಲಾಗಿದೆ. ಈ ಅನುವಾದ ಬಳಕೆಯಿಂದ ಉದ್ಭವಿಸಬಹುದಾದ ಯಾವುದೇ ತಪ್ಪು ಅರ್ಥಕ್ರಮಗಳು ಅಥವಾ误解‍ಗಳಿಗೆ ನಾವು ಜವಾಬ್ದಾರರಾಗಿರುವುದಿಲ್ಲ.