AI VIDEO BRIEFING
사용자용 AI 앱 만들기: 컨텍스트·멀티모달·온디바이스 모델 실전 가이드
NDC 코펜하겐 2026 강연에서 마이크로소프트 제럴드 베르슬라위스가 텍스트·음성·이미지로 동작하는 음식 알레르기 도우미 앱을 예로, 앱에 AI를 통합하는 방법과 원칙을 정리했다.

핵심 메시지
쉽게 이해하기
NDC 코펜하겐 2026에서 마이크로소프트 .NET 마우이(MAUI) 팀의 제럴드 베르슬라위스가 앱에 AI를 통합하는 방법을 강연했다. 그는 하루 종일 이어진 'AI로 개발자가 더 생산적이 되는 법' 이야기에서 한 발 나아가, 같은 AI의 가치를 최종 사용자에게 어떻게 전달할지에 초점을 맞췄다. 예시는 자신이 참깨 알레르기가 있다는 개인적 문제에서 출발한 '음식 알레르기 도우미' 앱이었다.
데모 앱은 세 가지 입력 방식을 지원했다. 텍스트로 질문하기, 음성으로 말하기, 그리고 메뉴판이나 식품 라벨 사진을 찍어 번역·분석하기다. 앱은 기기의 위치를 컨텍스트로 활용해 '지금 있는 곳에서 이 음식에 참깨가 들어 있을 가능성'까지 감안한 답을 내놓았다. 음성은 커뮤니티 오디오 플러그인으로 녹음·무음 감지·파형 표시를 처리한 뒤 전사(speech-to-text)해 모델에 넘겼고, 이미지는 바이트로 변환해 첨부로 전송했다.
베르슬라위스는 사용자용 AI를 설계할 때 활용할 수 있는 요소들을 정리했다. 위치·캘린더·주변광 등 센서로 만드는 컨텍스트, 사용자의 습관·나이 등을 쌓는 개인화, 사진을 찍어 설명·번역받는 멀티모달 입력, 그리고 대화에서 핵심을 뽑아 기억하는 메모리다. 다만 그는 '섬뜩해지지 말 것(don't be creepy)'을 기본 원칙으로 강조하며, 개인정보가 쌓일수록 유출 위험도 커진다는 점을 지적했다.
기술 축에서는 Microsoft Extensions AI가 핵심이었다. IChatClient 같은 공통 인터페이스로 코드를 짜두면, 실제 구현은 마이크로소프트 파운드리의 클라우드 모델에서 애플 인텔리전스나 ONNX 기반 로컬 모델로 손쉽게 교체할 수 있다. 이미지 전송은 토큰을 많이 소모하므로 텍스트 가독성을 해치지 않는 선에서 크기를 줄이는 등 비용도 고려해야 한다고 조언했다.
그는 마이크로소프트의 '책임 있는 AI' 원칙(공정성·신뢰성·안전·프라이버시·포용성·투명성·책임성)도 소개했다. 마지막으로 동료가 만든 사례를 들어, C# 함수를 설명과 함께 LLM에 노출하면 사용자가 '넷플릭스에서 로그아웃해줘'처럼 의도만 말해도 앱이 해당 기능을 찾아 실행하는, UI 탐색을 대체하는 새로운 상호작용을 보여줬다.
주요 인사이트
- AI의 진짜 사업 가치는 개발 도구에 머물지 않고, 최종 사용자가 로그인해 대화하는 프로덕션 앱에 녹아들 때 나온다.
- 모바일 기기는 위치·캘린더·센서 등 풍부한 컨텍스트 소스를 이미 갖고 있어, 같은 AI라도 상황에 맞춘 더 유용한 답을 낼 수 있다.
- 공통 추상화(Microsoft Extensions AI)를 쓰면 클라우드 모델과 로컬 모델 사이를 구현 교체만으로 오갈 수 있어, 민감 데이터·속도 요구에 유연하게 대응한다.
- 이미지는 토큰 소모가 크므로, 텍스트 인식이 필요한 경우 가독성을 유지하면서도 크기를 줄이는 절충이 필요하다.
- 함수를 LLM에 노출해 의도 기반으로 앱을 조작하게 하면, 사용자가 기능의 위치를 몰라도 원하는 동작을 바로 수행할 수 있어 앱 탐색 방식 자체가 달라진다.
자주 묻는 질문
이 강연에서 예로 든 AI 앱은 무엇을 하나?
.NET 마우이로 만든 '음식 알레르기 도우미' 앱으로, 발표자의 참깨 알레르기를 배경으로 한다. 텍스트·음성·이미지 세 가지 방식으로 질문하면, 현재 위치를 감안해 특정 음식·메뉴에 참깨 같은 알레르기 유발 성분이 있을 위험을 알려주고 외국어 메뉴판을 번역·분석해준다.
클라우드 모델 대신 온디바이스(로컬) 모델은 언제 쓰나?
발표자는 병원 진료 데이터처럼 민감한 정보를 외부로 보내면 안 되는 경우나 속도가 중요한 경우를 들었다. 이럴 때 ONNX 런타임이나 애플 인텔리전스 같은 기기 내 모델을 쓰면 데이터가 기기를 떠나지 않는다. Microsoft Extensions AI의 공통 인터페이스 덕분에 구현만 교체하면 된다.
함수를 LLM에 노출한다는 것은 어떤 사용성을 주나?
C# 함수에 설명을 달아 LLM이 식별할 수 있게 노출하면, 사용자가 UI 위치를 몰라도 의도만 말해 기능을 실행할 수 있다. 발표자는 '넷플릭스에서 로그아웃하기'처럼 찾기 어려운 기능이나, 방 안 사람 수를 사진으로 세어 필요한 커피 양을 계산하는 예를 들었다.
원문과 출처
이 글은 원본 영상의 자막을 바탕으로 한국어 독자를 위해 요약했습니다. 전체 맥락과 최신 정보는 원문에서 확인하세요.
YouTube 원본 영상 보기 ↗