2026년 8월 25일 현재 macOS 27 관련 기능과 Foundation Models, Core AI, Private Cloud Compute 인터페이스는 개발자 문서에 공개되어 있습니다. 다만 아직 테스트 주기이므로 API와 권한, 알려진 문제는 정식 출시 전에 바뀔 수 있습니다. 따라서 Foundation Models 맥 개발은 최소 평가 세트를 먼저 만들고, 기기 내 모델과 원격 모델을 조건별로 비교한 뒤, 모델 불가 상태의 대체 경로까지 구현하는 방식으로 시작해야 합니다. 이번 주에는 복잡한 에이전트보다 검증 가능한 요약 또는 정보 추출 기능 하나를 정하고 고정 입력 세트를 만드십시오.
마지막 업데이트: 2026년 8월 25일. Apple 개발자 문서와 macOS 27 출시 정보를 기준으로 확인했습니다.
이 글은 기존 맥 앱에 요약, 정보 추출, 대화 또는 도구 호출을 추가하려는 Swift 개발자를 위한 안내입니다.
로컬 우선 인공지능 에이전트를 만드는 개인 개발자, 여러 시스템 환경에서 평가와 배포를 준비하는 팀도 대상입니다.
시작점은 에이전트가 아니라 검증 가능한 작업입니다
첫 기능으로 긴 대화형 에이전트를 선택하면 실패 원인을 찾기 어렵습니다. 다음처럼 결과를 판정할 수 있는 작업이 좋습니다.
- 긴 문서에서 정해진 항목을 추출합니다.
- 입력 문장을 정해진 형식으로 요약합니다.
- 자유 문장을 구조화된 결과로 바꿉니다.
- 제한된 도구 목록에서 필요한 작업을 선택합니다.
작업을 정한 뒤 최소 평가 세트를 만드십시오. 입력, 기대 결과, 허용 오차, 민감 정보 포함 여부, 실패 화면, 재시도 조건을 한 파일에 기록하면 됩니다. 평가 세트에는 정상 입력만 넣지 마십시오. 빈 입력, 다른 언어, 잘못된 형식, 너무 긴 문맥, 권한이 없는 요청도 포함해야 합니다.
기기 내 모델의 문맥 창을 다룰 때는 입력과 출력이 사용할 수 있는 공간을 함께 계산해야 합니다. 이 동작은 기기 내 Foundation Models 문맥 창 관리 기술 문서에서 확인할 수 있습니다. 문서를 읽지 않고 긴 대화 기록을 그대로 넘기면 응답이 잘리거나 요청이 거부될 수 있습니다.
개발 환경은 최신 문서와 시험판 정보를 분리해 기록합니다
macOS 27 개발 환경을 준비할 때는 다음 항목을 별도 표로 관리하십시오.
- 설치된 macOS 버전
- 사용 중인 Xcode 버전
- 테스트 기기의 모델과 계정 상태
- Foundation Models 사용 가능 여부
- 필요한 권한과 네트워크 조건
- 시험판에서만 발생하는 오류
공식 요구 사항과 시험판에서 관찰한 문제를 한 문장으로 섞지 않는 것이 중요합니다. Apple의 Swift 기계 학습 및 인공지능 학습 과정은 학습 환경의 전제를 설명하고, macOS 27 출시 정보는 시스템 변경과 알려진 문제를 확인하는 기준이 됩니다.
앱 시작 시 모델 사용 가능 상태를 확인하십시오. 사용 불가라면 기능을 숨기거나, 서버 모델로 전환하거나, 일반 검색과 수동 입력으로 돌아가야 합니다. 모델이 항상 존재한다고 가정한 초기화 코드는 배포 환경에서 바로 실패할 수 있습니다.
첫 세션은 작은 요청과 명확한 결과로 끝냅니다
첫 구현에는 화면, 데이터베이스, 복잡한 에이전트 루프를 넣지 마십시오. 다음 순서로 진행하면 문제 범위를 좁힐 수 있습니다.
- 한 문장의 입력을 준비합니다.
- Foundation Models 세션을 초기화합니다.
- 단일 요청을 보냅니다.
- 스트리밍 결과를 화면에 표시합니다.
- 구조화된 결과를 별도 데이터 형식으로 검증합니다.
- 모델 불가, 취소, 시간 초과 상태를 각각 처리합니다.
- 동일 입력을 평가 파일에 저장합니다.
Apple의 Foundation Models 생성 및 작업 수행 안내는 세션과 생성 작업의 기본 흐름을 설명합니다. 코드 예제는 문서에 있는 인터페이스와 권한만 사용하십시오. 확인하지 않은 호출 방식이나 시험판 전용 이름을 완성된 제품 코드처럼 작성하면 정식 버전에서 다시 고쳐야 합니다.
스트리밍 결과를 받을 때는 중간 텍스트와 최종 결과를 구분하십시오. 사용자가 중간 결과를 편집할 수 있다면 최종 검증 전에 저장하지 않는 편이 안전합니다. 구조화된 출력은 필드 누락과 형식 오류를 검사한 뒤 앱의 다음 단계로 넘겨야 합니다.
모델 선택은 이름보다 데이터와 평가 결과로 결정합니다
세 가지 경로를 같은 평가 세트로 비교하십시오. 기기 내 모델은 민감한 데이터와 오프라인 작업에 유리합니다. Private Cloud Compute는 더 큰 문맥이나 복잡한 추론을 검토할 때 선택지가 될 수 있습니다. Core AI와 제삼자 모델은 전문 기능이나 여러 플랫폼 지원이 필요할 때 비교 대상이 됩니다.
| 모델 경로 | 우선 검토할 작업 | 확인할 조건 | 실패 시 대체 경로 |
|---|---|---|---|
| 기기 내 모델 | 민감 정보 요약, 오프라인 추출 | 기기 자격, 문맥 창, 시스템 모델 상태 | 짧은 입력으로 축소하거나 수동 처리 |
| Private Cloud Compute | 긴 문맥, 복잡한 추론 | 네트워크, 데이터 전송 동의, 접근 자격 | 기기 내 모델 또는 작업 중단 |
| Core AI | 앱 내부의 전문 인공지능 기능 | 제공 인터페이스와 지원 범위 | 일반 앱 로직 또는 별도 어댑터 |
| 제삼자 클라우드 모델 | 특정 분야 능력, 교차 플랫폼 | 인증, 비용 정책, 전송 데이터 | 기기 내 모델 또는 기능 비활성화 |
Private Cloud Compute의 연결 방식은 공식 서버 측 지능 추가 문서로 확인하십시오. 접근 가능 여부는 Private Cloud Compute 자격 안내에서 따로 확인해야 합니다. Core AI는 공식 Core AI 개발자 안내에 나온 지원 범위 안에서 설계하십시오.
제삼자 모델을 연결할 때는 ModelProvider 같은 앱 내부 추상화를 두는 방식이 안전합니다. 공통 입력, 공통 출력, 오류 분류를 먼저 만들고 각 모델의 인증과 요청 형식은 어댑터에 격리하십시오. 이렇게 해야 Foundation Models에서 다른 모델로 바꿀 때 평가 코드와 사용자 화면을 다시 만들지 않아도 됩니다.
도구 호출은 권한과 취소 지점을 먼저 설계합니다
도구 호출을 추가할 때 모델이 할 수 있는 일을 넓게 열어 두지 마십시오. 각 도구에 다음 정보를 명시하십시오.
- 허용되는 입력 형식
- 읽기와 쓰기 권한
- 반환할 수 있는 데이터
- 사용자의 추가 확인이 필요한 조건
- 실패와 취소를 알리는 방식
파일 읽기는 허용하더라도 삭제, 외부 전송, 결제, 계정 변경은 별도 확인을 거쳐야 합니다. 도구 호출 횟수에 상한을 두고 같은 인수의 반복 실행도 차단하십시오. Apple의 도구 호출 확장 안내는 도구를 모델 흐름에 연결할 때 확인할 기본 구조를 제공합니다.
실제 파일 대신 모의 도구를 사용해 다음 순서로 시험하십시오.
- 올바른 인수로 한 번 호출합니다.
- 필수 인수를 빠뜨립니다.
- 권한 거부를 반환합니다.
- 네트워크 중단을 반환합니다.
- 모델이 같은 도구를 반복 선택하게 만듭니다.
- 사용자가 중간에 취소합니다.
- 위험한 동작 전에 확인 화면을 표시합니다.
macOS 27 시험판에서 도구 호출과 권한 동작이 바뀔 수 있으므로 출시 정보의 알려진 문제를 매번 다시 확인하십시오.
배포 전 평가는 정확성과 복구 능력을 함께 봅니다
모델 응답 평가는 정답률 하나로 끝나지 않습니다. 언어 모델 응답 평가 문서를 기준으로 평가 항목을 정하고, 앱에서 실제로 문제가 되는 실패를 별도로 기록하십시오.
| 평가 항목 | 고정해서 비교할 내용 | 통과 기준 예시 | 기록할 실패 |
|---|---|---|---|
| 정확성 | 같은 입력과 같은 기대 결과 | 필수 항목 누락 없음 | 틀린 추출, 근거 없는 내용 |
| 형식 | 구조화 결과의 필드와 자료형 | 파싱 및 검증 성공 | 빈 필드, 잘못된 형식 |
| 지연 | 요청 시작부터 표시까지의 구간 | 제품이 정한 내부 기준 | 첫 결과 지연, 중간 멈춤 |
| 복구 | 모델 불가와 네트워크 중단 | 사용자에게 다음 행동 제시 | 무한 재시도, 화면 정지 |
| 안전성 | 권한과 위험 도구 처리 | 확인 없는 실행 없음 | 자동 삭제, 과도한 데이터 전송 |
| 언어 | 한국어와 다국어 입력 | 의미와 형식 유지 | 언어 혼합, 고유명사 훼손 |
성능 수치를 출처 없이 고정하지 마십시오. 기기, 시스템 빌드, 모델 상태, 입력 길이에 따라 결과가 달라집니다. 비교가 필요하면 고정 입력, 동일 평가 기준, 동일 네트워크 조건을 기록하고 직접 측정한 값만 제품 판단에 사용하십시오.
호환 기기가 부족할 때는 원격 환경을 보조 수단으로 씁니다
호환 맥이 없을 때 원격 맥은 여러 시스템과 설정을 격리해 확인하는 방법이 될 수 있습니다. 다만 원격 화면의 지연과 모델 응답 지연을 섞으면 잘못된 결론을 내릴 수 있습니다. 모델 평가와 원격 조작 평가는 분리하십시오.
원격 테스트 환경에서는 다음을 고정하십시오.
- macOS 이미지와 개발 도구 조합
- 테스트 계정과 권한
- 평가 입력 파일
- 로그 보관 위치
- 도구 호출용 모의 데이터
- 세션 종료 뒤 데이터 삭제 절차
원격 맥 다중 버전 테스트 환경을 검토할 때도 특정 장비의 성능을 일반화하지 마십시오. 실제 배포 대상과 같은 조건이 아니면 최종 합격 판정이 아니라 사전 호환성 확인으로 분류해야 합니다. 맥 인공지능 개발 환경을 정리하는 팀이라면 맥 보안과 클라우드 개발 흐름 안내도 함께 확인할 수 있습니다.
출시 뒤에는 모델과 프롬프트를 함께 추적합니다
기기 내 모델은 운영체제 업데이트 뒤 응답 방식이 달라질 수 있습니다. 따라서 다음 값을 로그에 남기십시오.
- 시스템 버전
- 모델 사용 가능 상태
- 프롬프트 버전
- 구조화 결과 검증 결과
- 도구 이름과 호출 결과
- 사용자에게 표시한 복구 안내
- 민감한 원문이 아닌 오류 분류 정보
원문을 무조건 저장하면 개인정보 위험이 커집니다. 평가에 필요한 최소 정보만 보관하고, 개발 로그와 사용자 데이터의 접근 권한을 분리하십시오. 시스템이나 모델이 업데이트될 때마다 핵심 평가 세트를 다시 실행하십시오. 통과하지 못한 기능은 자동 활성화하지 말고 이전 경로로 되돌리는 편이 안전합니다.
배포 전 확인 목록
- [ ] 하나의 검증 가능한 작업을 먼저 정의했습니다.
- [ ] 정상 입력과 실패 입력을 모두 평가 세트에 넣었습니다.
- [ ] 민감 데이터의 전송 가능 여부를 정했습니다.
- [ ] 기기 내 모델, Private Cloud Compute, 제삼자 모델의 선택 조건을 문서화했습니다.
- [ ] 모델 불가와 네트워크 중단의 대체 경로를 구현했습니다.
- [ ] 구조화 결과의 필수 필드와 형식을 검사했습니다.
- [ ] 도구별 권한과 사용자 확인 단계를 설정했습니다.
- [ ] 반복 호출과 고위험 동작을 차단했습니다.
- [ ] 원격 환경과 실제 기기의 평가 결과를 구분했습니다.
- [ ] 시스템 업데이트 뒤 핵심 평가 세트를 다시 실행했습니다.
자주 묻는 구현 판단
위 절차를 모두 적용해도 모델 선택은 앱의 데이터 정책과 배포 대상에 따라 달라집니다. 특히 시험판에서는 문서상 요구 사항과 직접 관찰한 동작을 분리해 기록해야 합니다. 맥용 인공지능 개발 흐름 비교 글을 참고하면 앱 기능과 개발 도구의 경계를 정리하는 데 도움이 됩니다.
Foundation Models로 첫 맥 인공지능 기능을 만드는 순서
처음에는 요약, 정보 추출, 구조화된 생성처럼 기대 결과를 판정할 수 있는 기능을 고르십시오. 입력과 기대 결과를 고정한 뒤 단일 세션을 연결합니다. 이후 스트리밍, 구조 검증, 모델 불가 상태, 취소 처리를 추가하십시오. 이 순서를 지키면 에이전트 루프의 오류와 모델 자체의 오류를 구분하기 쉽습니다.
기기 내 모델과 Private Cloud Compute를 고르는 기준
민감 정보와 오프라인 동작이 핵심이면 기기 내 모델을 우선 검토하십시오. 더 긴 문맥과 복잡한 추론이 필요하면 Private Cloud Compute를 비교하십시오. 단, 네트워크와 데이터 전송 동의가 필요할 수 있습니다. 같은 평가 세트에서 정확성, 지연, 실패 복구를 비교한 뒤 선택해야 하며 모델 이름만 보고 결정하면 안 됩니다.
제삼자 모델을 연결할 때의 구조
제삼자 모델은 화면 코드에 직접 연결하지 말고 공통 모델 제공자 계층 뒤에 배치하십시오. 요청 형식, 응답 형식, 오류 분류를 통일하면 모델을 교체해도 앱의 나머지 부분을 유지할 수 있습니다. 인증 정보와 사용자 동의는 별도 보관해야 합니다. 네트워크가 끊겼을 때 기기 내 모델이나 수동 처리로 돌아가는 경로도 같은 계층에서 관리하십시오.
도구 호출 평가와 호환 기기 부족 문제
도구 호출은 성공 사례보다 잘못된 인수, 권한 거부, 반복 실행, 취소, 네트워크 중단을 먼저 시험해야 합니다. 호환 기기가 없으면 격리된 원격 맥에서 시스템 조합과 앱 흐름을 확인할 수 있습니다. 그러나 원격 화면 지연은 모델 성능이 아니므로 따로 기록하십시오. 정식 배포 전에는 실제 대상 기기에서 핵심 평가를 다시 실행해야 합니다.
현재 방식이 개발자의 개인 맥 한 대에만 의존한다면 시스템 버전이 고정되지 않고, 동시에 여러 구성을 시험하기 어렵고, 모델 업데이트 뒤 재현성도 떨어집니다. 사내 장비를 계속 바꾸는 방식은 대기 시간과 관리 권한 부담도 생깁니다. 이런 조건에서 Hashvps의 격리된 원격 맥을 프로젝트 기간에 맞춰 활용하면 여러 환경을 병렬로 확인하고, 작업이 끝난 뒤 테스트 자원을 정리하기가 더 수월합니다. 장기적으로 고정된 고부하 작업이나 물리 장비 연결이 필요한 팀에는 자체 장비가 더 적합하지만, Foundation Models 맥 개발의 호환성 확인과 단기 평가 환경이 필요하다면 원격 맥부터 구성하는 편이 현실적입니다.
Hashvps와 함께 맥 인공지능 앱을 안정적으로 배포하세요
Hashvps의 원격 맥을 이용하면 실제 맥 환경에서 앱의 기능과 성능을 편리하게 검증할 수 있습니다.
개발 단계부터 배포 전 점검까지 필요한 맥 자원을 유연하게 이용할 수 있습니다.