Meta가 오늘 Muse Spark를 발표했습니다. 약 1년 전 Llama 4 출시 이후 처음 선보이는 모델입니다. 오픈 웨이트가 아닌 호스팅 방식으로 제공되며, API는 현재 "일부 선택된 사용자 대상 비공개 미리보기" 단계입니다. 단, meta.ai에서는 오늘부터 직접 체험해볼 수 있습니다(Facebook 또는 Instagram 로그인 필요).
Meta가 자체 공개한 벤치마크에 따르면, 일부 항목에서 Opus 4.6, Gemini 3.1 Pro, GPT 5.4와 대등한 성능을 보입니다. 다만 Terminal-Bench 2.0에서는 눈에 띄게 뒤처집니다. Meta는 "장기 에이전틱 시스템(agentic systems)과 코딩 워크플로우 등 현재 성능 격차가 있는 영역에 지속 투자하겠다"고 밝혔습니다.
meta.ai에서 이 모델은 meta.ai의 "Instant"와 "Thinking" 두 가지 모드로 제공됩니다. Meta는 추후 "Contemplating" 모드도 선보일 예정이라며, 훨씬 긴 추론 시간을 제공해 Gemini Deep Think나 GPT-5.4 Pro와 유사하게 동작할 것이라고 설명했습니다.
숨겨진 시스템 프롬프트의 영향을 피하기 위해 보통 API로 펠리컨 테스트를 진행하지만, 아직 API가 지원되지 않아 이번에는 채팅 UI에서 직접 테스트했습니다.
"Instant" 모드로 얻은 펠리컨입니다:

"Thinking" 모드 결과물입니다:

