Gemma 4 E2B로 파인튜닝된 CRAP(Compiler Replacement for Assembling Programs)은 프롬프트만으로 실행 가능한 ELF 바이너리를 직접 생성하는 혁신적인 모델입니다. 이 도구는 기존의 컴파일러나 어셈블러 단계를 건너뛰고, 프로그램 자체를 바이너리 형태로 작성할 수 있게 합니다. v1.1 버전에서는 다중 턴 및 분포 외 성능이 개선되었습니다.
핵심 포인트
CRAP은 컴파일 과정 없이 프롬프트 기반으로 ELF 바이너리를 직접 생성합니다.
Gemma 4 E2B 모델을 파인튜닝하여 코딩 프로세스에 혁신을 가져왔습니다.
v1.1 버전에서 다중 턴 및 분포 외 성능이 개선되었음을 입증했습니다.
WebGPU를 통해 Q6_K GGUF 파일을 로드하고 바이너리 생성을 시연합니다.
AI 자동 생성 콘텐츠
본 콘텐츠는 r/LocalLLaMA의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.
여러분께 좋은 소식이 있습니다! 컴퓨터 과학 분야에 혁명을 일으키겠다는 영감을 받아, 이제 코딩이 해결되었다고 보고할 수 있게 되었습니다! 물론, 단순히 출력하고 종료하는 x86 Linux 바이너리에만 해당되지만요. 하지만 '큰 여정'이나 '작은 단계' 같은 것들은 말이죠. CRAP (Compiler Replacement for Assembling Programs)는 Gemma 4 E2B 파인튜닝 모델로, 'boop'을 출력하는 리눅스 x86_64 바이너리를 생성하라는 프롬프트를 받으면 작동하는 ELF 바이너리(대부분의 경우, 항상 헥사 형식으로)를 방출합니다. 보세요, 프로그램은 어쨌든 바이너리로 끝나기 때문에, 왜 중간 단계를 건너뛰고 바이너리 자체를 작성하지 않을 수 있겠습니까? 컴파일러도, 어셈블러도, 도구 호출(tool calls)도 필요 없습니다. v1.1 버전이 출시되었으며 다중 턴 및 분포 외 성능이 개선되었습니다. 저를 믿으세요, 저는 이것이 매우 중요한 작업이라는 것을 압니다. https://preview.redd.it/gngsbvezc1zh1.png?width=1076&format=png&auto=webp&s=481f6ea0897d2f324272b59b6bf42c337daf3b2d v1.1 평가 수치 (전문가를 위한 평가): (평가는 동작에 대한 점수입니다: 바이너리는 실행되어야 하고, 올바른 문자열을 출력하며, 올바른 코드로 종료해야 합니다.): 제외된 레거시 세트(Held out legacy set): 20/23 (v1과 동일) / 새로운 문자열(Novel strings): 26/40 (v1: 8/40) / 다중 턴(~3 턴)(Multi turn (~3 turns)): 10/12 (v1: 0/12) / 이중 문자열(Doubled character strings, 예: boom 등): 18/24 (v1: 2/24) / 학습하지 않은 무작위 오류 종료 코드(Random jank exit codes it never trained on): 23/25 흥미로운 정보 하나를 드리자면: 한 번의 학습 실행에서 12개의 학습된 종료 코드 중 11개를 여전히 실패했음에도 불구하고 0.038 손실을 기록했습니다. 따라서 기울기 하강(gradient descent)이 작업 완료 상승(task completion ascent)을 의미하지는 않습니다. 게다가 브라우저에서도 작동합니다. https://preview.redd.it/xkz0lvr1d1zh1.png?width=760&format=png&auto=webp&s=5c5be9a9c3f4cee8663f20fea79097480a857438 데모는 WebGPU를 통해 wllama로 Q6_K GGUF(~3.6 GiB) 파일을 로드하고, 헥사(hex) 데이터를 스트리밍하며, 이를 파싱하여 사용자가 직접 실행할 수 있는 ELF 파일을 제공합니다 (물론, 실제 바이너리를 다운로드하여 실행해야 합니다. 브라우저가 그렇게 해주지는 않습니다). Q6_K는 전체 f16의 144개 중 109/144점을 기록한 반면, f16은 114/144점을 기록했습니다 (Q6에서 실패한 다섯 개 항목은 완전히 손상된 바이너리가 아니라 잘못된 값입니다). Q4_K_M은 144개 중 3점만 기록했기 때문에 데모에서는 사용하지 않습니다 (그 양자화(quant)는 형편없습니다. CRAP이 아닙니다)... 관련하여.
(비하하는 사람들을 위한) 세부 사항: 문자열을 출력하고 종료하는 프로그램만 생성할 수 있습니다. 명백히 컴파일러는 이를 결정론적(deterministically)으로, 정확하게, 그리고 밀리초 단위로 수행합니다. 반면 CRAP은 여러 기가바이트의 가중치(weights)를 사용하여 더 느리고 때로는 부정확하게 수행합니다. /u/matthewhaynesonline 제출 [링크] [댓글]