microsoft / microsoft/Agent365-python
[python/agent-framework/sample-agent] Sample dependencies are inconsistent on PyPI — cannot run
Personne n'a encore pris cette issue.
- Langage dominant
- Python
- Étoiles
- 41
- Forks
- 23
- Merge moyen
- 7 h 43 min
- PR mergées (30 j)
- 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
ChatAgent→Agent, 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:
- Pinned requirements.txt with exact tested versions
- Target Python version in the README
- 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
- I agree to follow the Microsoft Open Source Code of Conduct.
Guide de contribution
Ouvrir le guide de contribution
Par où commencer
- Lisez l'issue en entier, puis le guide de contribution du projet.
- Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
- Forkez le dépôt et travaillez sur une branche.
- Ouvrez une pull request qui référence le numéro de l'issue.
Piste de recherche
Commencez dans python/agent-framework/sample-agent/agent.py à la ligne 40 et reproduisez les échecs d’importation avec les commandes indiquées dans l’issue. Comparez les métadonnées de dépendances du sample avec les packages agent-framework publiés et examinez la README. Le travail est terminé lorsque le sample dispose de pins de dépendances compatibles et testés, d’une cible Python correcte et d’indications claires concernant tout build pre-release requis.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Évaluation
- Stack technique
- azure, python
- Domaine
- build-system, developer-experience
- Type d'issue
- Bug
- Difficulté
- 4/5
- Temps estimé
- 3-5 jours
- Activité
- Calme
- Clarté
- Plutôt claire
- Accessibilité débutants
- 38/100