Show HN: 하나의 CLI로 로컬 텍스트, 이미지, 비디오, 음악 및 3D 생성 (Python 불필요)
요약
mere.run은 개발자와 크리에이터를 위한 로컬 AI 런타임 CLI입니다. 이 도구를 사용하면 단일 인터페이스에서 텍스트, 이미지, 비디오, 음악, 3D 등 다양한 미디어를 생성하고 언어 모델을 실행할 수 있습니다. Apple Silicon macOS 및 Linux 환경을 지원하며, OpenAI와 호환되는 API를 제공하여 개발 워크플로우에 통합하기 용이합니다.
핵심 포인트
- 로컬 AI 런타임 CLI mere.run으로 다중 미디어 생성 가능
- 텍스트, 이미지, 비디오, 음악, 3D 등 다양한 콘텐츠를 로컬에서 처리
- Apple Silicon macOS 및 Linux 환경을 지원하며 OpenAI 호환 API 제공
- CLI 기반의 통합적인 개발 워크플로우와 모델 관리가 용이함
mere.run
mere.run은 개발자와 크리에이터를 위한 로컬 AI 런타임입니다. 이 커맨드라인 인터페이스(CLI)를 사용하여 미디어를 생성하고, 언어 모델을 실행하며, 이미지나 지리공간 데이터(geospatial data)를 분석할 수 있습니다. 또한 어댑터를 학습시키고, 모델을 평가하며, OpenAI와 호환되는 API를 제공하고, 휴대용 워크플로우 그래프(workflow graph)를 실행할 수도 있습니다.
Apple Silicon macOS가 주요 플랫폼입니다. 헤드리스 Linux CUDA 패키지도 이용 가능합니다. macOS Studio 앱은 동일한 CLI, 모델 스토어 및 실행 기록을 사용합니다. iOS 클라이언트는 사용자 기기에 연결하여 지원되는 iPhone에서 실험적인 이미지 및 채팅 추론(inference) 기능을 제공합니다.
<p align="center"> <img src="https://raw.githubusercontent.com/sawfwair/mere-run/HEAD/docs/media/demo-inline.gif" alt="터미널에서 로컬 채팅, 이미지, 음성(speech), 음악, 비디오, 3D, API 제공 및 워크플로우 명령어 시연." /> </p>이 데모는 M4 Max의 로컬 터미널 세션을 보여줍니다. 이 워크플로우에는 채팅, 이미지 생성, 접지(grounding), 3D 재구성, 사운드, 음성, 비디오, API 제공 및 워크플로우 그래프가 포함됩니다.
시작하기 (Start here)
예제를 실행하기 전에 CLI 설치를 하십시오. 가이드 에이전트 설정(guided agent setup) 또는 수동 설정 경로를 선택하려면 다음을 실행하십시오:
mere.run setup
모델을 다운로드하기 전에, 설치된 버전, 기기의 모델 추천 목록, 그리고 오프라인 가이드를 확인하십시오:
mere.run --version
mere.run model capabilities --recommended
mere.run guide --list
모든 공개 명령어(public command)와 하위 명령어(subcommand)에 대해서는 완전 명령어 레퍼런스를 참고하십시오. 리포지토리 테스트는 생성된 트리를 CLI와 비교하여 확인합니다. 설치된 버전의 플래그에 대해서는 mere.run COMMAND --help를 실행하십시오. 여기서 COMMAND는 image generate와 같은 명령어 경로로 대체하면 됩니다.
첫 번째 이미지를 생성하려면:
-
모델 다운로드 계획을 검토하십시오:
mere.run model pull image-zimage-nano --preflight --json
2. 모델을 다운로드하십시오:
```bash
mere.run model pull image-zimage-nano
-
작업 디렉터리에
mug.png를 생성하십시오:
mere.run image generate
--model image-zimage-nano
--prompt "a ceramic mug in soft morning light"
...
모델 크기, 메모리 요구 사항 및 라이선스는 다릅니다. 모델을 다운로드하기 전에 [카탈로그 항목](./docs/model-sources.md)를 검토하고 풀 프리플라이트(pull preflight)를 실행하십시오. 설치 후에는 `mere.run model info MODEL_ID`가 모델의 매니페스트와 유효성 검사 상태를 보고합니다. 여기서 `MODEL_ID`는 카탈로그 ID로 대체하십시오. 로컬 추론(Local inference)은 모델이 설치된 후 호스팅되는 추론 서비스(hosted inference service)를 필요로 하지 않습니다.
## 할 수 있는 작업들
다음 표를 사용하여 워크플로우를 선택하십시오. 각 가이드에는 모델 ID, 전제 조건, 예시 및 제한 사항이 나열되어 있습니다. 사용 가능한 입력과 제어는 선택된 모델에 따라 달라집니다.
일부 워크플로우는 모든 모델 가중치(model weights)를 업데이트하는 대신 낮은 순위 적응(low-rank adaptation, LoRA)을 사용하여 작은 어댑터(adapters)를 훈련합니다.
| 영역 (Area) | 명령어 (Commands) | 기능 (Capabilities) |
| :--- | :--- | :--- |
| [텍스트, 코드 및 에이전트](./docs/runtime/text.md) | `text chat`, `text code`, `text embed`, `text anonymize`, `text decide`, `agent` | 채팅(Chat), 코드 생성(code generation), 도구 호출(tool calls), 구조화된 응답(structured responses), 임베딩(embeddings), 개인 정보 비식별화(personal information redaction), [Laya 결정](./docs/runtime/laya.md), [D1 멀티모달 결정](./docs/runtime/d1.md), 그리고 [Clef 결정](./docs/runtime/clef.md)를 포함하며, 텍스트, 이미지, 오디오 및 비디오 입력에 대한 네이티브 Omni 결정을 지원합니다. 모델에는 Gemma 4, DiffusionGemma, Qwen3.8, LFM2.5, Laguna, Inkling, Nemotron Lightning, [Nemotron Bolt](./docs/runtime/nemotron-bolt.md), DeepSeek V4 Flash, 그리고 Ornith가 포함됩니다. |
| ... |
Geospatial 명령어는 준비된 텐서(prepared tensors)를 받습니다. 워크플로우의 책임은 여전히 래스터(raster) 획득, 재투영(reprojection), 타일링(tiling), 지리 참조(georeferencing), 그리고 증거 검토에 있습니다. 일부 체크포인트는 네이티브 추론 전에 문서화된 변환 단계가 필요합니다. 예측 결과는 여전히 검토 대상 후보입니다.
`vision track-live` 명령어는 트래킹 전에 카메라 클립을 녹화합니다. 이는 실시간으로 프레임별 추론(frame-by-frame inference)을 실행하지 않습니다. 평가 패키지 유효성 검사(Evaluation pack validation) 및 승진 영수증(promotion receipts)은 선언된 패키지와 보고서 확인만을 수행할 뿐, 일반적인 모델 품질이나 운영 승인을 확립하는 것은 아닙니다.
생성된 예제는 [showcase](https://mere.run/#showcase)를 참조하십시오.
런타임 지원은 체크포인트의 사용 또는 재배포 권한을 부여하지 않습니다. 해당 조건은 [모델 출처 및 라이선스](./docs/model-sources.md)를 검토하십시오.
## 예제 워크플로우 (Example workflows)
이 예제들은 설치된 CLI를 사용합니다. 소스 체크아웃(source checkout)의 경우, `mere.run`을 `swift run mere.run`으로 대체하십시오. `reference.png`와 같은 자체 입력 파일을 제공하십시오. 모델은 다운로드 가중치(weights)를 가져오고, 생성 명령어는 명명된 출력물(named outputs)을 작성합니다.
### 로컬 채팅 (Chat locally)
Gemma 모델을 다운로드하고 응답을 스트리밍하는 방법:
1. 모델 설치:
```bash
mere.run model pull text-chat-gemma4-12b-4bit
- 프롬프트 전송:
응답은 터미널에 표시됩니다. 에이전트를 연결하려면 mere.run agent onboard을 실행하세요. Pi 설치, 다른 에이전트 클라이언트 및 도구 권한에 대해서는 agent guide를 참조하세요.
SenseNova U1.5로 이미지 편집하기
작업 디렉터리에 reference.png라는 이름의 입력 이미지를 배치한 다음, 다음 단계를 따르세요:
-
모델 설치:
mere.run model pull image-sensenova-u1-5-8b-mot -
sensenova-edit.png라는 이름의 편집된 이미지 생성:mere.run image generate \ --model image-sensenova-u1-5-8b-mot \ --input ./reference.png \
...
여러 참조, 구조화된 프롬프트, Krea 및 Klein LoRA 학습, 3D 재구성에 대해서는 [image guide](./docs/runtime/image.md)를 참조하세요.
### MiniMax Music 3으로 노래 작곡하기
이 워크플로우는 채팅 모델을 사용하여 노래를 계획하고 음악 모델을 사용하여 오디오를 생성합니다. 먼저, [Chat locally](#chat-locally)에 설명된 대로 Gemma를 설치하세요. 다운로드하기 전에 음악 모델의 약관 및 메모리 요구 사항을 검토하세요.
1. 약관 동의 후 MiniMax Music 3 설치:
```bash
mere.run model pull music-minimax-music3 --accept-license-terms
-
song.wav작곡 및 생성:mere.run music generate \ "slow-burn dream pop about leaving a familiar city and finding home" \ --model music-minimax-music3 \
...
이 명령어는 또한 작곡 메타데이터를 저장합니다. `--require-composer-installed` 옵션은 암묵적인 작곡가 다운로드를 방지하며, `--lyrics-preflight strict`는 엄격한 가사-길이 검사를 활성화합니다. `q8-lm` 모드는 잔여 깊이 디코더(residual-depth decoder)를 BF16으로 유지하면서 전역 언어 모델(global language model)을 양자화합니다.
제공된 가사에 대해서는 ACE-Step 커버, 스템 분리(stem separation), MIDI 전사(MIDI transcription), 실시간 연주에 대해서는 [music guide](./docs/runtime/music.md)를 참조하세요.
### 동기화된 비디오 및 오디오 생성
LTX 모델의 이용 약관 및 메모리 요구 사항을 검토한 후 다운로드하세요.
그런 다음 다음 단계를 따르세요:
1. 이용 약관에 동의하여 전체 Distilled Bundle을 설치합니다:
```bash
mere.run model pull video-ltx25-distilled-bf16 --accept-license-terms
-
비디오와 오디오가 포함된 MP4 파일을 생성합니다:
mere.run video generate \ "a small red robot walks across a wooden table, tiny mechanical footsteps" \ --model video-ltx25-distilled-bf16 \
...
이 번들은 비디오 파이프라인에 BF16 가중치와 Q4 텍스트 인코더를 사용합니다. 체크섬으로 고정된 MiniMax-H3 LightX2V 8단계 워크플로우의 경우, MiniMax-H3은 참조, 장문 생성, 전체 LTX 파이프라인, 소스 오디오 및 SCAIL 피사체 애니메이션을 활용하며, [비디오 가이드](./docs/runtime/video.md)를 참고하세요.
### 로컬 API 서비스하기
서버를 시작하기 전에 [Chat locally](#chat-locally)에 설명된 대로 Gemma를 설치합니다. 다음 절차는 서버가 위치한 기기에서 연결을 허용하는 루프백 주소를 사용합니다:
1. 서버를 시작하지 않고 서비스 계획을 검사합니다:
```bash
mere.run api serve \
--engine text-chat-gemma4 \
--model text-chat-gemma4-12b-4bit \
...
-
서버를 시작합니다:
mere.run api serve \ --engine text-chat-gemma4 \ --model text-chat-gemma4-12b-4bit -
다른 터미널에서 채팅 요청을 보냅니다:
curl http://127.0.0.1:8080/v1/chat/completions \ -H 'Content-Type: application/json' \ --data '{
...
서버는 모델의 답변이 포함된 JSON 응답을 반환합니다. 서버를 중지하려면 해당 터미널에서 <kbd>Control+C</kbd>를 누르세요.
모델이 설치되면 서버는 임베딩(embeddings), 이미지 생성 및 편집, 음성(speech), 그리고 네이티브 비전(vision) 경로도 노출합니다. `/v1/models` 엔드포인트는 기능, 도구 지원, 입력 모달리티(input modalities), 그리고 활성화된 제한 사항을 보고합니다. 인증, 모델 거주지(model residency), 배치 처리(batching)에 대해서는 [API 가이드](./docs/runtime/api-server.md)를 참조하십시오. 채팅 인터페이스의 경우 [Open WebUI 설정 가이드](./docs/runtime/api-server.md#open-webui-companion)를 참고하십시오.
## 기기 간 앱 및 실행 (Apps and execution across machines)
작업을 생성하고 실행하려는 위치에 따라 인터페이스를 선택하세요:
| Surface | Execution location | Main functions |
| --- | --- | --- |
| [macOS Studio](./apps/macos/README.md) | 로컬 CLI 또는 구성된 실행기 (configured executors) | 미디어 생성, 학습(training), 로컬 아티팩트 라이브러리, 실행 검사(run inspection), 모델 관리, API 제공, 에이전트. 명령어 미리보기 및 로그는 계속 사용할 수 있습니다. |
| ... |
로컬 iPhone 모델은 장치 메모리에 의존합니다. 시뮬레이터 빌드는 물리적 장치 추론이나 라이프사이클 동작을 확립하지 않습니다. Graph Studio 역시 별도의 런타임 버전과 파일 형식 버전을 가지고 있습니다: Graph v2는 `schema_version: 1` 워크플로우 파일을 사용합니다.
별도의 [Relay 및 Node 프로젝트](https://relay.mere.run)가 플릿 호스트(fleet hosts)를 관리합니다. [공식 플러그인](https://plugins.mere.run)은 추론 과정 외부에서 보조 워크플로우와 타입이 지정된 그래프 제공자(typed graph providers)를 추가합니다. 설치하지 않고 사용 가능한 플러그인을 검사하려면 다음을 실행하십시오:
```bash
mere.run plugin list
mere.run plugin info mere-vfx-tools
Relay 및 Node의 소스 코드는 sawfwair/relay-mere-run에 있습니다. 플러그인 계약(Plugin contracts)과 소스는 mere-run-plugins에 있습니다. 이 저장소는 호스팅된 추론 백엔드(hosted inference backend)가 아니라 로컬 런타임 및 클라이언트를 제공합니다. 원격 실행은 작업을 선택한 장치 또는 플릿으로 전송합니다. 로컬 실행은 작업을 사용자의 장치에 유지합니다.
모델 저장소 (Model storage)
기본 macOS 모델 저장소는 ~/Library/Application Support/MereRun/models입니다. 다른 쓰기 가능한(writable) 저장소를 선택하려면 MERERUN_MODELS_DIR를 설정하거나 --models-root를 전달하세요. 예를 들어, 이 명령어는 외부 볼륨에 있는 저장소의 모델 목록을 보여줍니다:
mere.run --models-root /Volumes/Models/mere-run model list
이미 MODEL_ROOT/MODEL_ID로 정리된 모델을 등록하려면 model location add를 사용하여 루트를 추가하세요. 이 예제는 /Volumes/Models를 MODEL_ROOT로 사용합니다:
mere.run model location add /Volumes/Models
mere.run model location list
이 등록은 읽기 전용 검색 루트(read-only search root)를 추가합니다. 모델 풀(Model pulls)은 기본 저장소에 계속 쓰기를 합니다. 명시적인 저장소 재정의는 등록된 루트를 포함하지 않습니다.
디스크 사용량을 검사하고 파일을 삭제하지 않고 캐시 정리 미리보기를 하려면 다음을 실행하세요:
mere.run model storage
mere.run model gc
model gc 명령어는 --force를 전달하지 않으면 계획만 출력합니다. model remove 명령어는 다른 모델 링크가 사용하지 않는 경우에만 백업 파일(backing files)을 회수합니다. 이의 --keep-cache 옵션은 해당 파일을 유지합니다.
모델 풀은 별도의 Hugging Face 스냅샷 캐시를 사용합니다. 위치를 선택하려면 MERERUN_HUB_CACHE를 설정하거나 model pull에 --cache-dir를 전달하세요. 외부 캐시 볼륨을 연결한 상태에서 해당 파일과 연결되는 모델을 사용할 때 유의하십시오.
해상도 순서 및 캐시 세부 정보는 model management와 configuration를 참조하세요.
자동화 및 명령어 검색
에이전트(agents), 스크립트, 기타 클라이언트의 경우, 기능 메타데이터(capability metadata)와 명령어 가이드(command guides)를 검사하세요:
mere.run catalog --json
mere.run catalog resolve --json -- video generate
AI 자동 생성 콘텐츠
본 콘텐츠는 HN Show HN (AI)의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.
원문 바로가기