▲ 121 · 89 comments on source · Hacker News · adi1 · 2 months ago
Launch HN: Bullet (YC S26) – 더 빠른 코딩 에이전트
HN 여러분 안녕하세요! 저희는 더 빠른 코딩 에이전트 Bullet을 만든 창업자 Adi와 Alex입니다. Bullet은 대학 4학년 기숙사에서 시작했습니다. 저희는 AppLovin과 Citadel에서 일한 지 얼마 안 된 상태였고, 당연히 스타트업 성공으로 가는 확실한 길 위에 있다고 생각했습니다. 주식 가격 계산 속도를 최적화하고 에이전트 문서 컨텍스트를 다뤄온 우리의 기술로 세상을 정복할 작정이었죠. 그래서 Bullet은 AI 헤지펀드로 시작해서, 브라우저 사용 에이전트, 합성 금융 데이터(으윽), 모바일 IDE, 그리고 수많은 다른 것들로 이어졌습니다. 사람들이 원하는 걸 만들고 싶었지만, 우리가 만든 모든 것이 그저 형편없거나 쓸모없거나, 아니면 둘 다인 것 같았습니다. 그래서 완전히 다른 것, 완전히 예상 밖의 것, 아무도 해본 적 없는 것을 하기로 했습니다. 바로 우리가 실제로 겪고 있는 문제를 해결하는 것이었죠. 여섯 번의 피벗을 거치면서 우리는 고통을 겪었습니다. 그 모든 모험 속에서 마지막 보스 하나가 계속 우리 앞을 가로막았습니다. Claude Code와 그의 동생 Codex였죠. 저희는 Claude Code와 Codex 같은 코딩 에이전트를 기다리느라 몇 시간씩을 보냈고, 너무 답답한 나머지 Claude Code 채찍까지 내려받았습니다. 우리는 여섯 개 코드베이스 분량의 쓸모없는 코딩 에이전트 작업을 기다리느라 몇 달을 허비했습니다. 번뜩이는 순간이었죠. 기성 체제를 부수는 것보다 숭고한 일은 없습니다! Claude Code와 Codex에 맞서자, 우리도 할 수 있어! 식은 죽 먹기지! 그래서 Bullet은 사이드 프로젝트로 시작했습니다. 우리는 Claude Code를 이용해 Claude Code를 개선했습니다: 1. 모델 라우팅. Sonnet이면 충분히 할 수 있었을 작업을 Fable에게 맡긴 걸 후회한 적 있으신가요? 2. 타겟팅된 코드 + 컨텍스트 검색. 저장소 전체를 임베딩하는 건 멍청하다고 생각합니다. 전체 컨텍스트(또는 압축된 컨텍스트)를 채팅에 집어넣는 것도 멍청하다고 생각합니다. 그래서 우리는 둘 다에 대해 더 빠르고 더 나은 grep을 수행합니다. 3. 공격적인 컨텍스트 위생. 도구 출력은 제한되고, 오래된 스크린샷은 사라지며, 파일을 다시 읽지 않습니다… 쓰레기가 모델에 절대 넘치지 않습니다. 4. 효율적인 턴. 독립적인 조사를 배치로 묶고, 한 번의 정밀한 편집을 한 뒤, 한 번의 집중된 검증을 수행합니다. 내부 측정 결과 왕복 횟수는 16% 줄고 비용은 27% 낮아졌습니다. 5. The Flash. 우리는 Barry Allen에게 속도를 기도했습니다. 그리고 Flash께 감사하게도, 그는 우리에게 속도를 주었습니다! SWE-bench Verified에서 Bullet은 한 번의 시도로 479/500(95.8%)을 해결했고, 작업당 평균 119초로, 작업에 따라 mini-SWE-agent + Fable/Sol보다 35–67% 더 빨랐습니다. 전체 결과와 방법론은 여기 있습니다( https://www.codewithbullet.com/blog/benchmark-results.html ) 결국 우리는 매일 그것을 쓰기 시작했고 다시는 돌아가지 않았습니다. 위에 나열한 것은 Claude Code에 대해 우리를 가장 답답하게 했던 것들 중 일부일 뿐이지만, 우리는 매일 끊임없이 최적화하고 있습니다(보세요, 어쩌면 우리가 직장에서 뭔가를 배웠는지도 모르겠네요). 개발 과정에서 가장 큰 통찰은 모델 속도보다 왕복 횟수를 줄이는 것이 더 중요하다는 것이었습니다. 독립적인 검색, 읽기, 명령은 병렬로 일어나야 하고, 의존적인 편집과 검증은 순차적으로 유지되어야 합니다. 의외의 장애물 하나는 코드 검색이었습니다. 정규식 방언 불일치 같은 작은 문제가 조용한 누락을 일으켜 에이전트를 완전히 잘못된 경로로 보냈습니다. 그래서 우리는 폴백과 제한된 컨텍스트를 갖춘 타겟팅 검색을 만들었습니다. 지금까지 가장 흥미로운 사용 사례는 벤치마크, 데이터 파이프라인, 평가 루프 같은 긴 반복 작업이었습니다. 각 단계가 이전 단계에 의존해서 여러 에이전트를 돌리는 것이 그다지 도움이 되지 않는 경우죠. 여기 비디오 데모가 있습니다( https://www.youtube.com/watch?v=rWVmG5fRKgE ) 저희만큼 속도 때문에 고통받고 계신다면 Bullet을 한번 써보시길 바라고, 그것이 여러분에게 기쁨과 무지개와 더 빠른 응답을 가져다주길 바랍니다. 그리고 만약 형편없다면, 형편없다고 알려주세요(저희는 마조히스트입니다)! 저희는 하루 종일 댓글에 있을 것이고, [email protected]으로도 연락하실 수 있습니다. https://codewithbullet.com 에서 사용해보실 수 있습니다. P.S: 웹사이트에 코드를 숨겨두었습니다. 푸터에서 비밀 페이지를 잠금 해제할 수 있는지 확인해보세요. 전부 Bullet으로 만들었습니다.
원문 게시글에서 발췌한 번역본입니다. 전문과 원문 댓글은 아래 링크에서 확인하세요.
Discussion on runchr
Loading comments…
to comment.