Microsoft / github-copilot

4 개의 포스트

microsoft

How we built the Microsoft Learn MCP Server (새 탭에서 열림)

Microsoft Learn MCP(Model Context Protocol) 서버는 AI 에이전트가 신뢰할 수 있는 최신 기술 문서를 실시간으로 활용할 수 있도록 설계된 원격 서버입니다. 기존의 복잡한 API 통합 방식 대신 표준화된 프로토콜을 채택하여 에이전트가 런타임에 도구를 스스로 발견하고 실행하게 함으로써, 개발자가 브라우저 이동 없이 개발 환경 내에서 정확한 기술 가이드를 받을 수 있도록 지원합니다. ### MCP 도입 배경과 서버 방식의 이점 * **에이전트 네이티브 표준:** MCP는 에이전트가 기능을 실시간으로 협상하고 결과를 스트리밍하는 표준을 제공하여, 수동 검색이나 별도의 임베딩 관리 없이도 최신 데이터를 활용할 수 있게 합니다. * **통합의 단순화:** 클라이언트가 개별 API의 인증, 요청 형식, 에러 처리를 직접 구현할 필요 없이 MCP 호환 에이전트라면 서버 연결만으로 도구 스키마를 자동 인식하고 사용할 수 있습니다. * **지식 서비스의 재사용:** "Ask Learn" 서비스와 동일한 벡터 저장소 및 지식 서비스를 백엔드로 사용하여, RAG(검색 증강 생성) 기반의 높은 정확도와 최신성을 보장합니다. ### 핵심 도구 및 아키텍처 * **제공 도구:** 문서 제목과 URL을 찾는 `microsoft_docs_search`, 전체 문서 내용을 가져오는 `microsoft_docs_fetch`, 언어별 코드 예제 검색에 최적화된 `microsoft_code_sample_search`를 제공합니다. * **시스템 구조:** Azure App Service에 호스트된 C# SDK 기반의 원격 서버로 운영되며, Streamable HTTP Transport를 통해 클라이언트와 통신합니다. * **에이전트 워크플로우 최적화:** LLM 에이전트가 익숙한 '검색 후 읽기' 패턴을 따를 수 있도록 내부 API의 복잡한 파라미터를 직관적인 도구 운영 방식으로 압축하여 제공합니다. ### 운영 및 설계상의 주요 교훈 * **도구 설명이 곧 사용자 경험:** AI 모델에게 도구와 파라미터 설명은 매뉴얼과 같습니다. 단어 선택의 미세한 차이가 도구 활성화율에 직접적인 영향을 미치므로 데이터 기반의 지속적인 최적화가 필요합니다. * **도구 조합의 시너지:** 검색 도구로 최적의 일치 항목을 찾은 후 전체 문서를 읽어 답변의 근거를 강화하는 '도구 조합' 방식을 명시적으로 가이드하여 인용 품질을 개선했습니다. * **분산 시스템으로서의 운영:** 공용 MCP 서버는 다중 지역 배포, 동적 확장, CORS 관리 등 일반적인 상태 비저장(Stateless) 서비스와 동일한 운영상의 복잡성을 가집니다. * **방어적 스키마 진화:** 동적 발견 구조임에도 불구하고 파라미터를 하드코딩하는 클라이언트를 위해, 명칭 변경 시 기존 이름을 병행 지원하는 유예 기간을 두는 등 안정적인 서비스 진화 전략이 중요합니다. ### 실용적인 활용 및 기대 효과 개발자는 이제 브라우저를 열고 검색 결과를 훑어보는 번거로운 과정 대신, 선호하는 AI 에이전트에 Learn MCP 서버를 연결하여 Microsoft 기술 문서를 코드 맥락에 즉시 적용할 수 있습니다. 이는 개발 워크플로우 내에서 정확한 공식 문서를 기반으로 한 자동화된 코딩 지원과 문제 해결을 가능하게 합니다.

microsoft

The Interaction Changes Everything: Treating AI Agents as Collaborators, Not Automation (새 탭에서 열림)

