
GitHub Models 即将退役如何把 generative-ai-for-beginners 的练习迁移到 Microsoft Foundry Models【免费下载链接】generative-ai-for-beginners21 Lessons, Get Started Building with Generative AI项目地址: https://gitcode.com/GitHub_Trending/ge/generative-ai-for-beginnersgenerative-ai-for-beginners课程里带githubmodels标签的练习Python 脚本与 Jupyter Notebook原来依赖 GitHub Models 的端点和GITHUB_TOKEN。根据 00-course-setup/03-providers.md 的说明GitHub Models 将于 2026 年 7 月底退役其直接替代品是 Microsoft Foundry Models——同一个免费模型目录配合 Azure AI Inference SDK / OpenAI SDK 的用法不变。本文的任务就一条把练习的凭据配置从 GitHub Models 换成 Microsoft Foundry Models 的端点和 API key并验证替换后的脚本可以正常运行。适用对象是已经在本地或 Codespaces 跑过本课程的开发者如果你希望完全离线运行文档另行指向 Foundry Local / Ollama 路线不属于本次迁移范围。退役时间线与需要变更的内容先明确迁移边界以下事实均来自课程文档GitHub Models及其GITHUB_TOKEN变量于 2026 年 7 月底退役见 00-course-setup/02-setup-local.md 与 00-course-setup/README.md 中的 Note。Microsoft Foundry Models 提供与 GitHub Models 相同的免费试用模型目录和 Azure AI Inference SDK / OpenAI SDK 体验用「一个 endpoint 一个 API key」访问 OpenAI、Meta、Mistral、Cohere、Microsoft 等数百个模型。练习文件的命名标签不变带githubmodels标签的文件现在要求的是Microsoft Foundry Models 的 endpoint 和 key见 00-course-setup/03-providers.md 中 provider 标签说明。也就是说你不需要重命名或改写练习文件只需要换掉环境变量。未配置凭据时的行为有明确说明相关练习会直接因缺少凭据而报错不会静默跳过。第一步在 Foundry portal 获取 endpoint 和 API key按 00-course-setup/03-providers.md 中「Configure Microsoft Foundry Models: From Portal」一节的官方步骤操作进入 Microsoft Foundry 门户ai.azure.com创建或打开一个 Foundry project。浏览 model catalog部署一个模型例如gpt-4o-mini。在项目Overview页面复制endpoint和API key。在.env文件中把 endpoint 值填给AZURE_INFERENCE_ENDPOINT把 key 值填给AZURE_INFERENCE_CREDENTIAL。文档同时注明 Microsoft Foundry 提供 Free tier即「一个 endpoint key 可访问多个模型供应商」。第二步更新 .env 文件仓库根目录提供.env.copy模板其中已包含 Microsoft Foundry Models 的注释块引自 00-course-setup/03-providers.md## Microsoft Foundry Models (multi-provider model catalog, replaces GitHub Models, which retires end of July 2026) AZURE_INFERENCE_ENDPOINTadd your Microsoft Foundry project endpoint here AZURE_INFERENCE_CREDENTIALadd your Microsoft Foundry Models API key here两种落地方式任选其一方式一推荐基于模板文件。在仓库根目录执行cp .env.copy .env然后把右侧占位符替换为你上一步复制到的 endpoint 和 API key。该文件已被 gitignore不会把密钥提交进仓库。方式二从零创建。在 00-course-setup/02-setup-local.md 中给出的流程是在 Unix 系系统用touch .envWindows 用echo . .env创建空文件然后写入两行配置your_foundry_endpoint_here/your_foundry_api_key_here替换为你自己的值AZURE_INFERENCE_ENDPOINTyour_foundry_endpoint_here AZURE_INFERENCE_CREDENTIALyour_foundry_api_key_here注意区分变量用途避免和另外两组 Azure/OpenAI 变量混淆引自 00-course-setup/03-providers.md 的变量表变量用途AZURE_INFERENCE_ENDPOINTMicrosoft Foundry project 的 endpoint用于 Microsoft Foundry Models原 GitHub Models 练习AZURE_INFERENCE_CREDENTIALMicrosoft Foundry project 的 API keyAZURE_OPENAI_ENDPOINT/AZURE_OPENAI_API_KEY/AZURE_OPENAI_DEPLOYMENT带aoai标签的练习专用指向 Azure OpenAI 资源与本次迁移无关OPENAI_API_KEY带oai标签的练习专用如果你使用的是 GitHub Codespaces还可以把变量存为 Codespaces secrets从而不需要本地.env文件该选项仅在 Codespaces 环境生效Docker Desktop 用户仍需建立本地.env引自 00-course-setup/03-providers.md。第三步运行一个 githubmodels 标签的练习做验证本仓库中githubmodels练习已经改为从AZURE_INFERENCE_*两个变量取凭据。以 06-text-generation-apps/python/githubmodels-app.py 为例其开头就是迁移后的标准写法import os from azure.ai.inference import ChatCompletionsClient from azure.core.credentials import AzureKeyCredential # Get these from your Microsoft Foundry projects Overview page token os.environ[AZURE_INFERENCE_CREDENTIAL] endpoint os.environ[AZURE_INFERENCE_ENDPOINT] client ChatCompletionsClient( endpointendpoint, credentialAzureKeyCredential(token), )可以看到脚本里没有硬编码任何密钥也不再有GITHUB_TOKEN。运行这类练习前的准备步骤引自 00-course-setup/02-setup-local.md确认 Python 3.10创建虚拟环境后执行pip install -r requirements.txt若单独装 dotenvpip install python-dotenv在脚本中通过load_dotenv()加载.env。验证方式一确认环境变量能被读取。文档给出的最小验证脚本成功条件是终端打印出你的 Foundry endpoint而不是Nonefrom dotenv import load_dotenv import os load_dotenv() endpoint os.getenv(AZURE_INFERENCE_ENDPOINT) token os.getenv(AZURE_INFERENCE_CREDENTIAL) print(endpoint)验证方式二跑通一个完整练习。运行 06-text-generation-apps/python/githubmodels-app.py模型为gpt-4o-mini脚本会向 Foundry Models 发起一次 chat completion 请求能打印出模型回复内容即说明迁移生效。反向判断如果.env中缺少这两个变量脚本在读取环境变量处就会抛错这正是文档所说「相关练习会因缺少凭据而报错」的预期现象。常见问题与限制ModuleNotFoundError: dotenv说明依赖没装进当前环境文档给出的修复是执行pip install -r requirements.txt见 00-course-setup/02-setup-local.md 的 Troubleshooting 表。密钥安全文档明确要求不要在任何代码里直接写 API key、不要把.env提交到仓库.env已在.gitignore中。Codespaces 场景下优先用 Codespace secrets。其他标签的练习不受影响aoai、oai、hf标签的练习继续使用各自原有的变量AZURE_OPENAI_*、OPENAI_API_KEY、HUGGING_FACE_API_KEY本次迁移只替换AZURE_INFERENCE_*这一组。时间边界退役时间为 2026 年 7 月底在此之前旧配置仍可能可用文档没有提供对存量 GitHub Models 配置做自动转换的脚本迁移方式就是本文所示的手动替换环境变量。下一步完成迁移并验证通过后可以继续按课程目录完成带githubmodels标签的各课练习如 06、07、11、20、21 等课程的js-githubmodels/、python/目录下的作业文件它们现在都走同一组AZURE_INFERENCE_*变量。若你希望完全不依赖云服务00-course-setup/03-providers.md 指向 Lesson 19SLM的 Foundry Local / Ollama 离线示例作为替代路线。【免费下载链接】generative-ai-for-beginners21 Lessons, Get Started Building with Generative AI项目地址: https://gitcode.com/GitHub_Trending/ge/generative-ai-for-beginners创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考