极客说|利用 Azure AI Agent Service 创建自定义 VS Code Chat participant

作者:卢建晖 - 微软高级云技术布道师

「极客说」 是一档专注 AI 时代开发者分享的专栏,我们邀请来自微软以及技术社区专家,带来最前沿的技术干货与实践经验。在这里,您将看到深度教程、最佳实践和创新解决方案。关注「极客说」,与行业顶尖专家一起探索科技的无限可能!

利用 GitHub Copilot 可以让 AI 提升开发者的编程效率, 通过不同的 Chat Participant 更可以让开发者完成不同场景的 AI 赋能,如 @workspace 不仅可以创建简单项目和 Notebook,更可以帮你维护项目代码,以及生成测试环境等。你可以通过在 GitHub Copilot Chat 中输入 /help 以了解系统自带的 Chat Participant。当然你也可以自定义属于自己工作流上的各种 Chat Participant。现在自定义 Chat Participant,可以基于 Visual Studio Code Chat Extension 进行创建,也可以直接创建 Copilot Extensions 用以支持更多的 IDE 应用。

上篇文章中,大家可以看到如何通过 Semantic Kernel 去编排 Multi-Agents。结合 LLM 的能力,我们可以使用 Multi-Agents 完成更复杂的工作,例如在软件工程中的支撑。过去,我们借助简单的框架使用 IDE 创建项目,再一步步根据需求进行不同的代码编写。有了生成式 AI 的加持后,我们或许可以结合 LLM,根据需求快速完成代码生成工作,不仅能搭建框架,还能够完成逻辑代码的生成。

利用 Azure AI Agent Service 提供的各种 DevOps 环境中的 Agent,可以应对不同的工作流来完成 Multi-Agents 编排。如创建项目,我们需要两个 Agent 配合我们的工作,一个读取需求并生成代码的 Agent,一个保存代码的 Agent。结合 Semantic Kernel 的能力,我们可以快速地完成项目创建工作。接下来让我们围绕 Python Flask 项目创建的场景来构建一个自定义的 Visual Studio Code Chat participant。

模型的选择


为了按特定步骤解读需求并生成代码,我们需要一个具备强大推理能力的模型。o1-mini 是非常棒的选择,当然我们也推荐你尝试 Phi-4 。至于代码保存功能,我们可用 gpt-4o-mini 来实现。

Multi-Agent 编排


使用 Azure AI Inference SDK 调用 GitHub Models 的 o1-mini 来创建代码生成 Agent,利用 Azure AI Foundry SDK 创建基于 Azure AI Agent Service 的代码保存 Agent。使用 Semantic Kernel 进行 Muliti-Agent 编排,按下图所示与 Plugin 进行绑定,并在 GroupChat 中设置 Agent 交互模式。

整体架构


.NET Aspire 是非常好的分布式应用框架,我们使用 .NET Aspire 来管理我们的 Agent 服务。通过集成 .NET + Semantic Kernel,我们可以非常便捷地创建 Chat Participant 自定义接口服务。可以看到,Chat Participant 可用于应对不同的开发场景,不同的 AI Agents 也可以很好地完成相关定义。必须要说的是,在 LLM / SLM 时代,我们需要更灵活地适配工作流,Semantic Kernel / AutoGen 都具备 AI Agent 的编排能力。

至于 Visual Studio Code Chat Extension,我们定义两个指令 /help 以及 **/proj,**来分别定义自我介绍以及项目创建的工作。

  • /help 使用 GitHub Copilot 自带的 gpt-4o 来完成简单的介绍工作。无需绑定任何第三方 Agent。

  • /proj 用于构建项目,你需要编写需求,然后通过 fetch 调用由封装好的 Semantic Kernel 编排的多 Agent 接口。

查看完整代码https://github.com/kinfey/MultiAIAgent/tree/main/ghext

相关资源


了解 Azure AI Agent Servicehttps://learn.microsoft.com/en-us/azure/ai-services/agents/

学习 Microsoft AutoGenhttps://microsoft.github.io/autogen/dev/

学习 Microsoft Semantic Kernelhttps://github.com/microsoft/semantic-kernel

学习 Visual Studio Code Chat extensionshttps://code.visualstudio.com/api/extension-guides/chat

免费开启 Visual Studio Code GitHub Copilothttps://aka.ms/CopilotFree_R

资料推荐


智能 GitHub Copilot 副驾驶® 提示和技巧https://info.microsoft.com/GC-DevOps-CNTNT-FY25-08Aug-23-Smart-GitHub-Copilot-Tips-and-Tricks-SRGCM12801_LP01-Registration---Form-in-Body.html

Azure OpenAI 生成式人工智能白皮书https://info.microsoft.com/GC-AzureAI-CNTNT-FY25-08Aug-21-Azure-OpenAI-Generative-Artificial-Intelligence-White-Paper-SRGCM12789_LP01-Registration---Form-in-Body.html

利用 AI 和 DevOps 重新定义开发人员体验https://info.microsoft.com/ww-landing-redefining-the-developer-experience.html?lcid=ZH-CN

SAP on Microsoft Cloudhttps://info.microsoft.com/GC-SAP-CNTNT-FY25-08Aug-27-SAP-on-Microsoft-Cloud-SRGCM12804_LP01-Registration---Form-in-Body.html

相关推荐
RK_Dangerous6 分钟前
【机器学习】强化学习(3)——深度强化学习的数学知识
人工智能·机器学习
处女座_三月8 分钟前
大模型架构记录3-提示工程
人工智能
nice-wyh14 分钟前
目标检测Anchor-based 与 Anchor-free
人工智能·目标检测·计算机视觉
非优秀程序员34 分钟前
manus的底裤被扒,或为开源软件【browser_use】的套壳产品,目前为MVP阶段并引入了一些深度定制
人工智能·架构·开源
Francek Chen35 分钟前
【现代深度学习技术】卷积神经网络05:汇聚层
人工智能·pytorch·深度学习·神经网络·cnn
訾博ZiBo38 分钟前
Ollama 常用命令
人工智能·ollama
轻松Ai享生活39 分钟前
经过1周的折腾,终于建了一个像抖音一样的推荐系统
人工智能
IT从业者张某某40 分钟前
大语言模型-01-语言模型发展历程-02-从神经网络到ELMo
人工智能·神经网络·语言模型·datawhale
猎人everest1 小时前
机器学习之正则化
人工智能·算法·机器学习