마이크로소프트는 단순한 도구로서의 AI를 넘어, 개발 생명 주기 전반에서 함께 기획하고 분석하며 실행하는 ‘지능형 협업자’로서의 에이전트 활용 모델을 제시했습니다. 특히 수백 개의 리포지토리에 걸친 Entra SDK v1에서 v2로의 복잡한 마이그레이션 프로젝트에서, 에이전트를 팀원의 정체성을 가진 파트너로 대우함으로써 4~6주가 소요되던 작업을 2시간 이내로 단축하고 80~90%의 높은 정확도를 달성했습니다. 기술적 자동화의 한계를 극복하기 위해서는 AI에게 단순한 지시 사항을 나열하기보다 판단력을 발휘할 수 있는 역할과 맥락을 부여하는 프레임워크가 핵심입니다. ### 단순 자동화 사고방식의 한계 복잡한 기술적 마이그레이션은 단순히 기계적인 단계의 반복이 아니며, 맥락에 따른 판단과 보안 경계에 대한 세심한 평가가 필수적입니다. * 기존의 체크리스트나 스크립트 방식의 자동화는 모호한 상황이나 문서화되지 않은 커스텀 로직에 직면했을 때 반복적으로 실패했습니다. * 복잡한 작업에는 상황에 따른 판단(Judgment)이 필요하며, 이는 단순한 자동화 대상이 아니라 지능적인 협업을 통해 해결해야 할 영역입니다. * AI에게 단순히 "이 단계를 따르라"고 명령하는 방식은 에이전트가 예외 상황에서 잘못된 추측을 하거나 조용히 실패하게 만드는 원인이 됩니다. ### 지시를 넘어선 정체성 부여의 힘 성공적인 협업의 전환점은 AI 에이전트에게 단순한 작업 목록이 아닌, 구체적인 팀 내 역할과 미션을 부여했을 때 나타났습니다. * 에이전트를 '스크립트 실행자'가 아닌 '공동 창작 엔지니어(Co-creative engineer)'로 정의함으로써 문제 해결 능력이 극대화되었습니다. * 정체성이 부여된 에이전트는 단순한 패턴 매칭을 넘어 보안 경계를 인식하고, 불확실한 상황에서는 임의로 처리하는 대신 사람에게 질문을 던지기 시작했습니다. * 이러한 접근법은 에이전트가 작업의 중요성을 이해하고 우선순위가 충돌할 때 적절한 판단을 내릴 수 있는 심리적·맥락적 토대가 되었습니다. ### 공동 창작 파트너십 프레임워크의 8가지 요소 마이크로소프트가 실제 프로젝트에 적용한 프레임워크는 AI 에이전트가 인간과 같은 수준의 판단력을 발휘하도록 설계되었습니다. * **정체성과 미션(Identity & Mission):** 에이전트가 누구인지, 왜 이 일이 중요한지 설명하여 목표가 충돌할 때 우선순위를 정할 수 있게 합니다. * **목적과 의도(Purpose & Intent):** 속도보다 보안, 완료보다 정확성 같은 핵심 가치를 명시하여 판단의 기준을 제공합니다. * **우선순위가 지정된 목표(Key Goals):** 1차 목표부터 품질 목표까지 순위를 매겨 에이전트가 트레이드오프 상황에서 최선의 결정을 내리게 돕습니다. * **판단 지침이 포함된 단계별 가이드:** 단순한 행동 지침뿐만 아니라, 무엇을 보존해야 하는지 그리고 어떤 경우에 인간에게 에스컬레이션(보고)해야 하는지를 구체적으로 명시합니다. 복잡한 기술 부채 해결이나 대규모 아키텍처 변경을 고민하고 있다면, AI를 단순한 자동화 봇으로 활용하는 단계에서 벗어나야 합니다. 800줄의 상세 로직보다 더 중요한 것은 에이전트에게 팀의 일원으로서의 책임과 권한을 부여하는 프레임워크입니다. AI가 판단력을 발휘할 수 있도록 명확한 역할과 가치 기준을 제공할 때, 비로소 인간 개발자는 단순 코더가 아닌 '에이전트 오케스트레이터'로 거듭날 수 있습니다.

