Apple, Foundation Models 프레임워크를 오픈소스로 공개합니다
Apple은 올여름 Foundation Models 프레임워크를 오픈소스로 공개하기로 약속했으며, 이에 따라 앱에서 호출하던 동일한 Swift API를 서버에서도 실행할 수 있게 됩니다.1 Platforms State of the Union에서 Apple은 이 결정을 명확하게 설명했습니다. “그리고 저희는 큰 일을 하나 준비하고 있습니다. 올여름 후반에 이 프레임워크가 오픈소스로 공개됩니다. 따라서 앱에서 사용하던 동일한 Swift API를 이제 서버에서도 실행할 수 있게 되어, Swift를 배포하는 어디에서나 완전한 엔드 투 엔드 AI 워크플로를 구축할 수 있습니다.”1 이 발표와 함께 같은 주에 동반 Swift 패키지가 GitHub에 공개되었는데, 여기에는 Skills API, 히스토리 관리 도구, 그리고 Foundation Models 프로그래밍 모델을 임의의 chat-completions 엔드포인트로 연결하는 모델 어댑터가 담겨 있습니다.2 프레임워크 자체는 여전히 올여름의 약속으로 남아 있지만, 유틸리티 패키지는 지금 바로 사용할 수 있습니다.
12:44 지점의 오픈소스 발표.
요약
- Apple은 “올여름 후반에” Foundation Models 프레임워크를 오픈소스로 공개하며, 이에 따라 동일한 Swift API가 서버에서 실행되어 “Swift를 배포하는 어디에서나 완전한 엔드 투 엔드 AI 워크플로”를 제공합니다.1 이 프레임워크는 아직 오픈소스가 아닙니다.
- 별도의 오픈소스 Swift 패키지인
FoundationModelsUtilities는 이미 GitHub에 Apache-2.0 라이선스로 공개되어 있으며, Apple 플랫폼과 Ubuntu 같은 일부 Linux 배포판을 지원합니다.2 - 이 패키지는 Skills API를 제공합니다.
DynamicInstructions를 준수하고 result builder로 구성되는Skills타입이 작업별 지시를 세션 트랜스크립트에 적시에 주입하여 컨텍스트 오염을 방지하고 time-to-first-token을 최적화합니다.2 - 또한 히스토리 관리용 프로파일 수정자(완료된 도구 호출 제거, 롤링 윈도, 요약)와 chat completions REST API를 사용하는 모든 서버와 통신하는
ChatCompletionsLanguageModel을 제공합니다.2 - 이 패키지는 Xcode 툴체인 Skills와 Game Porting Toolkit Skills에 이어 이번 WWDC에서 공개된 세 번째 Skills 제공 방식이며, 저장소는 자체 패턴을 “신생 실험적(emerging and experimental)” 패턴이라고 설명합니다.2
프레임워크가 올여름 오픈소스로 공개됩니다
핵심은 다운로드가 아니라 날짜입니다. State of the Union의 약 12:44 지점에서 Apple은 두 문장으로 일정과 그 의미를 제시했습니다. “올여름 후반에 이 프레임워크가 오픈소스로 공개됩니다. 따라서 앱에서 사용하던 동일한 Swift API를 이제 서버에서도 실행할 수 있게 되어, Swift를 배포하는 어디에서나 완전한 엔드 투 엔드 AI 워크플로를 구축할 수 있습니다.”1 기기에서 LanguageModelSession을 통해 이미 호출하던 프레임워크가, 이제는 직접 제어하는 서버를 포함해 Swift가 실행되는 곳이라면 어디서든 실행할 수 있는 것이 됩니다.
이것이 가져다주는 것은 대칭성입니다. 올해 Apple은 Foundation Models가 가리키는 범위를 넓히는 데 공을 들였습니다. 온디바이스 모델, Private Cloud Compute, 그리고 Gemini와 Claude 같은 서드파티 모델이 그 대상이며, 이는 Foundation Models and Private Cloud Compute에서 다뤘습니다. 프레임워크를 오픈소스화하는 것은 그 범위를 반대 방향으로, 즉 기기 바깥으로 완전히 확장합니다. 세션에서 표현했듯이, “여러분은 Foundation Models 프레임워크가 서드파티 모델, Private Cloud Compute, 온디바이스 모델에 어떻게 연결되는지 보셨습니다. 작업에 맞는 적절한 모델을 고를 수 있는 유연성을 갖추게 된 것입니다.”1 오픈소스화 단계는 두 개가 아닌 하나의 프로그래밍 모델이 클라이언트와 서버를 아우른다는 것을 의미합니다.
정확히 짚고 넘어가야 할 주의점이 하나 있습니다. 이 프레임워크는 아직 오픈소스가 아닙니다. Apple은 “올여름 후반”이라고 말했고, 솔직하게 해석하면 이는 계절이 붙은 약속일 뿐 오늘 출시된 것은 아무것도 없습니다. 아래에서 설명하는 패키지는 별개의 산출물이며, 둘을 혼동하면 지금 존재하는 것을 과대평가하게 됩니다.
이미 공개된 유틸리티 패키지
지금 바로 복제할 수 있는 부분은 FoundationModelsUtilities로, GitHub에 Apache-2.0 라이선스로 공개된 오픈소스 Swift 패키지입니다.2 이 패키지는 Apple 플랫폼과 Ubuntu 같은 일부 Linux 배포판을 지원하는데, 이는 프레임워크 자체가 올여름 취할 크로스 플랫폼 방향을 미리 보여준다는 점에서 의미가 있습니다.2 저장소는 그 내용을 “신생 실험적 패턴(emerging and experimental patterns)”이라고 설명하므로, 이 API는 고정된 계약이라기보다 Apple이 나아가는 방향의 미리보기로 받아들이는 것이 좋습니다.2
State of the Union은 이 패키지를 직접 소개했습니다. “저희는 skills나 컨텍스트 관리를 위한 유틸리티 같은 개념을 손쉽게 시작할 수 있도록 미리 만들어진 도구가 가득한 새로운 오픈소스 Swift 패키지를 선보입니다.”1 Apple은 구체적인 예시를 실제 앱에 근거해 제시했습니다. “Tiimo 같은 작업 관리 앱은 이 패키지를 사용해 사용자의 데이터에 맞춰 어조와 추천을 조정하는 skill을 가져와, 하루 일정을 잘 관리하도록 돕는 개인화된 브리핑을 제공할 수 있습니다.”1 같은 대목에서 그 밑바탕을 이루는 토대도 언급했습니다. “이 오픈소스 패키지의 유틸리티들은 Dynamic Profiles라는 새로운 근본 빌딩 블록으로 만들어졌습니다.”1
세 가지 구성 요소가 그 약속을 떠받치며, 각각은 에이전트형 Swift 앱의 실제 문제에 대응합니다.
Dynamic Profiles 위에 구축된 Skills API
첫 번째 구성 요소는 Skills API입니다. 이 패키지는 DynamicInstructions를 준수하고 result builder로 구성되는 Skills 타입을 정의하며, 현재 활성화된 skill을 추적하는 SkillActivations 타입도 함께 제공합니다.2 개별 Skill은 프롬프트나 지시로 초기화하며, 세션 중간에 제거할 수 있어야 하는 skill에는 allowsDeactivation: true로 표시할 수 있습니다.2
흥미로운 부분은 그 목적입니다. skill은 작업별 지시를 LanguageModelSession 트랜스크립트에 적시에 추가하여, 특정 턴에서 필요하지 않은 지시로 트랜스크립트가 가득 차는 것을 막습니다.2 이로부터 두 가지 구체적인 이점이 따라옵니다. 세션은 컨텍스트 오염을 피하고, time-to-first-token을 최적화합니다. 더 짧고 더 관련성 높은 트랜스크립트일수록 모델이 응답을 시작하기 전에 처리하는 속도가 빨라지기 때문입니다.2 Skills API는 지시가 중요해지는 그 순간에 범위를 맞춰 적시에 주입하는 메커니즘입니다.
이를 가능하게 하는 것이 바로 Dynamic Profiles입니다. 셋째 날 정리 영상에서 Swift Intelligence Frameworks의 Senior Engineering Manager인 Lori Hylan-Cho는 skills를 그 기본 요소 바로 위에 놓았습니다. “그래서 저희에게는 Dynamic Profiles도 있는데, 이것은 skills 같은 고차원적인 것들을 위한 일종의 토대 기술입니다. 저희는 이것도 패키지로 공개하고 있어서, 사람들이 그것을 사용하거나 skills 같은 자체 추상화를 직접 만들 수 있습니다.”3 표현이 정확합니다. Apple은 skills를 하나의 패키지로 제공하면서, 개발자가 그 패키지를 사용하거나 동일한 Dynamic Profiles 토대 위에 자체 추상화를 구축할 것을 기대합니다.
프로파일 수정자로서의 히스토리 관리
두 번째 구성 요소는 컨텍스트 문제의 나머지 절반을 다룹니다. 바로 에이전트형 루프가 돌면서 한없이 커지는 트랜스크립트입니다. 이 패키지는 히스토리 관리용 프로파일 수정자를 제공하며, README는 세 가지 전략을 거론합니다.2 완료된 도구 호출 제거는 결과가 더 이상 필요하지 않게 되면 마무리된 도구 호출의 주고받기를 없앱니다. 롤링 윈도 전략은 전체 트랜스크립트가 아니라 최근 히스토리의 한정된 일부만 유지합니다. 요약은 더 오래된 턴을 모델이 여전히 추론할 수 있는 짧은 형태로 압축합니다.2 각각은 같은 다이얼의 손잡이입니다. 트랜스크립트가 모델이 효율적으로 처리할 수 있는 범위를 넘어 부풀어 오르지 않게 하면서도 유용한 정보를 유지하는 것입니다.
chat-completions 어댑터, 숨은 주인공
세 번째 구성 요소는 조용히 가장 많은 일을 해내는 것입니다. ChatCompletionsLanguageModel은 chat completions REST API를 사용하는 모든 서버와 통신하며, 선택적으로 guided generation을 지원합니다.2 그 함의는 큽니다. Foundation Models 프로그래밍 모델, 즉 세션, 도구, 지시는 Apple의 모델뿐 아니라 임의의 chat-completions 엔드포인트를 가리킬 수 있습니다.
자연스러운 짝은 로컬 환경입니다. MLX-LM Server는 Mac에서 chat-completions 호환 HTTP 서버로 실행되며, 이는 Running Agentic AI on the Mac with MLX에서 다뤘습니다. ChatCompletionsLanguageModel을 로컬 MLX 서버에 연결하면, 자신의 하드웨어에서 전적으로 실행되는 모델을 Foundation Models API 표면으로 구동할 수 있습니다. 대신 클라우드 엔드포인트를 가리키면 동일한 코드가 호스팅 모델을 호출합니다. 이 어댑터야말로 “Foundation Models”를 Apple 모델을 가리키는 이름에서 원하는 곳 어디로든 겨눌 수 있는 프로그래밍 모델로 바꿔주는 것입니다.
하나의 WWDC에서 나온 세 번째 Skills 제공 방식
Apple은 이번 WWDC에서 skills를 세 가지 서로 다른 방식으로 제공했으며, 유틸리티 패키지는 그중 세 번째입니다. Xcode 27 툴체인은 xcrun agent skills export로 꺼낼 수 있는 SwiftUI 에이전트 skills를 번들로 제공하며, 이는 Xcode 27 Ships Agent Skills You Can Export Anywhere에서 다뤘습니다. Game Porting Toolkit 4는 Metal 및 MetalFX 포팅 skills를 GitHub 마켓플레이스에서 Claude Code 플러그인으로 배포하며, 이는 Game Porting Toolkit 4: Agentic Game Ports on Mac에서 다뤘습니다. Foundation Models 유틸리티 패키지는 세 번째 형태를 더합니다. 바로 런타임 코드로서의 Skill API, 즉 내보내는 markdown 파일이나 설치하는 플러그인이 아니라 앱 안에서 조합하는 Swift 타입입니다.
이 세 가지 제공 방식은 서로 다른 질문에 답합니다. Xcode skills와 GPTK 플러그인은 어떤 에이전트를 실행하든 그곳으로 Apple의 전문성을 전달합니다. 유틸리티 패키지는 자신의 세션 안에서, 자신의 데이터를 대상으로, 자신의 활성화 로직으로 skills를 작성하고 활성화할 수 있는 빌딩 블록을 제공합니다. Apple은 큐레이션된 지식과 자신만의 것을 만드는 기계 장치를 모두, Lori가 설명한 동일한 Dynamic Profiles 토대 위에서 제공하고 있습니다.3
핵심 요점
AI 기능을 구축하는 Swift 개발자에게:
- 클라이언트와 서버를 아우르는 하나의 프로그래밍 모델을 계획하세요. Foundation Models 프레임워크는 “올여름 후반에” 오픈소스로 공개되므로, 오늘 작성하는 Swift API가 그때 서버에서 실행될 바로 그 API입니다.1 이것을 현재의 기능이 아니라 로드맵상의 약속으로 다루세요.
- FoundationModelsUtilities를 지금 복제하여 Skills API와 히스토리 관리 수정자를 미리 살펴보되, 저장소의 “신생 실험적” 표현은 그 표면이 바뀔 수 있다는 신호로 읽으세요.2
컨텍스트와 비용을 관리하는 팀에게: - 모든 지시를 트랜스크립트에 미리 몰아넣는 대신, Skills API를 활용해 작업별 지시를 적시에 주입하세요. 이는 컨텍스트 오염을 줄이고 time-to-first-token을 개선합니다.2 - 히스토리 관리 수정자(완료된 도구 호출 제거, 윈도 롤링, 요약)를 적용하여 긴 에이전트형 루프가 모델의 유효 컨텍스트를 넘어 자라지 않게 하세요.2
로컬 또는 서드파티 모델을 실행하는 개발자에게:
- ChatCompletionsLanguageModel을 사용해 Foundation Models 프로그래밍 모델을 Mac의 로컬 MLX-LM Server를 포함한 임의의 chat-completions 엔드포인트로 연결하면, 하나의 API 표면으로 온디바이스, 로컬 서버, 클라우드 모델을 구동할 수 있습니다.2
FAQ
Foundation Models 프레임워크는 오늘 오픈소스인가요?
아닙니다. WWDC 2026에서 Apple은 이 프레임워크가 “올여름 후반에” 오픈소스로 공개될 것이며, 이에 따라 동일한 Swift API가 서버에서 실행되어 “Swift를 배포하는 어디에서나 완전한 엔드 투 엔드 AI 워크플로”를 제공할 것이라고 말했습니다.1 발표 시점 기준으로 이는 일정이 붙은 약속이지 출시된 릴리스가 아닙니다. 지금 바로 사용할 수 있는 것은 GitHub에 있는 별도의 유틸리티 패키지입니다.2
FoundationModelsUtilities 패키지란 무엇인가요?
FoundationModelsUtilities는 GitHub에 있는 오픈소스 Swift 패키지로, Apache-2.0 라이선스가 적용되며 Apple 플랫폼과 Ubuntu 같은 일부 Linux 배포판을 지원합니다.2 이 패키지는 Skills API, 히스토리 관리용 프로파일 수정자, 그리고 ChatCompletionsLanguageModel 어댑터를 제공합니다. 저장소는 그 내용을 “신생 실험적 패턴”이라고 설명합니다.2 이 패키지는 프레임워크와 별개이며, 오픈소스로 공개되는 그 프레임워크가 아닙니다.
Skills API는 어떻게 작동하나요?
이 패키지는 DynamicInstructions를 준수하고 result builder로 구성되는 Skills 타입과, 활성 skill을 추적하는 SkillActivations 타입을 정의합니다.2 Skill은 프롬프트나 지시로 초기화하며 allowsDeactivation: true로 설정할 수 있습니다. skill은 작업별 지시를 LanguageModelSession 트랜스크립트에 적시에 주입하여, 컨텍스트 오염을 방지하고 time-to-first-token을 최적화합니다.2 Skills는 Dynamic Profiles 위에 구축되며, Apple은 이를 skills 같은 고차원적인 것들을 위한 “토대 기술”이라고 설명합니다.3
Apple이 아닌 모델로 Foundation Models를 사용할 수 있나요?
네, 패키지의 ChatCompletionsLanguageModel을 통해 가능합니다. 이것은 chat completions REST API를 사용하는 모든 서버와 통신하며, 선택적으로 guided generation을 지원합니다.2 이를 Mac의 로컬 MLX-LM Server나 클라우드 엔드포인트로 연결할 수 있어, Foundation Models 프로그래밍 모델이 Apple 자체 모델을 넘어선 모델을 구동하게 됩니다.
이 패키지는 Apple의 다른 WWDC 2026 skills와 어떤 관계인가요?
이 패키지는 WWDC의 세 번째 skills 제공 방식입니다. Xcode 27은 xcrun agent skills export로 내보내는 SwiftUI skills를 번들로 제공하며(the agent skills export post에서 다룸), Game Porting Toolkit 4는 포팅 skills를 Claude Code 플러그인으로 제공합니다(the GPTK 4 post). 유틸리티 패키지는 자신의 앱 안에서 조합하는 런타임 Swift 코드로서의 Skill API를 Dynamic Profiles 위에 구축해 제공한다는 점에서 다르며, 이를 통해 자신만의 skills를 작성하고 활성화할 수 있습니다.2
오픈소스화 단계는 올해 Apple이 기기를 향해 구축해 온 바로 그 범위를 확장합니다. Foundation Models and Private Cloud Compute는 프레임워크가 이미 아우르는 온디바이스, Private Cloud Compute, 서드파티 모델 경로를 다룹니다. skills 전략은 WWDC 전체를 관통하며, Xcode 27 Ships Agent Skills You Can Export Anywhere의 Xcode 툴체인부터 Running Agentic AI on the Mac with MLX의 로컬 모델 짝짓기까지 이어지는데, 여기서 MLX-LM Server는 ChatCompletionsLanguageModel이 호출할 chat-completions 엔드포인트를 제공합니다. 전체 시리즈 허브는 Apple Ecosystem Series입니다.
참고 문헌
-
Apple, WWDC 2026 session 102, Platforms State of the Union. Source for the open-source commitment (“Later this summer, the framework will be open source. So the same Swift APIs you use in your app can now run on your server too, giving you a complete end-to-end AI workflow anywhere you deploy Swift”), the package introduction (“we’re introducing a new open source Swift package, loaded with pre-built tools to help you get started with concepts like skills and utilities for context management”), the Tiimo example, the flexibility framing (“You’ve seen how the Foundation Models framework connects to third-party models, Private Cloud Compute, and the on-device model”), and the statement that “these utilities from the open source package are created with new fundamental building blocks called Dynamic Profiles.” ↩↩↩↩↩↩↩↩↩↩
-
Apple, foundation-models-utilities. Source for the package name
FoundationModelsUtilities, the Apache-2.0 license, support for Apple platforms and select Linux distributions like Ubuntu, the “emerging and experimental patterns” framing, the Skills API (theSkillstype conforming toDynamicInstructionsbuilt with a result builder,SkillActivationstracking active skills, individualSkillobjects initialized with a prompt or instructions, the optionalallowsDeactivation: true, and the just-in-time transcript injection that prevents context pollution and optimizes time-to-first-token), the history-management profile modifiers (dropping completed tool calls, rolling-window strategies, and summarization), and theChatCompletionsLanguageModelthat communicates with any server using the chat completions REST API with optional guided generation. ↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩↩ -
Apple, WWDC 2026 session 398, Dub Dub Daily: Day 3. Source for the Lori Hylan-Cho interview, in which the Senior Engineering Manager for Swift Intelligence Frameworks describes Dynamic Profiles as “kind of a foundational technology for sort of higher order things like skills, which we’re also releasing as a package, so that people can use those or build their own abstractions like skills.” ↩↩↩