>기술 주변기기 >일체 포함 >정말 멋지다! 오래된 iPhone, iPad, MacBook 장치는 이기종 클러스터를 형성하고 Llama 3를 실행할 수 있습니다.

정말 멋지다! 오래된 iPhone, iPad, MacBook 장치는 이기종 클러스터를 형성하고 Llama 3를 실행할 수 있습니다.

PHPz
PHPz원래의
2024-07-19 05:09:59999검색
유휴 장비가 있다면 시도해 볼 수도 있습니다.

이번에는 손에 있는 하드웨어 장치도 AI 분야에서 근육을 구부릴 수 있습니다.

iPhone, iPad, Macbook을 결합하여 "이기종 클러스터 추론 솔루션"을 조립한 후 Llama3 모델을 원활하게 실행할 수 있습니다.

太酷了!iPhone、iPad、MacBook老旧设备组成异构集群,能跑Llama 3

이 이기종 클러스터는 Windows 시스템, Linux 또는 iOS 시스템이 될 수 있으며 Android에 대한 지원이 곧 제공될 예정이라는 점을 언급할 가치가 있습니다. 이기종 클러스터가 실행 중입니다.

太酷了!iPhone、iPad、MacBook老旧设备组成异构集群,能跑Llama 3프로젝트 작성자 @evilsocket에 따르면 이 이기종 클러스터에는 iPhone 15 Pro Max, iPad Pro, MacBook Pro(M1 Max), NVIDIA GeForce 3080, 2x NVIDIA Titan X Pascal이 포함되어 있습니다. 모든 코드는 GitHub에 업로드되었습니다. 이를 본 네티즌들은 이 노인이 정말 단순하지 않다고 표현했습니다.

그러나 일부 네티즌들은 속도에 관계없이 전기요금을 감당할 수 없을 정도로 에너지 소비를 걱정하기 시작했습니다. 데이터를 앞뒤로 이동하면 너무 많은 손실이 발생합니다.

太酷了!iPhone、iPad、MacBook老旧设备组成异构集群,能跑Llama 3

太酷了!iPhone、iPad、MacBook老旧设备组成异构集群,能跑Llama 3

프로젝트 소개

太酷了!iPhone、iPad、MacBook老旧设备组成异构集群,能跑Llama 3

위 함수의 구현은 Cake라는 Rust 프레임워크와 분리될 수 없습니다. Cake는 대형 모델(예: Llama3)의 분산 추론을 완료할 수 있으며 소비자급 하드웨어를 이기종 클러스터에 결합하도록 설계되었습니다. 소비자급 하드웨어는 iOS, Android, macOS, Linux 및 Windows를 포함한 다양한 운영 체제를 사용합니다. AI에 더 쉽게 접근할 수 있도록 말이죠.

프로젝트 주소: https://github.com/evilsocket/cake

Cake의 주요 아이디어는 일반적으로 적합하지 않은 모델에 대해 추론을 실행할 수 있도록 변압기 블록을 여러 장치로 분할하는 것입니다. 단일 장치의 GPU 메모리. 동일한 작업자 스레드의 연속 변환기 블록에 대한 추론은 일괄적으로 수행되어 데이터 전송으로 인한 지연을 최소화합니다. 太酷了!iPhone、iPad、MacBook老旧设备组成异构集群,能跑Llama 3

Cake는 현재 다음 시스템과 장치를 지원합니다.

Compile

太酷了!iPhone、iPad、MacBook老旧设备组成异构集群,能跑Llama 3

Rust를 설치한 후 다음 코드를 실행하세요.

cargo build --release

사용자가 애플리케이션에서 iOS 바인딩을 생성하려는 경우 계속 진행할 수 있습니다. 다음과 같이 설명된 작업:

make ios

을 사용하여 작업자 노드를 실행합니다.

cake-cli --model /path/to/Meta-Llama-3-8B \ # model path, read below on how to optimize model size for workers --mode worker \# run as worker --name worker0 \ # worker name in topology file --topology topology.yml \# topology         --address 0.0.0.0:10128            # bind address

마스터 노드를 실행합니다.

cake-cli --model /path/to/Meta-Llama-3-8B \         --topology topology.yml
topology.yml은 어떤 작업자가 어떤 레이어를 제공하는지 결정합니다.

linux_server_1:host: 'linux_server.host:10128'description: 'NVIDIA Titan X Pascal (12GB)'layers:- 'model.layers.0-5'linux_server_2:host: 'linux_server2.host:10128'description: 'NVIDIA GeForce 3080 (10GB)'layers:- 'model.layers.6-16'iphone:host: 'iphone.host:10128'description: 'iPhone 15 Pro Max'layers:- 'model.layers.17'ipad:host: 'ipad.host:10128'description: 'iPad'layers:- 'model.layers.18-19'macbook:host: 'macbook.host:10128'description: 'M1 Max'layers:    - 'model.layers.20-31'
메모리 및 디스크 공간 최적화 문제에 대해 사용자는 전체 폴더가 아닌 모델에 실제로 필요한 데이터만 작업자에게 제공하기를 원할 수 있습니다. 예를 들어 더 작은 버전의 llama3 safetensor를 생성하려면 다음 코드를 사용할 수 있습니다.

cake-split-model --model-path path/to/Meta-Llama-3-8B \ # source model to split --topology path/to/topology.yml \# topology file                 --output output-folder-name

참조 링크: https://x.com/tuturetom/status/1812654489972973643

위 내용은 정말 멋지다! 오래된 iPhone, iPad, MacBook 장치는 이기종 클러스터를 형성하고 Llama 3를 실행할 수 있습니다.의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.