
generative-ai-for-beginners 课程 LLM 服务商选择与 .env 配置实战指南【免费下载链接】generative-ai-for-beginners21 Lessons, Get Started Building with Generative AI项目地址: https://gitcode.com/GitHub_Trending/ge/generative-ai-for-beginners本篇基于 generative-ai-for-beginners 仓库的课程设置文档 03-providers.md匈牙利语译文见 translations/hu/00-course-setup/03-providers.md讲解如何为课程作业选择并配置 LLM 服务商从 OpenAI、Azure OpenAI、Microsoft Foundry Models 到 Hugging Face 及本地离线方案再到.env环境变量的创建、填写与校验。读完后你可以独立完成任意一家服务商的凭证配置理解仓库共享模块中环境变量校验的源码实现并能快速定位「缺少凭证导致作业报错」的问题。为什么需要多个 LLM 服务商课程的练习作业Assignments可以配置为通过受支持的服务商如 OpenAI、Azure 或 Hugging Face运行在一家或多家大语言模型LLM部署之上。这些服务商提供托管端点Hosted Endpoint即 API只要持有正确的认证凭证API Key 或 Token就可以以编程方式访问它们。本课程讨论的服务商包括OpenAI提供包括 GPT 核心系列在内的多样化模型Azure OpenAI以企业级可用性为侧重的 OpenAI 模型服务现已并入 Microsoft FoundryMicrosoft Foundry Models单一端点 单一 API Key 即可访问来自 OpenAI、Meta、Mistral、Cohere、Microsoft 等数百家/数百个模型替代即将于 2026 年 7 月底退役的 GitHub ModelsHugging Face面向开源模型与推理服务器Foundry Local / Ollama如果希望在自己的设备上完全离线运行模型无需任何云订阅。需要强调的是这些练习必须使用你自己的账户。作业是可选的你可以根据自己的兴趣选择配置一家、全部或一家都不配置。服务商对比与注册指引各家服务商在注册方式、费用、Key 获取与体验工具Playground上存在差异整理如下具体定价与入口以各服务商官方页面为准服务商费用API Key 获取体验工具Playground备注OpenAI按量计费见官方定价页基于项目Project-based的 Key免代码、网页版 Playground多种模型可用Azure按量计费有免费试用入口见 SDK 快速入门文档Azure AI Studio 快速入门需提前申请访问权限Must Apply AheadMicrosoft Foundry有免费额度项目概览页Project Overview pageFoundry Playground一个端点 一个 Key 覆盖多家模型供应商Hugging Face见官方定价页访问令牌Access TokensHugging ChatHugging Chat 可选模型有限Foundry Local免费本地运行不需要本地 CLI/SDK完全离线OpenAI 兼容端点通过文件名识别作业所需的服务商本仓库遵循「文件名即配置」的约定需要特定服务商的作业其文件名中会带有以下标签之一aoai—— 需要 Azure OpenAI 端点与 Keyoai—— 需要 OpenAI 端点与 Keyhf—— 需要 Hugging Face Tokengithubmodels—— 需要 Microsoft Foundry Models 端点与 KeyGitHub Models 将于 2026 年 7 月底退役。例如 06-text-generation-apps/python/ 目录下同时存在aoai-app.py与oai-app.py对应同一练习的 Azure OpenAI 版与 OpenAI 版实现。你可以配置一家、零家或全部服务商相关作业在缺少凭证时会直接报错而不会阻塞其他作业的运行——这一点由仓库共享工具模块的错误处理机制保证下文详述。创建.env文件假设你已经阅读了上述指引、在相应服务商完成注册并获取了所需的认证凭证API_KEY 或 token。就 Azure OpenAI 而言还假设你已拥有有效的 Azure OpenAI Service 部署Endpoint且至少部署了一个用于聊天补全的 GPT 模型。接下来配置本地环境变量查看根目录下的 .env.copy 模板文件其当前内容如下# OpenAI Provider OPENAI_API_KEYadd your OpenAI API key here ## Azure OpenAI in Microsoft Foundry ## (Azure OpenAI Service is now part of Microsoft Foundry: https://ai.azure.com?WT.mc_idacademic-105485-koreyst. ## Create/manage your resource and deployments from the Foundry portal - the env var names below are unchanged.) AZURE_OPENAI_API_VERSION2024-10-21 # Default is set! (current stable GA API version) AZURE_OPENAI_API_KEYadd your Foundry resource key here AZURE_OPENAI_ENDPOINTadd your Foundry resource endpoint here, e.g. https://resource-name.openai.azure.com AZURE_OPENAI_DEPLOYMENTadd your chat completion model deployment name here, e.g. gpt-4o-mini AZURE_OPENAI_EMBEDDINGS_DEPLOYMENTadd your embeddings model deployment name here, e.g. text-embedding-3-small ## Microsoft Foundry Models ## (Multi-provider model catalog - one endpoint/key for OpenAI, Meta, Mistral, Cohere, Microsoft, and more. ## Replaces GitHub Models, which retires end of July 2026. Get these from your Foundry projects Overview page.) AZURE_INFERENCE_ENDPOINTadd your Microsoft Foundry project endpoint here, e.g. https://resource-name.services.ai.azure.com/models AZURE_INFERENCE_CREDENTIALadd your Microsoft Foundry Models API key here ## Hugging Face HUGGING_FACE_API_KEYadd your HuggingFace API or token here使用下面的命令将其复制为.env。该文件已被.gitignore忽略见 .gitignore因此密钥不会进入版本库保持安全cp .env.copy .env按下文说明填写各项值替换右侧的占位符。可选如果你使用 GitHub Codespaces可以把环境变量保存为该仓库关联的Codespaces secrets这样就无需再维护本地.env文件。注意此选项仅在 GitHub Codespaces 中有效若改用 Docker Desktop 本地运行仍需配置.env文件。Codespaces 的密钥配置流程可参考 00-course-setup/01-setup-cloud.md 第 3 节「Add your API key (the safe way)」。.env各变量详解变量说明OPENAI_API_KEY用于非 Azure OpenAI 端点的 OpenAI 服务授权 KeyAZURE_OPENAI_API_VERSIONAzure OpenAI REST API 版本模板已默认设置为2024-10-21当前稳定 GA 版本AZURE_OPENAI_API_KEY使用 Azure OpenAIFoundry 资源服务的授权 KeyAZURE_OPENAI_ENDPOINTAzure OpenAI 资源已部署的端点如https://resource-name.openai.azure.comAZURE_OPENAI_DEPLOYMENT文本生成Text Generation模型的部署端点名课程推荐gpt-4o-miniAZURE_OPENAI_EMBEDDINGS_DEPLOYMENT文本向量化Embeddings模型的部署端点名课程推荐text-embedding-3-smallAZURE_INFERENCE_ENDPOINTMicrosoft Foundry 项目的端点用于 Microsoft Foundry ModelsAZURE_INFERENCE_CREDENTIALMicrosoft Foundry 项目的 API KeyHUGGING_FACE_API_KEY在个人资料中配置的用户访问令牌Access Token说明AZURE_OPENAI_DEPLOYMENT与AZURE_OPENAI_EMBEDDINGS_DEPLOYMENT分别对应聊天补全文本生成与向量检索Embeddings的默认模型具体如何设置会在相关作业中给出指引。仓库源码纵深环境变量的读取与校验机制文档强调「缺少凭证的作业会报错」这一行为在仓库源码中有明确实现。共享模块 shared/python/env_utils.py 提供了三个函数get_required_env(var_name, description)L11-L35读取单个必需环境变量若未设置或为空字符串抛出带清晰提示的ValueError提示文案形如Missing required environment variable: XXX. Please set it in your .env file or environment.validate_env_vars(*var_names)L38-L71批量校验多个变量一次性列出所有缺失的变量名而非只报第一个便于一次性补齐.envget_env_with_default(var_name, default)L74-L88读取带默认值的环境变量变量未设置时返回默认值。这些行为的正确性由 tests/test_env_utils.py 中的单元测试覆盖例如test_get_required_env_empty_raises验证了「变量为空同样视为缺失」test_validate_env_vars_reports_all_missing验证了「多个变量缺失时全部都会出现在报错信息中」。客户端构建层则位于 shared/python/api_utils.pycreate_openai_client()L56-L88优先使用传入的api_key否则回退读取OPENAI_API_KEY环境变量二者皆无则抛出ValueErrorcreate_azure_openai_client()L91-L144读取AZURE_OPENAI_ENDPOINT与AZURE_OPENAI_API_KEY并构造base_url f{endpoint.rstrip(/)}/openai/v1/。从源码结构看该辅助函数走的是 OpenAI SDK 风格的v1 端点支撑 Responses API 的写法因此在该路径下不需要额外传api_version参数而模板中的AZURE_OPENAI_API_VERSION2024-10-21则服务于直接调用 Azure OpenAI REST APIv1 之外路径的作业场景两者分工不同、互不冲突。依赖方面requirements.txt 中固定了python-dotenv1.2.2负责从.env文件加载变量到进程环境、openai1.12.0与azure-ai-inference后者支撑 Microsoft Foundry Models 的推理调用安装后即可保证上述模块可运行。配置 Azure OpenAI从 Azure 门户Azure OpenAI 的端点与 Key 值可在 Azure 门户中找到登录 Azure 门户在左侧边栏菜单点击Keys and Endpoint密钥与端点点击Show Keys显示密钥——此时应能看到 KEY 1、KEY 2 与 Endpoint将KEY 1的值用作AZURE_OPENAI_API_KEY将Endpoint的值用作AZURE_OPENAI_ENDPOINT。接下来需要获取已部署模型对应的端点在 Azure OpenAI 资源的左侧边栏点击Model deployments模型部署在目标页面点击Go to Microsoft Foundry portal或Manage Deployments取决于你的资源类型。注Azure OpenAI Service 现已并入 Microsoft Foundry。资源与部署在 Azure 门户中仍然可见但日常的模型管理部署、Playground、监控已转移到 Foundry 门户而非旧版独立的「Azure OpenAI Studio」。配置 Azure OpenAI从 Microsoft Foundry 门户按上述方式从你的资源进入 Microsoft Foundry 门户点击左侧边栏的Deployments部署选项卡查看当前已部署的模型如果目标模型尚未部署使用Deploy model部署模型从模型目录中选择并部署你需要一个文本生成模型——课程推荐gpt-4o-mini你需要一个文本向量化模型——课程推荐text-embedding-3-small。然后把环境变量更新为实际使用的部署名Deployment name。除非你显式改过部署名通常与模型名一致。例如AZURE_OPENAI_DEPLOYMENTgpt-4o-mini AZURE_OPENAI_EMBEDDINGS_DEPLOYMENTtext-embedding-3-small完成后别忘了保存.env文件。之后即可退出文件返回运行笔记本notebook的指引继续学习。配置 OpenAI从个人资料页你的 OpenAI API Key 位于 OpenAI 账户的 API Keys 页面。如果没有账户可以先注册并创建一个 API Key。拿到 Key 后将其填入.env文件的OPENAI_API_KEY变量即可。配置 Hugging Face从个人资料页你的 Hugging Face Token 位于个人资料页的Access Tokens访问令牌部分。切勿公开张贴或分享这些 Token。正确做法是为本课程项目单独创建一个新 Token然后将其复制到.env文件的HUGGING_FACE_API_KEY变量中。注这严格来说不是一个 API Key但因为它用于身份认证出于命名一致性仍沿用该命名习惯。配置 Microsoft Foundry Models从门户注GitHub Models 将于 2026 年 7 月底退役。Microsoft Foundry Models 是直接的替代品提供相同风格的「免费试用模型目录」以及 Azure AI Inference SDK / OpenAI SDK 使用体验。文件名中带githubmodels标签的作业迁移到该服务商后凭证填入下面两个变量即可。打开 Microsoft Foundry 门户并创建或打开一个 Foundry 项目浏览模型目录并部署一个模型例如gpt-4o-mini在项目概览Overview页复制endpoint与API key将端点值填入.env的AZURE_INFERENCE_ENDPOINT将 Key 值填入AZURE_INFERENCE_CREDENTIAL。离线 / 本地服务商不依赖云订阅的方案如果你不想使用任何云订阅也可以在自己的设备上直接运行兼容的开源模型Foundry Local—— 微软的端侧运行时。它会自动选择最佳执行后端NPU、GPU 或 CPU并暴露一个 OpenAI 兼容端点因此课程中的大部分示例代码只需极少改动即可复用。可参考其官方文档上手或通过winget install Microsoft.FoundryLocalWindows/brew install microsoft/foundrylocal/foundrylocalmacOS安装Ollama—— 运行 Llama、Phi、Mistral、Gemma 等开源模型的流行本地方案。两种方案的动手示例参见课程第 19 课 19-slm/README.mdBuilding with SLMs。常见问题的排查思路作业报「Missing required environment variable」错误这正是get_required_env/validate_env_vars的预期行为说明.env中对应变量未填写或为空。按报错中列出的变量名逐一补齐即可注意「空字符串也算缺失」。不确定当前作业该配哪个服务商看文件名前缀标签aoai/oai/hf/githubmodels未配置对应服务商的作业报错不会影响其他作业。在 Docker Desktop 中运行却读不到 Codespaces 密钥Codespaces secrets 仅对 GitHub Codespaces 生效本地容器环境必须走.env文件。Azure 端点请求 404 / 模型不存在优先核对AZURE_OPENAI_ENDPOINT是否完整以https://开头、AZURE_OPENAI_DEPLOYMENT是否与你实际部署名一致部署管理入口在 Foundry 门户的 Deployments 选项卡。完成以上配置后你就可以按需运行课程中任意一家服务商对应的练习仓库提供的shared/python工具模块与配套测试会确保凭证缺失时给出明确、可操作的错误信息而不是难以定位的堆栈。【免费下载链接】generative-ai-for-beginners21 Lessons, Get Started Building with Generative AI项目地址: https://gitcode.com/GitHub_Trending/ge/generative-ai-for-beginners创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考