Repository navigation
Python: fix(foundry-local): migrate to the Foundry Local SDK 2.x API #9703
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Changes from all commits
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -3,7 +3,8 @@ name = "agent-framework-foundry-local" | |
| description = "Foundry Local integration for Microsoft Agent Framework." | ||
| authors = [{ name = "Microsoft", email = "af-support@microsoft.com"}] | ||
| readme = "README.md" | ||
| requires-python = ">=3.10" | ||
| # The Foundry Local SDK 2.x ships for Python 3.11-3.14 only. | ||
| requires-python = ">=3.11" | ||
| version = "1.0.0b261015" | ||
| license-files = ["LICENSE"] | ||
| urls.homepage = "https://aka.ms/agent-framework" | ||
|
|
@@ -15,18 +16,16 @@ classifiers = [ | |
| "Development Status :: 4 - Beta", | ||
| "Intended Audience :: Developers", | ||
| "Programming Language :: Python :: 3", | ||
| "Programming Language :: Python :: 3.10", | ||
| "Programming Language :: Python :: 3.11", | ||
| "Programming Language :: Python :: 3.12", | ||
| "Programming Language :: Python :: 3.13", | ||
| "Programming Language :: Python :: 3.14", | ||
| "Programming Language :: Python :: 3.15", | ||
| "Typing :: Typed", | ||
| ] | ||
| dependencies = [ | ||
| "agent-framework-core>=1.13.0,<2", | ||
| "agent-framework-openai>=1.6.0,<2", | ||
| "foundry-local-sdk>=0.5.1,<0.5.2", | ||
| "foundry-local-sdk>=2.0.0,<3", | ||
|
Author
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Fixed and aligned in all four places. One correction on the lockfile: |
||
| ] | ||
|
|
||
| [tool.uv] | ||
|
|
@@ -67,7 +66,7 @@ exclude = ['tests'] | |
| [tool.mypy] | ||
| plugins = ['pydantic.mypy'] | ||
| strict = true | ||
| python_version = "3.10" | ||
| python_version = "3.11" | ||
| ignore_missing_imports = true | ||
| disallow_untyped_defs = true | ||
| no_implicit_optional = true | ||
|
|
||
Uh oh!
There was an error while loading. Please reload this page.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Fixed.
bootstrapnow callsdownload_and_register_eps()before the catalog is read, so accelerated variants are registered and therefore discoverable instead of reporting "not found" or silently falling back to CPU.I scoped it to skip when
deviceis explicitlyDeviceType.CPU, so those callers do not download providers they will not use. Two tests cover it: one asserts the call happens for a GPU variant, one asserts it does not happen for CPU while the CPU variant is still selected.