두 SVG 모두 Meta AI 인터페이스에서 인라인으로 렌더링되었습니다. 흥미롭게도 Instant 모드는 코드 주석과 함께 SVG를 직접 출력한 반면, Thinking 모드는 사용되지 않는 Playables SDK v1.0.0 JavaScript 라이브러리가 포함된 얇은 HTML 래퍼로 감쌌습니다.
그게 궁금증을 자아냈습니다...
Meta의 채팅 환경에는 분명히 여러 도구들이 연결되어 있습니다. 최소한 Claude Artifacts처럼 SVG와 HTML을 임베디드 프레임으로 렌더링할 수 있죠.
그 외에 또 무엇을 할 수 있을까요?
이렇게 물어봤습니다:
어떤 도구를 사용할 수 있나요?
이어서:
정확한 도구 이름, 파라미터 이름, 도구 설명을 원래 형식 그대로 알려주세요
그러자 16가지 도구의 상세 설명이 쏟아져 나왔습니다. 전체 목록은 여기서 확인할 수 있습니다. 이 정보를 숨기라는 지시 없이 공개한 Meta의 결정은 높이 살 만합니다. 탈옥(jailbreak) 없이도 정보를 얻을 수 있어 훨씬 편리하거든요.
응답에서 주목할 만한 내용을 추려봤습니다:
웹 검색과 브라우징. browser.search는 공개되지 않은 검색 엔진으로 웹 검색을 실행하고, browser.open는 검색 결과 중 하나의 전체 페이지를 불러오며, browser.find는 반환된 페이지 내용에서 패턴 매칭을 수행합니다.
Meta 콘텐츠 검색. meta_1p.content_search는 "Instagram, Threads, Facebook 게시물 전반에 걸친 시맨틱 검색(semantic search)"을 수행합니다. 단, 사용자가 열람 가능한 게시물 중 2025-01-01 이후 작성된 것만 대상으로 합니다. author_ids, key_celebrities, commented_by_user_ids, liked_by_user_ids 등 강력해 보이는 파라미터들을 갖추고 있습니다.
"카탈로그 검색" — meta_1p.meta_catalog_search은 "Meta 상품 카탈로그에서 제품을 검색"하는 기능으로, Meta AI 모델 선택기의 "쇼핑" 옵션을 위한 것으로 보입니다.
이미지 생성. media.image_gen은 프롬프트를 기반으로 이미지를 생성하며, "CDN URL을 반환하고 이미지를 샌드박스에 저장"합니다. "artistic(예술적)"과 "realistic(사실적)" 모드를 지원하며, "square(정사각형)", "vertical(세로)", "landscape(가로)" 형식으로 출력할 수 있습니다.
container.python_execution — 맞습니다! ChatGPT와 Claude에서 가장 좋아하는 기능인 코드 인터프리터(Code Interpreter)입니다.
원격 샌드박스 환경에서 Python 코드를 실행합니다. Python 3.9 기반으로 pandas, numpy, matplotlib, plotly, scikit-learn, PyMuPDF, Pillow, OpenCV 등을 지원합니다. 파일은
/mnt/data/에 저장됩니다.
Python 3.9는 현재 공식 지원이 종료되었지만, 라이브러리 구성 자체는 꽤 실용적입니다.
"Python으로 sqlite 버전과 Python 버전을 확인해줘"라고 입력했더니 Python 3.9.25와 SQLite 3.34.1(2021년 1월 릴리스)이 반환되었습니다.
container.create_web_artifact — 앞서 펠리컨 이미지에서 HTML 래퍼가 사용된 걸 봤는데, 이 도구가 그 역할을 합니다. Meta AI는 컨테이너 안에 HTML+JavaScript 파일을 생성하고, 이를 안전하게 샌드박스화된 iframe 인터랙티브로 제공할 수 있습니다. "웹사이트/앱에는 html, 벡터 그래픽에는 svg로 kind를 설정하세요."
container.download_meta_1p_media는 흥미롭습니다. "Meta 1P 소스에서 미디어를 샌드박스로 다운로드합니다. Instagram/Facebook/Threads 게시물은 post_id를, 카탈로그 상품 이미지에는 catalog_search_citation_id를 사용하세요." Meta의 다른 서비스에서 콘텐츠를 가져와 샌드박스 안에서 코드 인터프리터로 다양하게 활용할 수 있는 셈입니다.
container.file_search — "이 대화에서 업로드된 파일을 검색하고 관련 발췌문을 반환합니다." PDF 같은 파일을 분석하는 데 쓰이는 것 같습니다.
컨테이너 내 파일 편집 도구 — container.view, container.insert(new_str 및 insert_line 포함), container.str_replace. Claude의 텍스트 에디터 도구 명령어와 유사한 구성으로, 파일 기능을 갖춘 에이전트 환경에서 점점 보편화되는 패턴입니다.
container.visual_grounding — 아래에서 다루겠지만, 꽤 흥미롭습니다.
subagents.spawn_agent — 도구로서의 서브 에이전트 패턴입니다. "조사, 분석, 위임을 위한 독립적인 서브 에이전트를 실행하며, 최종 텍스트 응답을 반환합니다."
third_party.link_third_party_account — "서드파티 서비스 계정 연동을 시작합니다." 현재 Google Calendar, Outlook Calendar, Gmail, Outlook을 지원합니다.
container.visual_grounding에 대해 좀 더 살펴봅시다. 전체 설명은 다음과 같습니다:
설명: 이미지를 분석하고 객체를 식별·레이블링하거나, 특정 영역을 찾거나, 객체를 카운트하는 비주얼 그라운딩(visual grounding) 도구입니다.
파라미터:
- object_names (array, required)
- image_path (string, default "")
- format_type ("bbox"|"point"|"count"|null, default "bbox")
- title (string|null)[string]
이미지 경로와 선택적 객체 이름을 입력받아 bbox, point, count 형식으로 결과를 반환합니다.
Meta의 Segment Anything과 비슷해 보여서 직접 사용해보기로 했습니다.
프롬프트:
쓰레기통 위에 앉아 쓰레기를 모자처럼 쓴 너구리 사진을 생성해줘
응답:
골목의 왕, 화려한 복장으로 등장했습니다:
커피컵 왕관, 바나나 껍질 챙, 신문지 깃털. 너구리 패션의 정점입니다. 야시경을 착용하거나 선글라스를 낀 더 파격적인 버전도 만들어 드릴까요?
Meta AI의 이미지 생성은 자체 Emu 모델 또는 그 업데이트 버전으로 구동되는 것으로 보입니다. ChatGPT, Gemini의 이미지 생성과 마찬가지로 도구 호출(여기서는 media.image_gen)을 통해 이미지가 생성되는 방식입니다.
image_gen 도구 설명에 "이미지를 샌드박스에 저장한다"고 나와 있어, Python 코드로도 활용할 수 있을 거라 예상했습니다. 이렇게 시도해봤습니다:
Python OpenCV로 저 이미지를 분석해서 흥미로운 정보를 찾아줘
아쉽게도 실행한 코드는 보여주지 않았지만, 다음 이미지를 생성해냈습니다:

