JetBrains의 Mellum2.1은 120억 개 매개변수와 25억 개 활성 매개변수를 갖춘 모델로 제공된다. BF16 저장소와 별도의 GGUF 저장소가 모두 Hugging Face에 공개되어 있다. 첫 로컬 실행을 위해 GGUF 저장소는 llama.cpp 경로를 안내한다. 양자화 파일을 필요할 때 내려받고 로컬 서버를 시작해 프롬프트를 보낸 다음, 코딩 에이전트에 저장소 접근을 허용하기 전에 답변을 살펴본다.

이 안내는 문서에 기반한 설정 가이드다. BIG CHANGE는 Mellum2.1을 설치하거나 아래 명령을 실행하지 않았다. 성공 여부는 서버가 반환한 로컬 completion으로 확인한다. 이는 코드 품질, 에이전트 신뢰성 또는 사용자의 하드웨어에서의 성능을 입증하지 않는다.

필요한 것

  • 선택한 모델과 런타임에 충분한 메모리와 저장 공간을 갖춘 Windows, macOS 또는 Linux 컴퓨터. JetBrains 모델 카드는 원본 모델이 BF16이며 컨텍스트가 131,072토큰이라고 적는다. GGUF 저장소는 권장 Q4_K_M 파일을 8.1GB로 제시한다. 이는 파일 크기일 뿐 런타임 메모리 전체 추정치가 아니다. 런타임, 컨텍스트, 다른 프로세스에도 추가 자원이 필요하다. JetBrains는 최소 메모리 요구량을 공개하지 않는다.
  • 초기 소프트웨어 및 모델 다운로드를 위한 인터넷 연결. 추론 요청 자체는 로컬 서버로 보낼 수 있다.
  • llama.cpp와 터미널. 저장소는 Windows용 winget install llama.cpp 및 로컬 서버 실행을 위한 llama serve 명령을 안내한다.

모델은 Apache 2.0 라이선스로 공개된다. 가중치 사용료는 제시되지 않지만 하드웨어, 전기, 저장 공간 및 임대 인프라 비용은 JetBrains가 산정하지 않는다. BF16 모델 카드는 현재 해당 저장소를 제공하는 추론 서비스가 없다고 밝힌다. GGUF 저장소는 별도의 양자화 아티팩트이며 자체 llama.cpp 빠른 시작을 제공한다.

1단계: llama.cpp 설치 및 로컬 서버 시작

Windows PowerShell에서 공식 Mellum2.1 GGUF 빠른 시작을 사용해 llama.cpp를 설치한다.

PowerShell
winget install llama.cpp

만약 llama 명령이 아직 PATH에 없다면 새 터미널을 연다. 권장 Q4_K_M 빌드를 시작하고 포트 8080에서 로컬 컴퓨터에 명시적으로 바인딩한다:

PowerShell
llama serve -hf JetBrains/Mellum2.1-12B-A2.5B-Thinking-GGUF:Q4_K_M --host 127.0.0.1 --port 8080

GGUF 저장소는 이 모델 ID와 양자화를 llama serve 용도로 안내하며 Windows 설치 경로도 문서화한다. llama.cpp 서버 참조에는 --host 및 --port가 설명되어 있고 저장소 예시 엔드포인트는 http://localhost:8080/v1이다. macOS와 Linux에서는 같은 GGUF 저장소가 curl -LsSf https://llama.app/install.sh | sh를 사용한 llama.cpp 설치 후 동일한 서버 명령을 안내한다.

첫 응답 전에 모델을 다운로드해야 한다. Q4_K_M 파일 크기는 8.1GB로 표시된다. 이 테스트에서는 서버를 자신의 컴퓨터에만 바인딩한다. 네트워크에 노출하거나 프롬프트에 자격 증명을 넣지 않는다. 저장소에는 더 작은 7.0GB MXFP4_MOE 파일과 더 큰 Q6_K, Q8_0, BF16 변형도 있다. 양자화는 모델 아티팩트를 바꾼다. 파일 크기만으로 특정 컴퓨터가 쓸 만한 컨텍스트 길이나 속도로 제공할 수 있는지 알 수 없다.

명령이 시작되지 않으면 정확한 모델 ID, 사용 가능한 디스크 공간, llama.cpp 버전, 전체 오류 메시지를 먼저 확인한다. 메모리 할당 실패는 중단하고 현재 llama.cpp 문서에 따라 런타임 옵션과 컨텍스트 설정을 점검할 이유다. 모델 결함의 증거는 아니다. 공개된 131,072토큰 컨텍스트가 자신의 컴퓨터에 맞을 것이라고 가정하지 않는다.

2단계: 스모크 테스트 프롬프트 전송

서버는 계속 실행해 둔다. 두 번째 PowerShell 창에서 로컬 API에 짧은 요청을 보낸다:

PowerShell
$body = @{
  model = "JetBrains/Mellum2.1-12B-A2.5B-Thinking-GGUF"
  messages = @(
    @{ role = "user"; content = "Reply with exactly: MELLUM21-LOCAL-OK" }
  )
  # Author-selected budget for this short smoke test; not a JetBrains recommendation.
  max_tokens = 512
  temperature = 0.6
  top_p = 0.95
  top_k = 20
} | ConvertTo-Json -Depth 5

$response = Invoke-RestMethod -Uri "http://localhost:8080/v1/chat/completions" -Method Post -ContentType "application/json" -Body $body

$choice = $response.choices[0]
[pscustomobject]@{
  finish_reason = $choice.finish_reason
  has_reasoning_content = -not [string]::IsNullOrWhiteSpace($choice.message.reasoning_content)
  content = $choice.message.content
}

