microsoft / microsoft/Agent365-python

[python/agent-framework/sample-agent] Sample dependencies are inconsistent on PyPI — cannot run

Open
#262 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Python
Stars
41
Forks
23
Avg merge
7h 43m
Merged PRs (30d)
3

Description

Description

Repo: https://github.com/microsoft/Agent365-Samples (visible from your local path Agent365-Samples)

Title: [python/agent-framework/sample-agent] Sample dependencies are inconsistent on PyPI — cannot run

Body template:

Following the sample at python/agent-framework/sample-agent.

Environment:

  • Python 3.12 (also tested 3.14)
  • Fresh venv
  • pip 25.0.1

Issue:

  • agent-framework (latest 1.8.1) renamed ChatAgentAgent, breaking agent.py line 40
  • agent_framework.azure (latest) does NOT export AzureOpenAIChatClient — only AI Search/Cosmos/Durable classes
  • agent_framework_azure_ai 1.0.0rc6 (the only published version) imports BaseContextProvider
    which doesn't exist in agent-framework-core 1.8.x
  • agent_framework_azure_ai 1.0.0rc6._client.py imports OpenAIResponsesOptions
    which doesn't exist in agent-framework-openai 1.8.x
  • agent-framework-azure-ai 1.0.0rc6 cannot coexist with agent-framework-foundry which pins
    agent-framework-core >= 1.0.0 (PEP 440 ordering excludes rc6)

Request:

  1. Pinned requirements.txt with exact tested versions
  2. Target Python version in the README
  3. Confirmation whether this sample requires an internal pre-release build
Expected behavior

No response

SDK Version

agent-framework-core 1.8.x

Python Version

3.12

OS

Windows 11

How to Reproduce

cd c:\Documents\GIT\Agent365-Samples\python\agent-framework\sample-agent
..venva365_py312\Scripts\Activate.ps1

1) The key test — does this import without ImportError now (at rc6)?

python -c "import agent_framework_azure_ai as az; print('OK:', sorted(x for x in dir(az) if not x.startswith('_')))"

2) Find the chat client / Azure OpenAI class specifically

python -c "import agent_framework_azure_ai as az; print([x for x in dir(az) if 'hatClient' in x or 'zureOpenAI' in x or 'penAI' in x])"

3) Get the constructor signature of whatever class exists

@'
import agent_framework_azure_ai as az
import inspect
for n in ["AzureOpenAIChatClient","AzureOpenAIClient","AzureAIChatClient","AzureAIClient","AzureOpenAIChatCompletionClient"]:
if hasattr(az, n):
print(n + ":", inspect.signature(getattr(az, n).init))
'@ | Set-Content -Path ._check_aiclient.py -Encoding UTF8
python ._check_aiclient.py
Remove-Item ._check_aiclient.py

being on agent-framework-core==1.0.0rc6 (consistent with agent-framework-azure-ai==1.0.0rc6), the import should succeed. Step 2 should reveal AzureOpenAIChatClient (or similar). Step 3 gives the exact kwargs.

agent-framework-core==1.0.0rc6 is installed. But the import chain still fails on BaseContextProvider. Two possibilities:

agent-framework-core 1.0.0rc6 itself never exported BaseContextProvider — it was a name used by agent-framework-azure-ai 1.0.0rc6 but never actually published in core. (Mismatch between sibling packages even at the SAME release tag.)
The agent_framework package being imported is shadowed by a stale install from elsewhere — Python might be loading from a different path than the rc6 install.

Output

1) The key test — does this import without ImportError now (at rc6)?