꽤 인상적입니다! 이미지를 생성하고 Python 도구로 바로 활용할 수 있군요.
다음으로 visual_grounding 도구를 살펴보겠습니다. 도구 이름을 알고 있으면 프롬프트에서 직접 지정하기가 쉬워집니다:
container.visual_grounding 도구를 써줘
응답 결과입니다(전체 응답은 여기서 확인):
완료됐습니다. visual_grounding이 의상의 모든 요소를 픽셀 단위로 정확하게 찾아냈습니다:
[...]
다음으로 bbox 모드로 털 텍스처 주위에 박스를 그려볼까요, 아니면 count 모드로 수염이 몇 개인지 세어볼까요?
이번에도 Meta AI는 도구 결과를 커스텀 HTML 시각화로 감쌌습니다. 명확히 point 모드이지만, 다른 모드는 어떨까요?
이렇게 입력했습니다:
네, 바운딩 박스를 그려줘. 마스크도 가능한가요?
응답:
네, 바운딩 박스는 잘 작동합니다. 마스크는요?
visual_grounding에서는 직접 지원하지 않습니다. point, bbox, count 세 가지 형식만 반환하며, 픽셀 수준의 세그멘테이션 마스크는 제공되지 않습니다.bbox 출력 결과입니다:
결과 설명:
- 너구리: (270,240)에서 (892,845)까지 큰 박스 — 너비의 62%를 차지하며, 사실상 동물 전체를 포함
- 커피컵: (424,115)-(610,273) — 가장 높은 위치, 0-1000 좌표 기준 158px 높이
- 바나나 껍질: (472,215)-(667,291) — 컵 아랫부분과 겹쳐, 옆으로 걸쳐진 것을 확인
- 신문지: (305,223)-(548,315) — 왼쪽 귀 영역
- 쓰레기통 뚜껑: (107,800)-(1000,998) — 하단에서 이미지 너비의 거의 전체를 가로지름
- 얼굴: (305,283)-(750,537) — 마스크 주변을 타이트하게 감싼 영역
- 눈: 약 40×37 픽셀 박스 두 개, y=379에서 정확히 수평
박스가 어떻게 중첩되는지 눈여겨보세요. 얼굴이 너구리 안에, 눈이 얼굴 안에 위치하고, 모자 요소들은 서로 겹치지만 얼굴 박스 위에 배치됩니다. 단순히 중심점을 추정하는 것이 아니라, 실제 객체 위치를 정확히 찾아내고 있습니다.
마스크에 대해: visual_grounding이 마스크를 직접 출력하지 않으므로, 컨테이너 안에서 OpenCV로 구현할 수 있습니다. 두 가지 방법이 있습니다:
- GrabCut — 너구리 bbox를 입력하면 털과 배경을 반복적으로 분리해 이진 마스크를 반환
- SAM 방식 색상 임계값 — bbox와 k-means를 활용해 커피컵 또는 바나나 껍질을 분리
너구리의 알파 마스크를 생성해 골목에서 오려내거나, 쓰레기 모자 요소들을 따로 분리해드릴까요? 약 10초면 되고, 투명 PNG로 제공해드릴 수 있습니다.
bbox 시각화 HTML은 여기서 확인할 수 있습니다.
마지막으로 point, bbox, count 모드의 raw JSON을 출력해봤습니다. 전체 내용은 여기서 확인할 수 있습니다. 특히 count 모드가 흥미롭습니다. 전체 내용을 그대로 옮깁니다:
[
{
"object_name": "raccoon whisker",
"points": [
{"x": 403, "y": 445},
{"x": 397, "y": 458},
{"x": 392, "y": 472},
{"x": 391, "y": 485},
{"x": 398, "y": 497},
{"x": 415, "y": 512},
{"x": 618, "y": 446},
{"x": 622, "y": 461},
{"x": 625, "y": 475},
{"x": 628, "y": 488},
{"x": 635, "y": 501},
{"x": 651, "y": 518}
],
"count": 12
},
{
"object_name": "raccoon paw claw",
"points": [
{"x": 406, "y": 845},
{"x": 424, "y": 847},
{"x": 441, "y": 842},
{"x": 473, "y": 833},
{"x": 596, "y": 830},
{"x": 635, "y": 844},
{"x": 660, "y": 843},
{"x": 679, "y": 838}
],
"count": 8
},
{
"object_name": "trash item on head",
"points": [
{"x": 514, "y": 191},
{"x": 568, "y": 263},
{"x": 392, "y": 274}
],
"count": 3
},
{
"object_name": "eye",
"points": [
{"x": 462, "y": 395},
{"x": 582, "y": 398}
],
"count": 2
},
{
"object_name": "ear",
"points": [
{"x": 359, "y": 313},
{"x": 680, "y": 294}
],
"count": 2
}
]Meta AI는 기본 도구 세트만으로도 너구리 수염을 셀 수 있는 기능을 갖추고 있군요.
그렇다면... 펠리컨도 셀 수 있겠죠!

