mirror of
https://github.com/microsoft/agent-framework.git
synced 2026-06-16 21:04:09 +08:00
Python: Fix sample bugs: incorrect API params, wrong client types, and invalid options (#4983)
* Fix sample bugs: incorrect API params, wrong client types, and invalid options - typed_options.py: Fix AnthropicClient model->model_id, wrap raw strings in Message objects for get_response(), fix reasoning_effort->reasoning dict, fix budget_tokens minimum (1024), use OpenAIChatClient not FoundryChatClient, remove unused import - client_reasoning.py: Fix deprecated model_id to model param - client_with_hosted_mcp.py: Remove invalid store=True kwarg from Agent.run() - code_defined_skill.py: Fix precision kwarg to use function_invocation_kwargs - Various other samples: Fix deprecated API usage and incorrect params Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * Address PR review comments - client_with_hosted_mcp.py: Fix remaining store=True kwarg on line 68 to use options dict - client_with_session.py: Change store=True to store=False to match in-memory persistence demo intent - typed_options.py: Remove non-existent import and model key from docstring example Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com> * new sample fixes --------- Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
This commit is contained in:
committed by
GitHub
Unverified
parent
3d09337446
commit
7c2dae8855
@@ -4,7 +4,7 @@ import asyncio
|
||||
from typing import Annotated
|
||||
|
||||
from agent_framework import Agent, tool
|
||||
from agent_framework.openai import OpenAIResponsesClient
|
||||
from agent_framework.openai import OpenAIChatClient
|
||||
from dotenv import load_dotenv
|
||||
|
||||
# Load environment variables from .env file
|
||||
@@ -81,7 +81,7 @@ async def scenario_max_iterations():
|
||||
print("Scenario 1: max_iterations — limit LLM roundtrips")
|
||||
print("=" * 60)
|
||||
|
||||
client = OpenAIResponsesClient()
|
||||
client = OpenAIChatClient()
|
||||
|
||||
# 1. Set max_iterations to 3 — the tool loop will run at most 3 roundtrips
|
||||
# to the model before forcing a text response.
|
||||
@@ -116,7 +116,7 @@ async def scenario_max_function_calls():
|
||||
print("Scenario 2: max_function_calls — limit total tool executions")
|
||||
print("=" * 60)
|
||||
|
||||
client = OpenAIResponsesClient()
|
||||
client = OpenAIChatClient()
|
||||
|
||||
# 1. Allow many iterations but cap total function calls to 4.
|
||||
# If the model requests 3 parallel searches per iteration, after 2
|
||||
@@ -158,7 +158,7 @@ async def scenario_max_invocations():
|
||||
print("=" * 60)
|
||||
|
||||
agent = Agent(
|
||||
client=OpenAIResponsesClient(),
|
||||
client=OpenAIChatClient(),
|
||||
name="APIAgent",
|
||||
instructions="Use call_expensive_api when asked to analyze something.",
|
||||
tools=[call_expensive_api],
|
||||
@@ -214,7 +214,7 @@ async def scenario_per_agent_tool_limits():
|
||||
agent_a_lookup = tool(name="lookup", approval_mode="never_require", max_invocations=2)(_do_lookup)
|
||||
agent_b_lookup = tool(name="lookup", approval_mode="never_require", max_invocations=5)(_do_lookup)
|
||||
|
||||
client = OpenAIResponsesClient()
|
||||
client = OpenAIChatClient()
|
||||
agent_a = Agent(
|
||||
client=client,
|
||||
name="AgentA",
|
||||
@@ -259,7 +259,7 @@ async def scenario_combined():
|
||||
print("Scenario 5: Combined — all mechanisms together")
|
||||
print("=" * 60)
|
||||
|
||||
client = OpenAIResponsesClient()
|
||||
client = OpenAIChatClient()
|
||||
|
||||
# 1. Configure the client with both iteration and function call limits.
|
||||
client.function_invocation_configuration["max_iterations"] = 5 # max 5 LLM roundtrips
|
||||
|
||||
Reference in New Issue
Block a user