모델 ID, 로컬 엔드포인트, 샘플링 값은 저장소의 API 예시를 따른다. max_tokens = 512는 이 짧은 확인을 위해 선택한 제한값이지 모델 카드 권장값이 아니다. Mellum2.1은 사고형 모델이며 GGUF 카드는 추론을 <think>...</think> 블록에 출력한다고 설명한다. 코드는 별도 reasoning_content 필드가 비어 있지 않은지만 출력하고 해당 필드 내용은 표시하지 않는다. 런타임의 추론 형식에 따라 content에 <think> 텍스트가 남을 수도 있다. 이 프롬프트는 스모크 테스트이지 모델 품질 벤치마크가 아니다.

요청이 연결 또는 서버 오류가 아닌 completion을 반환하고 finish_reason가 length가 아니며 최종 content에 MELLUM21-LOCAL-OK가 있어야 기본 검사를 통과한다. HTTP 성공만으로는 부족하다. 사고형 모델은 요청된 최종 문장을 만들기 전에 작은 출력 예산을 사용할 수 있다. 출력이 비었거나 표시 문구가 없거나 finish_reason가 length이면 결론을 보류한다. 모델 고장으로 진단하지 말고 제한된 출력 예산을 늘려 다시 시도한다. PowerShell에서 연결 오류가 나면 첫 터미널에 서버가 계속 실행 중인지, 요청이 8080 포트를 쓰는지 확인한다. 서버가 오류를 반환하면 정확한 메시지를 저장하고 코딩 에이전트를 시험하기 전에 해결한다. 성공 응답은 로컬 추론 경로가 요청 하나에 답할 수 있음을 확인할 뿐, 모델이 안전하게 코드를 편집할 수 있음을 확인하지 않는다.

3단계: 에이전트 연결 전에 확인

첫 평가는 실제 프로젝트와 분리한다. 작고 알려진 작업이 있는 폐기 가능한 저장소를 사용하고 모델 아티팩트와 양자화, llama.cpp 버전, 운영체제, 컨텍스트 설정, 프롬프트, 출력, 소요 시간과 자원 사용을 기록한다. 범위가 제한된 변경을 요청하고 제안된 diff를 확인한 뒤 저장소의 기존 테스트를 직접 실행한다. 비교하려면 현재 기준 모델로 같은 작업을 반복한다. 프롬프트 한 번이나 테스트 한 번의 성공은 벤치마크가 아니다.

모델 서버는 텍스트를 반환하며 런타임과 요청 형식에 따라 구조화된 도구 호출 흐름을 지원할 수도 있다. 서버 자체가 에이전트의 도구를 결정하거나 안전하게 실행하지는 않는다. 주변 에이전트가 저장소 접근, 셸 명령, 파일 수정, 테스트 실행을 제어한다. 처음에는 읽기 전용 또는 엄격히 제한된 접근으로 시작하고 쓰기와 명령에는 승인을 요구한다. 모든 diff를 검토하고 테스트 저장소와 프롬프트에서 비밀 정보를 제외한다. 에이전트가 작업 범위를 넘거나 관련 없는 파일을 바꾸거나 실패한 테스트를 설명하지 못하면 중단한다.

비공개 용도라면 추론이 어디서 실행되고 에이전트가 어떻게 구성되었는지 확인한다. 요청이 로컬 엔드포인트에 머물면 로컬 모델 프로세스가 프롬프트를 컴퓨터 안에 둘 수 있지만 에이전트가 다른 기능을 위해 외부 서비스를 호출할 수 있다. 비공개 코드나 데이터를 쓰기 전에 해당 애플리케이션의 네트워크 접근, 로그, 텔레메트리, 도구 권한을 점검한다.

4단계: 공개된 증거가 보여 주는 것과 보여 주지 않는 것

JetBrains는 Mellum2.1을 활성 매개변수 25억 개, BF16 정밀도, 컨텍스트 131,072토큰을 갖춘 12B 혼합 전문가 모델로 설명한다. 모델 카드는 Apache 2.0 공개와 샌드박스 소프트웨어 환경에서의 강화 학습을 포함한 후속 학습을 설명한다. JetBrains는 에이전트 코딩 평가를 포함한 벤치마크 결과도 공개한다. 이 점수는 JetBrains가 자체 보고한 결과이며 BIG CHANGE의 측정치가 아니고 사용자 하드웨어의 처리량이나 프로젝트 결과를 예측하지 않는다.

게시 위치에 따라 출시 세부 정보가 바뀌었다. JetBrains의 10월 8일 출시 글은 GGUF 빌드가 ‘곧 제공될 예정’이라고 했다. 10월 9일에는 공식 Hugging Face GGUF 저장소에 접근할 수 있고 llama.cpp, Ollama 등의 빠른 시작이 포함되어 있다. 이 안내는 현재 게시된 GGUF 저장소를 사용한다. BF16 저장소는 별도 아티팩트다. 단계를 반복하기 전에 두 저장소 모두 변경 여부를 확인한다.

큰 변화

이제 공개된 llama.cpp 빠른 시작으로 양자화 Mellum2.1을 빌드하고 로컬 OpenAI 호환 엔드포인트로 질의할 수 있다. BF16 저장소를 추론 서비스에 배포하지 않고도 첫 자체 호스팅 추론을 실용적으로 점검할 수 있다. 응답은 서빙 경로가 작동함을 보여 줄 뿐 에이전트 품질, 적합성, 전체 도구 체인의 개인정보 보호 또는 프로덕션 준비 상태를 증명하지 않는다.

출처 및 추가 읽을거리