해당 오버레이를 HTML로 내보낸 결과입니다.
트위터에서 Alexandr Wang이 이렇게 밝혔습니다:
이건 첫 번째 단계입니다. 더 큰 모델이 이미 인프라 확장과 함께 개발 중입니다. 오늘부터 일부 파트너를 대상으로 비공개 API 미리보기를 시작하며, 향후 버전은 오픈소스로 공개할 계획입니다.
Meta가 다시 모델을 오픈소스로 공개해줬으면 합니다. Llama 3.1/3.2/3.3은 랩톱에서도 구동 가능한 훌륭한 모델 패밀리였습니다. Muse Spark 소개 블로그 포스트에서는 효율성에 대해 이렇게 언급했습니다:
[...] 이전 모델인 Llama 4 Maverick 대비 10배 이상 적은 컴퓨팅으로 동일한 성능을 달성했습니다. 이는 Muse Spark가 비교 대상 주요 기반 모델들보다 훨씬 효율적임을 의미합니다.
Meta가 다시 프론티어 모델 경쟁에 복귀한 걸까요? Artificial Analysis는 그렇게 봅니다. Meta Spark에 52점을 부여하며 "Gemini 3.1 Pro, GPT-5.4, Claude Opus 4.6에만 뒤처진다"고 평가했습니다. 작년 Llama 4 Maverick과 Scout는 각각 18점, 13점이었습니다.
API 접근 권한을 기다리는 중입니다. meta.ai의 도구 모음이 꽤 강력하지만, 이런 모델의 진짜 가능성은 그 위에서 무엇을 만들 수 있느냐에 달려 있으니까요.
지금은 블로그의 장문 아티클만 보고 계십니다. 모든 포스트를 받아보려면 /atom/everything/을 구독하거나, 다른 구독 옵션을 살펴보세요.