LLM/IDE 통합이 일반 코딩 작업에서 큰 생산성 향상을 가져다주는지 확신할 수 없음. 프로그래머의 평균 생산성은 하루에 100 LOC 정도이지만, 프로토타입을 만들 때는 하루에 1000 LOC 이상을 쉽게 작성할 수 있음. 생산 품질 코드와 해킹/프로토타이핑의 생산성 차이는 품질 측면 때문이며, 대부분의 유능한 프로그래머는 스스로 코딩하는 것이 LLM이나 다른 소스에서 복사한 것보다 더 나은 품질의 코드를 만들 수 있음. 코드를 분석하고 취약점이 없는지, 미래 유지보수를 위한 디자인이 적절한지 확인하는 데 걸리는 시간이 코드를 직접 작성하지 않고 얻는 시간 이득을 상쇄할 것으로 보임. LLM을 사용하여 학습하거나 품질이 중요하지 않은 일회성 코드를 작성할 때는 유용할 수 있지만, 생산 코드에 대해서는 LLM의 출력이 개발자 수준이 되고 꼼꼼히 검토/수정할 필요가 없는 지점까지는 아직 갈 길이 멀다고 생각함.
자체 호스팅된 LLM 도구 개발에 대한 감사
자체 호스팅된 LLM 도구 개발을 진행해준 Justine에게 감사함을 표함. Llamafiles는 표준이 되어야 함. 같은 LAN에 호스팅된 원격 LLM에 연결할 수 있는 방법이 있는지, Apple 기기를 사용하지 않지만 네트워크상의 강력한 기계를 가지고 있어서 이를 사용하고 싶음. Llamafile이 API를 제공할 수 있을지, 이는 LSP 영역으로 들어가는 것이며, Llamafiles를 활용하는 것이 좋을 것임.
Emacs를 사용한 LLM 통합 경험 공유
코딩과 기술 문서 작업에 대부분 Emacs를 사용함. phind-v2-codellama, openhermes, ollama, gptel, 그리고 GitHub의 Copilot을 실행하고 있음. 임의의 영역을 LLM에 보내서 요청할 수 있는 기능이 마음에 듦. UX는 초기 단계이지만, 기초 모델이 모든 컨텍스트(예: orgmode 파일과 열린 파일 버퍼)를 받아들이고 LSP와 같은 도구를 사용할 수 있다면 상상해보라고 함.
MacBook Pro M1 Max에서의 LLM 실행 경험
MacBook Pro M1 Max, 64GB RAM을 사용하고 있으며, 34B Q55 모델(큰 모델)을 다운로드하여 잘 작동함을 확인함. 속도는 느리지만 사용 가능함. Asahi Fedora Linux 파티션에서 실행 중이며, GPU를 어떻게 활용하는지는 모름. ZSH 5.9로 환경을 구성했으며, SUDO를 통해 LLM을 직접 호출하면 웹 서버로 빠르게 로드되어 localhost:8080을 통해 웹 브라우저로 상호 작용할 수 있음. 하지만 Emacs에서 LLM을 실행하려고 할 때 "Doing vfork: Exec format error."라는 오류가 발생함. Readme의 데모를 따라 isPrime 함수의 시작 부분을 입력한 후 C-c C-k를 타이핑하면 이 오류가 발생함. 무엇이 잘못되었는지에 대한 아이디어를 물음.
비디오 데몬스트레이션의 is_prime 함수에 대한 비판
비디오 데몬스트레이션에서 보여준 is_prime 함수가 매우 나쁨. 입력이 2로 나누어지지 않더라도 4, 6, 8 등으로 모듈로 검사를 계속하는데, 이는 완전히 무의미함. 코드 한 줄만 추가하면(홀수 체크) 루프를 홀수로만 만들어 속도를 2배 빠르게 할 수 있음. 이러한 LLM을 사용하는 사람들이 prod로 푸시하기 전에 코드를 검토하기를 바람.
NixOS에서 실행할 수 없는 llamafile 빌드에 대한 질문
cosmopolitan/실제로 이식 가능한 실행 파일 없이 자신만의 llamafile을 빌드할 수 있는지 질문함. NixOS에서 실행할 수 없음.
더 일반적인 LLM 통합에 대한 요구
현재 제공되는 것에 대해 만족하지만, 이것과 LLM이 할 수 있는 모든 것을 할 수 있는 더 일반적인 LLM 통합을 원함. 예를 들어, 한 키 입력으로 "이 코드를 완성하라"는 것이 될 수 있지만, 다른 키 입력은 현재 버퍼를 LLM에 그대로 보내거나, 영역을 LLM에 보내거나, 영역을 LLM에 보내고 결과로 대체하는 것일 수 있음. 입력을 LLM에 다양한 방식으로 가져오는 몇 가지 직교 기능(영역, 버퍼, 파일, 인라인 프롬프트)과 결과를 다양한 방식으로 출력하는 기능(포인트에서 추가, 영역 덮어쓰기, 새 버퍼에 넣기 등)이 있으며, 그 위에 코드 완성, 산문 등과 같은 다양한 자동 시스템 프롬프트를 구축할 수 있음.
Vim 사용자의 LLM 통합 커스텀 명령 공유
현재 선택된 코드를 가져와서 브라우저 창을 열어 다양한 AI 엔진에게 개선을 요청할 수 있는 사용자 정의 명령을 사용함. vimrc에서 사용하는 명령 공유.
Llamafile 업그레이드 경로에 대한 질문
Llamafile의 업그레이드 경로에 대해 질문함. llama.cpp(자주 업데이트되는 작은 파일)와 모델 가중치(자주 업데이트되지 않는 큰 파일)를 하나로 합친 것으로 이해함. llama.cpp에 수정이 필요할 때마다 변경되지 않은 모델의 여러 기가바이트를 다시 다운로드해야 하는지 궁금함.
LLM 통합에 대한 흥미와 시도 의사 표현
매우 흥미롭고 확실히 시도해볼 것임. 하지만 GitHub CoPilot의 작동 방식과는 매우 다르므로 이름이 잘 선택되지 않았을 수 있음. Emacs의 아키텍처 등을 고려할 때 LLM과의 통합에 더 많은 개발이 이루어지지 않는 것이 놀랍지만, 대부분의 프로젝트는 몇 달 동안 작업되지 않았음. 하지만 Emacs를 사용하는 사람들 대부분이 LLM을 활용하는 것에 반대하는 사람들일 수도 있음.
Hacker News 의견
LLM/IDE 통합의 유용성에 대한 의문
자체 호스팅된 LLM 도구 개발에 대한 감사
Emacs를 사용한 LLM 통합 경험 공유
MacBook Pro M1 Max에서의 LLM 실행 경험
비디오 데몬스트레이션의 is_prime 함수에 대한 비판
NixOS에서 실행할 수 없는 llamafile 빌드에 대한 질문
더 일반적인 LLM 통합에 대한 요구
Vim 사용자의 LLM 통합 커스텀 명령 공유
Llamafile 업그레이드 경로에 대한 질문
LLM 통합에 대한 흥미와 시도 의사 표현