microsoft

Enhancing Code Quality at Scale with AI-Powered Code Reviews (새 탭에서 열림)

마이크로소프트는 사내 풀 리퀘스트(PR)의 90% 이상에 AI 코드 리뷰 어시스턴트를 도입하여 매월 60만 건 이상의 리뷰를 처리함으로써 개발 생산성과 코드 품질을 획기적으로 높였습니다. 이 시스템은 단순 반복적인 리뷰 작업을 자동화하여 엔지니어가 아키텍처나 보안 등 고차원적인 문제에 집중할 수 있게 돕고, PR 완료 시간을 최대 20% 단축하는 성과를 거두었습니다. 마이크로소프트 내부에서 검증된 이 혁신 모델은 현재 깃허브 코파일럿(GitHub Copilot)의 PR 리뷰 기능으로 확장되어 전 세계 개발 생태계에 기여하고 있습니다. ### 기존 PR 리뷰의 페인 포인트 해결 * **저부가가치 피드백의 과중:** 리뷰어가 구문 오류나 명명 규칙 같은 단순 작업에 시간을 쏟느라 정작 중요한 설계상의 결함이나 보안 취약점을 놓치는 문제를 해결하고자 했습니다. * **리뷰 지연 및 컨텍스트 부족:** PR 규모가 크면 맥락 파악이 어려워 리뷰가 며칠씩 지연되기도 하는데, AI가 즉각적인 피드백을 제공하여 병목 현상을 제거했습니다. * **휴먼 에러 방지:** 수천 명의 개발자가 참여하는 대규모 환경에서 발생할 수 있는 일관성 없는 리뷰 품질을 AI를 통해 일정 수준 이상으로 상향 평준화했습니다. ### AI 리뷰어의 핵심 기능과 작동 방식 * **자동화된 체크 및 코멘트:** 스타일 불일치부터 널 참조(Null Reference), 비효율적인 알고리즘 등 논리적 오류를 식별하며, 예외 처리나 민감 데이터 포함 여부 등의 카테고리로 분류된 코멘트를 남깁니다. * **코드 수정 제안 (Apply Change):** 단순한 지적에 그치지 않고 구체적인 수정 코드를 제안하며, 개발자가 승인 버튼을 클릭하면 즉시 반영되는 워크플로우를 제공해 투명성과 책임성을 유지합니다. * **PR 요약 및 대화형 Q&A:** 복잡한 코드 변경 사항을 한눈에 알 수 있게 요약해 주며, "이 매개변수가 왜 필요한가?"와 같은 구체적인 질문에 AI가 답하는 인터랙티브 기능을 통해 코드 이해도를 높입니다. * **워크플로우 통합:** 별도의 UI나 도구 설치 없이 기존 PR 스레드 내에서 동료 개발자와 대화하듯 AI와 상호작용할 수 있도록 설계되었습니다. ### 품질 향상과 개발 속도 가속화 * **리뷰 사이클 단축:** 약 5,000개의 저장소 데이터를 분석한 결과, AI 도입 후 PR 완료 시간 중앙값이 10~20% 개선되었습니다. * **코드 품질의 상향 평준화:** 런타임 에러를 유발할 수 있는 API 호출 순서 오류 등을 미리 잡아내어 실제 배포 후 발생할 수 있는 사고를 미연에 방지합니다. * **멘토링 효과:** AI가 코드 한 줄마다 개선 방향과 이유를 설명해 주므로, 특히 신입 개발자들이 조직의 코딩 표준과 베스트 프랙티스를 빠르게 학습하는 데 큰 도움을 줍니다. ### 맞춤형 설정 및 에코시스템으로의 확장 * **팀별 맞춤 가이드라인:** 각 팀의 특성에 맞는 리뷰 프롬프트를 설정할 수 있어, 과거의 크래시 패턴을 분석하거나 특정 배포 게이트(flight gates) 준수 여부를 확인하는 등 특화된 리뷰가 가능합니다. * **1P-3P 선순환 구조:** 마이크로소프트 내부(1P)에서 검증된 기능은 2025년 4월 정식 출시된 깃허브 코파일럿의 PR 리뷰 기능(3P)으로 이식되었으며, 외부 사용자들의 피드백이 다시 내부 도구의 발전으로 이어지는 구조를 확립했습니다. 개발 조직의 규모가 커질수록 리뷰의 일관성을 유지하고 속도를 높이는 것이 큰 과제입니다. 마이크로소프트의 사례처럼 AI를 단순한 도구가 아닌 '첫 번째 리뷰어'로 워크플로우에 깊숙이 통합한다면, 단순 반복 업무는 AI에게 맡기고 인간 개발자는 창의적인 설계와 비즈니스 로직에 더 집중할 수 있는 환경을 구축할 수 있을 것입니다.