(.venva365_py312) PS C:\Users\ob\Documents\GIT\Agent365-Samples\python\agent-framework\sample-agent> python -c "import agent_framework_azure_ai as az; print('OK:', sorted(x for x in dir(az) if not x.startswith('_')))"
C:\Users\ob\Documents\GIT\Agent365-Samples\python\agent-framework\sample-agent.venva365_py312\Lib\site-packages\agent_framework_skills.py:121: ExperimentalWarning: [SKILLS] SkillResource is experimental and may change or be removed in future versions without notice.
C:\Users\ob\Documents\GIT\Agent365-Samples\python\agent-framework\sample-agent.venva365_py312\Lib\site-packages\agent_framework_harness_memory.py:651: ExperimentalWarning: [HARNESS] MemoryStore is experimental and may change or be removed in future versions without notice.
Traceback (most recent call last):
File "", line 1, in
File "C:\Users\ob\Documents\GIT\Agent365-Samples\python\agent-framework\sample-agent.venva365_py312\Lib\site-packages\agent_framework_azure_ai_init_.py", line 5, in
from .agent_provider import AzureAIAgentsProvider # pyright: ignore[reportDeprecated]
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\ob\Documents\GIT\Agent365-Samples\python\agent-framework\sample-agent.venva365_py312\Lib\site-packages\agent_framework_azure_ai_agent_provider.py", line 10, in
from agent_framework import (
ImportError: cannot import name 'BaseContextProvider' from 'agent_framework' (C:\Users\ob\Documents\GIT\Agent365-Samples\python\agent-framework\sample-agent.venva365_py312\Lib\site-packages\agent_framework_init
.py). Did you mean: 'ContextProvider'?
(.venva365_py312) PS C:\Users\ob\Documents\GIT\Agent365-Samples\python\agent-framework\sample-agent>
(.venva365_py312) PS C:\Users\ob\Documents\GIT\Agent365-Samples\python\agent-framework\sample-agent> # 2) Find the chat client / Azure OpenAI class specifically
(.venva365_py312) PS C:\Users\ob\Documents\GIT\Agent365-Samples\python\agent-framework\sample-agent> python -c "import agent_framework_azure_ai as az; print([x for x in dir(az) if 'hatClient' in x or 'zureOpenAI' in x or 'penAI' in x])"
C:\Users\ob\Documents\GIT\Agent365-Samples\python\agent-framework\sample-agent.venva365_py312\Lib\site-packages\agent_framework_skills.py:121: ExperimentalWarning: [SKILLS] SkillResource is experimental and may change or be removed in future versions without notice.
C:\Users\ob\Documents\GIT\Agent365-Samples\python\agent-framework\sample-agent.venva365_py312\Lib\site-packages\agent_framework_harness_memory.py:651: ExperimentalWarning: [HARNESS] MemoryStore is experimental and may change or be removed in future versions without notice.
Traceback (most recent call last):
File "", line 1, in
File "C:\Users\ob\Documents\GIT\Agent365-Samples\python\agent-framework\sample-agent.venva365_py312\Lib\site-packages\agent_framework_azure_ai_init_.py", line 5, in
from .agent_provider import AzureAIAgentsProvider # pyright: ignore[reportDeprecated]
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\ob\Documents\GIT\Agent365-Samples\python\agent-framework\sample-agent.venva365_py312\Lib\site-packages\agent_framework_azure_ai_agent_provider.py", line 10, in
from agent_framework import (
ImportError: cannot import name 'BaseContextProvider' from 'agent_framework' (C:\Users\ob\Documents\GIT\Agent365-Samples\python\agent-framework\sample-agent.venva365_py312\Lib\site-packages\agent_framework_init
.py). Did you mean: 'ContextProvider'?
(.venva365_py312) PS C:\Users\ob\Documents\GIT\Agent365-Samples\python\agent-framework\sample-agent>
(.venva365_py312) PS C:\Users\ob\Documents\GIT\Agent365-Samples\python\agent-framework\sample-agent> # 3) Get the constructor signature of whatever class exists
(.venva365_py312) PS C:\Users\ob\Documents\GIT\Agent365-Samples\python\agent-framework\sample-agent> @'

import agent_framework_azure_ai as az
import inspect
for n in ["AzureOpenAIChatClient","AzureOpenAIClient","AzureAIChatClient","AzureAIClient","AzureOpenAIChatCompletionClient"]:
if hasattr(az, n):
print(n + ":", inspect.signature(getattr(az, n).init))
'@ | Set-Content -Path ._check_aiclient.py -Encoding UTF8
(.venva365_py312) PS C:\Users\ob\Documents\GIT\Agent365-Samples\python\agent-framework\sample-agent> python ._check_aiclient.py
C:\Users\ob\Documents\GIT\Agent365-Samples\python\agent-framework\sample-agent.venva365_py312\Lib\site-packages\agent_framework_skills.py:121: ExperimentalWarning: [SKILLS] SkillResource is experimental and may change or be removed in future versions without notice.
C:\Users\ob\Documents\GIT\Agent365-Samples\python\agent-framework\sample-agent.venva365_py312\Lib\site-packages\agent_framework_harness_memory.py:651: ExperimentalWarning: [HARNESS] MemoryStore is experimental and may change or be removed in future versions without notice.
Traceback (most recent call last):
File "C:\Users\ob\Documents\GIT\Agent365-Samples\python\agent-framework\sample-agent_check_aiclient.py", line 1, in
import agent_framework_azure_ai as az
File "C:\Users\ob\Documents\GIT\Agent365-Samples\python\agent-framework\sample-agent.venva365_py312\Lib\site-packages\agent_framework_azure_ai_init_.py", line 5, in
from .agent_provider import AzureAIAgentsProvider # pyright: ignore[reportDeprecated]
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "C:\Users\ob\Documents\GIT\Agent365-Samples\python\agent-framework\sample-agent.venva365_py312\Lib\site-packages\agent_framework_azure_ai_agent_provider.py", line 10, in
from agent_framework import (
ImportError: cannot import name 'BaseContextProvider' from 'agent_framework' (C:\Users\ob\Documents\GIT\Agent365-Samples\python\agent-framework\sample-agent.venva365_py312\Lib\site-packages\agent_framework_init
.py). Did you mean: 'ContextProvider'?

Screenshots

No response

Code of Conduct

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start in python/agent-framework/sample-agent/agent.py at line 40 and reproduce the import failures with the commands in the issue. Compare the sample's dependency metadata with the published agent-framework packages and inspect the README. Done means the sample has tested compatible dependency pins, an accurate Python target, and clear guidance about any required pre-release build.

Written by the indexing model from the issue text.

Assessment

Tech stack
azure, python
Domain
build-system, developer-experience
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
38/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.