MiaAI-Lab/DeepSeek-v4.1-Flash-1017-2x-DGX-Sparks
DeepSeek-V4.1-Flash-1017 EXL3 on 2x DGX Sparks with TensorFold
이 프로젝트가 무엇인가
이 저장소는 두 대의 NVIDIA DGX Sparks(각각 128GB 통합 메모리를 갖춘 특수 컴퓨터)에서 특정 대규모 언어 모델 — DeepSeek-V4.1-Flash-1017 — 을 실행하기 위한 레시피 및 스크립트 세트입니다. 목표는 OpenAI 호환 API를 통해 모델을 서빙하고, 매우 큰 컨텍스트 창(최대 1,048,576 토큰), 이미지 입력, 도구 호출, 선택적 "생각" 모드를 지원하면서 추측 디코딩(텍스트 생성을 가속화하는 기술)과 모델의 압축 버전(가중치당 2.9비트)을 사용하여 하드웨어에 맞추는 것입니다.
작동 방식
두 Sparks는 고속 네트워크(ConnectX-7 포트)로 연결됩니다. 모델은 두 머신에 분할되어(텐서 병렬 처리) 각각 계산의 절반을 처리합니다. 엔진은 TensorFold로, Zig 기반의 네이티브 추론 엔진입니다. 모델 가중치는 Hugging Face의 양자화된 체크포인트에서 가져오며, 일부 부분에는 추가 비양자화 테이블(Engram 테이블이라고 함)이 사용됩니다.
단일 명령 — 첫 번째 Spark에서 ./start.sh — 으로 두 머신을 설정하고(모델 다운로드, Docker 이미지 빌드, 가중치 파일 준비) 두 랭크(모델을 실행하는 두 프로세스)를 시작합니다. ./stop.sh로 중지합니다. 설정은 환경 변수로 사용자 지정할 수 있습니다(예: 안전 필터를 제거하는 "abliterated" 모드 활성화 또는 다른 양자화 팩 사용).
성능
README에는 실제 Sparks 쌍에서 측정된 성능 수치가 포함되어 있습니다. 예:
- 디코드 속도(새 토큰 생성): 단일 스트림에서 약 75–110 토큰/초, 4개의 동시 스트림을 처리할 때 최대 130–155 토큰/초.
- 프리필 속도(긴 프롬프트 처리): 최대 256K 토큰 프롬프트에서 약 2,000–2,200 토큰/초.
- 바늘 찾기 테스트(479,012 토큰 프롬프트에서 숨겨진 구문 찾기)는 3번 중 3번 성공했습니다.
이 수치는 프롬프트 유형(산문 대 코드)과 하드웨어가 올바르게 구성되었는지에 따라 달라집니다.
요구 사항
이 프로젝트를 사용하려면 다음이 필요합니다:
- 두 대의 DGX Sparks(또는 동등한 GB10 시스템)로 각각 128GB 통합 메모리를 갖추고, 다른 큰 작업을 실행하지 않아야 합니다.
- 두 Sparks에서 동일한 GPU 클럭 상한(그렇지 않으면 느린 쪽이 성능을 제한합니다).
- 두 머신 간의 직접 ConnectX-7 링크로, RoCE v2가 활성화되고 개인 서브넷을 사용해야 합니다.
- 첫 번째 Spark에서 두 번째로의 키 기반 SSH.
- 두 Sparks에서 NVIDIA 컨테이너 런타임이 있는 Docker.
- 충분한 디스크 공간: 헤드(첫 번째) Spark에서 약 505GB, 워커에서 약 310GB, Docker 이미지용 공간 추가.
- NFS(네트워크 파일 시스템)를 사용하여 워커가 헤드에서 모델 파일을 읽을 수 있도록 하거나 각 머신에 로컬 복사본을 둡니다.
추가 세부 사항
- 프로젝트에는 알려진 문제를 수정하는 엔진 패치가 포함되어 있습니다(예: 긴 프롬프트가 다른 스트림을 정지시키는 것을 방지하고 이미지 프롬프트 캐싱을 활성화).
- 두 랭크를 감독하기 위한 선택적 systemd 서비스가 있습니다.
- README에는 알려진 제한 사항이 문서화되어 있습니다. 예: 헤드 Spark의 메모리 제약, 다른 소프트웨어를 실행하는 헤드에서 컨텍스트 창을 524,288 토큰 이하로 유지해야 하는 필요성.
요약하면, 이는 두 대의 강력한 엣지 디바이스에서 최첨단 언어 모델을 실행하기 위한 잘 테스트되고 성능 지향적인 설정으로, 명확한 지침과 측정 결과를 제공합니다.
관련
- 프로젝트
- 프로젝트
- 프로젝트
- 프로젝트