일반 소개
MM-EUREKA는 상하이 인공 지능 연구소, 상하이 자오통 대학교 및 기타 관계자들이 개발한 오픈 소스 프로젝트입니다. 이 도구는 규칙 기반 강화 학습 기법을 통해 텍스트 추론 기능을 멀티모달 시나리오로 확장하여 모델이 이미지와 텍스트 정보를 처리하는 데 도움을 줍니다. 이 도구의 핵심 목표는 시각적 및 수학적 추론 작업에서 모델의 성능을 향상시키는 것입니다. MM-Eureka-8B와 MM-Eureka-Zero-38B의 두 가지 주요 모델을 소개하며, 이 두 모델은 54K의 그래픽 데이터만 사용하여 수백만 개의 데이터가 필요한 다른 모델을 능가하는 등 적은 양의 데이터로도 효율적인 학습을 가능하게 합니다. 이 프로젝트는 완전 오픈 소스이며, 멀티모달 추론 기법을 탐구하는 연구자와 개발자를 위해 코드, 모델 및 데이터는 GitHub에서 무료로 제공됩니다.

기능 목록
- 멀티모달 추론 지원: 이미지와 텍스트를 동시에 처리하는 기능은 복잡한 문제를 이해하는 모델의 능력을 향상시킵니다.
- 규칙 기반 강화 학습: 대규모 데이터에 대한 의존도를 줄이기 위해 간단한 규칙으로 모델을 훈련합니다.
- 시각적 깨달음: 모델은 추론 과정에서 이미지 단서를 다시 살펴보고 인간의 반성 과정을 모방할 수 있습니다.
- 오픈 소스 전체 파이프라인: 코드, 데이터 세트 및 교육 흐름을 제공하여 쉽게 재현하고 개선할 수 있습니다.
- 높은 데이터 효율성: 적은 양의 데이터(예: 8K 또는 54K 그래픽 쌍)로 수백만 개의 데이터를 학습한 모델과 비슷한 수준의 성능을 제공합니다.
- 수학적 추론 지원: 교육 및 학업 시나리오를 위한 수학적 문제 해결에 특별히 최적화되어 있습니다.
도움말 사용
MM-EUREKA는 주로 특정 프로그래밍 기반이 있는 사용자, 특히 연구자와 개발자를 대상으로 하는 GitHub 기반의 오픈 소스 프로젝트입니다. 다음은 실제 운영 과정의 주요 기능을 포함하여 이 도구의 설치 및 사용 방법에 대한 자세한 설명입니다.
설치 프로세스
- 환경 준비하기
- 컴퓨터에 Python 3.8 이상이 설치되어 있는지 확인합니다. 다음 명령을 사용하여 설치할 수 있습니다.
python --version
확인. - 코드를 복제하려면 Git을 설치해야 합니다. Git이 없는 경우 공식 웹사이트에서 다운로드하여 설치할 수 있습니다.
- Linux 시스템(예: 우분투 20.04 또는 22.04)에 권장되며, Windows 사용자는 추가 구성이 필요할 수 있습니다.
- 컴퓨터에 Python 3.8 이상이 설치되어 있는지 확인합니다. 다음 명령을 사용하여 설치할 수 있습니다.
- 프로젝트 코드 복제
- 터미널을 열고 다음 명령을 입력하여 MM-EUREKA 소스 코드를 다운로드합니다:
git clone https://github.com/ModalMinds/MM-EUREKA.git
- 다운로드가 완료되면 프로젝트 폴더로 이동합니다:
cd MM-EUREKA
- 터미널을 열고 다음 명령을 입력하여 MM-EUREKA 소스 코드를 다운로드합니다:
- 종속성 설치
- 다음 명령을 실행하여 기본 종속성을 설치합니다:
pip install -e .
- 사용해야 하는 경우 vLLM 가속 추론 및 추가 패키지를 설치해야 합니다:
pip install -e .[vllm]
- 플래시 어텐션(버전 2.3.6)을 설치하여 성능을 개선하세요:
pip install flash-attn==2.3.6 --no-build-isolation
문제가 발생하면 소스에서 설치해 보세요:
git clone https://github.com/Dao-AILab/flash-attention.git cd flash-attention git checkout v2.3.6 python setup.py install
- 다음 명령을 실행하여 기본 종속성을 설치합니다:
- 데이터 세트 다운로드
- 이 프로젝트는 GitHub 릴리스에서 다운로드할 수 있는 트레이닝 데이터 MM-Eureka-Dataset을 제공합니다.
- 다운로드 후 파일의 압축을 풀고 필요에 따라 데이터를 수정합니다.
image_urls
필드에 로컬 이미지 경로를 가리키는 값을 입력합니다.
- 설치 확인
- 설치가 완료되면 다음을 실행합니다.
python -c "import mm_eureka"
보고된 오류가 있는지 확인합니다. 오류가 없으면 설치에 성공한 것입니다.
- 설치가 완료되면 다음을 실행합니다.
주요 기능 사용
기능 1: 멀티모달 추론 모델 실행하기
- 데이터 준비
- 데이터는 JSONL 형식으로 구성해야 하며, 각 행은 다음을 포함하는 사전입니다.
id
및conversations
및answer
노래로 응답image_urls
필드로 이동합니다. 예시:{"id": "0", "conversations": [{"role": "user", "content": "这张图里的数学题答案是什么?"}], "answer": "42", "image_urls": ["file:///path/to/image.jpg"]}
- 데이터를 다음 이름으로 저장
dataset.jsonl
를 프로젝트 디렉토리에 배치합니다.
- 데이터는 JSONL 형식으로 구성해야 하며, 각 행은 다음을 포함하는 사전입니다.
- 추론 실행
- 터미널에 다음 명령을 입력하여 모델을 로드하고 이에 대해 추론합니다:
python scripts/inference.py --model MM-Eureka-8B --data dataset.jsonl
- 출력에는 모델의 추론 과정과 각 질문에 대한 답변이 표시됩니다.
- 터미널에 다음 명령을 입력하여 모델을 로드하고 이에 대해 추론합니다:
기능 2: 사용자 지정 모델 교육
- 교육 매개변수 구성
- 쇼(티켓)
config.yaml
파일을 사용하여 모델 파라미터(예: 학습 속도, 배치 크기) 및 데이터 경로를 설정할 수 있습니다. - 보안
data_path
나를 가리키세요.dataset.jsonl
문서화.
- 쇼(티켓)
- 프라이밍 교육
- 다음 명령을 실행하여 교육을 시작하세요:
python scripts/train.py --config config.yaml
- 훈련 중에 모델은 체크포인트를
checkpoints/
폴더.
- 다음 명령을 실행하여 교육을 시작하세요:
기능 3: 시각적 깨달음 테스트
- 테스트 데이터 준비
- K12 데이터 세트에서 몇 가지 문제를 골라내는 등 이미지가 포함된 복잡한 수학 문제의 데이터를 활용하세요.
- 운영 테스트
- 명령을 입력합니다:
python scripts/test_reflection.py --model MM-Eureka-Zero-38B --data test.jsonl
- 이 모델은 이미지 단서를 재검토하는 방법을 포함한 추론 과정을 보여줍니다.
- 명령을 입력합니다:
운영 프로세스의 예: 수학 문제 풀기
- 데이터 업로드
- 이미지(예: 기하학 문제)와 해당 문제 설명을 JSONL 형식으로 저장하여 준비합니다.
- 운영 모델
- 비용 또는 지출
inference.py
스크립트가 MM-Eureka-8B를 로드하고 데이터를 입력합니다.
- 비용 또는 지출
- 결과 보기
- 모델은 추론 단계(
<think>
태그)와 최종 답변(<answer>
태그)를 예로 들 수 있습니다:<think>先看图,圆的半径是 5,面积公式是 πr²,所以是 25π。</think> <answer>25π</answer>
- 모델은 추론 단계(
주의
- GPU 메모리가 부족한 경우 배치 크기를 조정하거나 MM-Eureka-8B(더 작은 모델)를 사용하세요.
- 데이터의 이미지 경로가 유효하지 않으면 모델에서 이미지를 처리할 수 없습니다.
이 단계를 통해 MM-EUREKA를 쉽게 시작하고 멀티모달 추론 기능을 경험할 수 있습니다.
애플리케이션 시나리오
- 교육 보조 자료
MM-EUREKA는 수학 문제 사진을 분석하여 학생 연습이나 교사 준비에 적합한 상세한 솔루션을 제공합니다. - 과학 탐험
연구자는 이를 사용하여 다중 모드 작업에서 강화 학습의 효과를 테스트하고 알고리즘을 개선하거나 새로운 모델을 개발할 수 있습니다. - AR/VR 개발
개발자는 시각적 추론 기능을 사용하여 실시간 문제 해결 도우미와 같은 더욱 스마트한 대화형 애플리케이션을 개발할 수 있습니다.
QA
- MM-EUREKA는 어떤 언어를 지원하나요?
현재 영어와 중국어 그래픽 데이터를 주로 지원하고 있으며, 이 두 언어에 대해 가장 우수한 추론 효과를 보이는 모델입니다. - 얼마나 강력한 컴퓨터 구성이 필요한가요?
최소 16GB의 RAM과 중간급 GPU(예: NVIDIA GTX 1660)가 권장됩니다. 대규모 모델을 훈련하려면 더 강력한 하드웨어가 필요할 수 있습니다. - 코드 기여는 어떻게 하나요?
GitHub에서 풀 리퀘스트를 제출하려면 다음을 참조하세요.CONTRIBUTING.md
문서의 가이드라인입니다.
© 저작권 정책
이 글은 저작권이 있으며 무단으로 복제해서는 안 됩니다.
관련 문서
댓글 없음...