설치, 실행, 확인
인스턴스에 서비스 전용 Python 환경을 만드세요. 아래 모델 경로는 인스턴스에 동기화된 로컬 디렉터리를 가리킵니다. 실행한 뒤 먼저 인스턴스 내부에서 OpenAI 호환 API를 확인하세요.
python3 -m venv ~/mlx-service/.venv
~/mlx-service/.venv/bin/python -m pip install mlx-lm
~/mlx-service/.venv/bin/python -m mlx_lm.server \
--model ~/models/quantized-model \
--host 127.0.0.1 --port 8080
curl http://127.0.0.1:8080/v1/models
모델 파일이 온전한지, Python 환경을 사용할 수 있는지, 포트를 다른 프로세스가 점유하고 있지 않은지 먼저 확인하세요. 버전에 따라 mlx-lm 매개변수가 달라질 수 있으므로 실제 배포 전 인스턴스에 설치된 버전의 명령 도움말을 확인하세요.
ACCESS / 01
팀에 접속 권한 제공
기본값은 127.0.0.1에서만 수신합니다. 내부에서 소수의 요청만 처리한다면 팀원이 각자 SSH 터널을 설정할 수 있습니다. 공용 진입점이 필요하면 인증, 접근 제어, TLS를 갖춘 리버스 프록시를 사용하고 보호되지 않은 추론 엔드포인트를 인터넷에 직접 공개하지 마세요.
ssh -N -L 8080:127.0.0.1:8080 xops-node
STARTUP / 02
재시작 후에도 실행 유지
포그라운드 명령이 안정적으로 동작하는지 확인한 뒤 서비스용 사용자 수준 launchd 설정을 만드세요. 가상 환경의 Python, 모델 경로, 작업 디렉터리, 로그 파일을 지정합니다. 설정을 확인한 다음 현재 사용자 세션에 로드하고, 인스턴스를 재시작한 뒤 프로세스와 엔드포인트를 다시 점검하세요.
plutil -lint ~/Library/LaunchAgents/com.xcodeops.mlx.plist
launchctl bootstrap gui/$(id -u) \
~/Library/LaunchAgents/com.xcodeops.mlx.plist