microsoft

How Microsoft Engineers Build AI: Learn about scalable RAG-enabled AI Apps (새 탭에서 열림)

마이크로소프트는 자사 엔지니어들이 대규모 AI 애플리케이션을 구축하는 실제 방법론을 공유하기 위해 'How Microsoft engineers build AI' 비디오 시리즈를 새롭게 공개했습니다. 첫 번째 에피소드에서는 'Copilot for Azure' 내의 'Ask Learn' 플러그인 개발 사례를 통해 검색 증강 생성(RAG) 기술을 안정적으로 구현하고 확장하는 핵심 전략을 다룹니다. 이를 통해 개발자들은 기업 내부 데이터와 대규모 언어 모델(LLM)을 결합하여 정확하고 맥락에 맞는 AI 서비스를 구축하는 실질적인 통찰력을 얻을 수 있습니다. ### RAG 기술의 핵심과 활용 차별화 * RAG(검색 증강 생성)의 기본 개념을 정립하고, 모델의 가중치를 직접 수정하는 파인튜닝(Fine-tuning) 기술과 비교하여 RAG가 가진 차별적 우위를 설명합니다. * Copilot in Azure뿐만 아니라 Microsoft Security Copilot, Dynamics 365 Business Central 등 마이크로소프트의 주요 제품군에 RAG가 실제로 어떻게 적용되어 비즈니스 가치를 창출하는지 사례를 제시합니다. * 단순한 이론을 넘어, 실제 서비스 환경에서 LLM이 고유 데이터에 접근하여 답변의 신뢰도를 높이는 메커니즘을 상세히 다룹니다. ### 엔지니어링 단계에서의 도전 과제와 해결책 * RAG 시스템 구축 시 직면하는 주요 난관인 콘텐츠 선택, 데이터 전처리(Preprocessing), 그리고 성능 평가(Evaluation) 과정을 체계적으로 관리하는 방법을 공유합니다. * 플러그인이 사용자에게 최신 상태의 정확한 정보를 실시간으로 전달할 수 있도록 보장하는 혁신적인 엔지니어링 솔루션을 소개합니다. * 프로토타이핑 단계에서 흔히 발생하는 실수들을 짚어보고, 이를 방지하기 위한 데이터 관리 및 운영상의 베스트 프랙티스를 제안합니다. ### Ask Learn 플러그인 구현 사례 분석 * Azure 개발자들이 작업 흐름을 방해받지 않고 몇 초 만에 답을 얻을 수 있도록 설계된 'Ask Learn'의 실제 작동 시연을 포함하고 있습니다. * 제품 관리자(PM)와 수석 소프트웨어 엔지니어링 매니저 등 실제 개발 주역들의 인터뷰를 통해, 대규모 스케일에서 RAG 솔루션을 안정화하기 위해 사용된 구체적인 기술 스택과 의사결정 과정을 공개합니다. * 사용자의 질문 의도에 가장 적합한 문서를 검색하고 이를 기반으로 맥락에 맞는 답변을 생성하는 구체적인 워크플로우를 학습할 수 있습니다. 성공적인 AI 애플리케이션 구축을 위해서는 Microsoft Learn의 관련 문서와 가이드를 참고하는 것이 좋습니다. 또한, 현재 무료로 제공되는 GitHub Copilot이 포함된 Visual Studio IDE를 활용하면 RAG 기반 앱 개발을 더욱 효율적으로 시작할 수 있습니다.