Mac M1에서 exo 설치하기: 완벽 가이드

오준석·2025년 3월 15일
0

코딩삽질방지

목록 보기
54/57

Mac M1에서 exo 설치하기: 완벽 가이드

Apple Silicon(M1) Mac에서 exo 패키지를 설치하는 과정을 단계별로 정리했습니다. 이 가이드는 설치 과정에서 발생할 수 있는 여러 문제들과 그 해결 방법을 포함하고 있습니다.

exo는 여러대의 컴퓨터를 클러스터링하기 쉽게 해주는 오픈소스 프로젝트입니다. exo 설치는 클러스터링을 통해 로컬에서 인공지능 환경을 구축하기 위한 첫 걸음이라고 생각하면 되겠습니다.

목차

  1. Miniforge 설치
  2. conda 환경 설정
  3. Powerlevel10k에서 conda 환경 표시하기
  4. exo 설치 환경 구성
  5. 빌드 의존성 설치
  6. exo 패키지 설치
  7. 설치 확인
  8. 문제 해결

1. Miniforge 설치

Apple Silicon Mac에서는 Anaconda 대신 Miniforge를 설치했습니다. Miniforge는 conda-forge를 기본 채널로 사용하며 ARM 아키텍처에 최적화되어 있습니다.

# Miniforge 설치 스크립트 다운로드
curl -L -O "https://github.com/conda-forge/miniforge/releases/latest/download/Miniforge3-$(uname)-$(uname -m).sh"

# 설치 스크립트 실행
bash Miniforge3-$(uname)-$(uname -m).sh

# 설치 후 초기화
~/miniforge3/bin/conda init zsh  # zsh 사용 시
# 또는
~/miniforge3/bin/conda init bash  # bash 사용 시

# 터미널 재시작 또는 쉘 재로드
source ~/.zshrc  # zsh 사용 시
# 또는
source ~/.bashrc  # bash 사용 시

2. conda 환경 설정

conda가 설치되었지만 프롬프트에 환경 이름이 표시되지 않는 문제가 발생할 수 있습니다. 이를 확인하고 설정하는 방법은 다음과 같습니다.

# conda 설정 확인
conda config --get changeps1

# 프롬프트 변경 활성화 (필요한 경우)
conda config --set changeps1 true

# 현재 활성화된 환경 확인
conda env list
# 또는
echo $CONDA_DEFAULT_ENV

3. Powerlevel10k에서 conda 환경 표시하기

Powerlevel10k 테마를 사용하는 경우, conda 환경을 프롬프트에 표시하도록 설정할 수 있습니다. 저는 오른쪽에 표시하고 색이 어두워서 색상만 변경했습니다.

# p10k 설정 파일 열기
nano ~/.p10k.zsh

# 다음 설정을 찾아 수정 (또는 추가)
# POWERLEVEL9K_LEFT_PROMPT_ELEMENTS 또는 POWERLEVEL9K_RIGHT_PROMPT_ELEMENTS 배열에 'anaconda' 추가
typeset -g POWERLEVEL9K_RIGHT_PROMPT_ELEMENTS=(
  # ... 기존 요소들 ...
  anaconda                # conda 환경 표시
  # ... 기존 요소들 ...
)

# conda 환경 표시 설정 추가
typeset -g POWERLEVEL9K_ANACONDA_FOREGROUND=28
typeset -g POWERLEVEL9K_ANACONDA_BACKGROUND=220

# 설정 저장 후 적용
source ~/.zshrc

4. exo 설치 환경 구성

exo 패키지를 설치하기 위한 전용 conda 환경을 생성합니다.

# exo 환경 생성 (Python 3.13 사용)
conda create -n exo python=3.13

# 환경 활성화
conda activate exo

# 환경 확인
python --version  # Python 3.13.x 출력 확인

5. 빌드 의존성 설치

exo 패키지와 그 의존성을 빌드하는 데 필요한 도구들을 설치합니다.

# Homebrew로 필요한 빌드 도구 설치
brew install cmake pkg-config coreutils

# 설치 확인
cmake --version
pkg-config --version
nproc  # coreutils의 일부

6. exo 패키지 설치

GitHub에서 exo 저장소를 클론하고 패키지를 설치합니다.

# 작업 디렉토리로 이동
cd ~/dev

# exo 저장소 클론 (또는 다운로드)
git clone https://github.com/exo-ai/exo.git
cd exo

# 패키지 설치
pip install .

설치 과정에서 여러 의존성 패키지들이 다운로드되고 빌드됩니다. 특히 sentencepiece와 같은 일부 패키지는 컴파일 과정이 필요하므로 시간이 걸릴 수 있습니다.

7. 설치 확인

설치가 완료되면 exo가 제대로 작동하는지 확인합니다.

# exo 디렉토리에서
python main.py

1개의 노드로 실행되는 것이 표시됩니다. M1 Mac 의 딸리는 GPU 성능을 확인할 수 있습니다.

위로 스크롤 해 보면 채팅 인터페이스 접속 url 이 표시됩니다.

접속하면 다음과 같은 채팅 인터페이스가 표시됩니다. 모델을 선택하면 자동으로 다운로드되고 채팅을 통해 로컬에서의 인공지능 성능 테스트가 가능합니다.

여러 컴퓨터를 연결하고 싶지만 PC가 없습니다. 이제 PC도 사고, 모델 저장 및 공유용 DAS 구축 등의 돈 들어갈 일들이 남았습니다.

8. 문제 해결

sentencepiece 빌드 오류

sentencepiece 패키지 빌드 중 오류가 발생하는 경우:

./build_bundled.sh: line 21: cmake: command not found
./build_bundled.sh: line 22: nproc: command not found

이 오류는 필요한 빌드 도구가 설치되지 않아 발생합니다. 위에서 언급한 대로 brew install cmake pkg-config coreutils를 실행하여 해결할 수 있습니다.

conda 명령 인식 문제

conda 명령이 인식되지 않는 경우:

# conda 초기화 다시 실행
~/miniforge3/bin/conda init zsh  # 또는 bash

# PATH에 수동으로 추가
echo 'export PATH="$HOME/miniforge3/bin:$PATH"' >> ~/.zshrc
source ~/.zshrc

프롬프트에 conda 환경이 표시되지 않는 문제

Powerlevel10k 설정 외에도 다음 방법을 시도해 볼 수 있습니다:

# conda 설정 확인 및 변경
conda config --set changeps1 true

# 환경 변수 확인
echo $CONDA_DEFAULT_ENV

# 다른 환경으로 전환 시도
conda deactivate
conda activate exo

결론

이 가이드를 따라 Apple Silicon(M1) Mac에서 Miniforge를 설치하고, conda 환경을 설정하며, Powerlevel10k에서 conda 환경을 표시하도록 구성했습니다. 또한 exo 패키지를 설치하기 위한 환경을 만들고, 필요한 빌드 도구를 설치한 후, 성공적으로 exo 패키지를 설치하고 실행했습니다.

Mac M1에서 Python 패키지를 설치할 때는 아키텍처 호환성과 빌드 도구 설정에 주의해야 합니다. 특히 C/C++ 확장을 포함하는 패키지의 경우 적절한 빌드 도구가 설치되어 있어야 합니다.

이 가이드가 Apple Silicon Mac에서 exo 패키지를 설치하는 데 도움이 되길 바랍니다!

profile
교육하고 책 쓰는 개발자

0개의 댓글