00:00:00모델이 강력해지기 시작하면서부터 많은 사람들이 정말 멋진 제품들을 만들기 시작했고,
00:00:04여기에 모델을 통합해서 우리 삶의 많은 문제들을 해결해 주고 있습니다. 하지만 이런 시스템은
00:00:09특히 API를 통해 모델을 연동할 경우 토큰 소모량이 엄청납니다. 이에 대한 해결책은 생각보다
00:00:15훨씬 간단합니다. 최선의 아키텍처는 복잡한 파이프라인이나 대규모 튜닝이 아니라,
00:00:20사실 유닉스 기반 시스템의 근간이 되는 '모든 것은 파일이다'라는 오래된 철학에 있습니다.
00:00:25물론 유닉스에서 이 말이 모델 비용을 뜻하진 않았고 장치와 파일에 관한 것이었죠. 하지만
00:00:30놀랍게도 이 고비용 문제의 해결책도 정확히 같은 원칙에서 찾을 수 있습니다. 이것이 바로
00:00:35Vercel의 한 소프트웨어 엔지니어가 이야기하는 내용입니다. 왜 파일이 해결책인지 알아보기 전에,
00:00:41먼저 이 모델들이 실제로 어떻게 작동하는지 몇 가지 이해해 봅시다. 모델들은
00:00:46방대한 양의 코드를 학습했습니다. 그렇기 때문에 모델이 코드나
00:00:50디렉토리 구조, 그리고 개발자들이 파일을 찾고 탐색할 때 쓰는 네이티브 배시 스크립트를 더 잘 이해하는 것이죠.
00:00:56에이전트가 grep이나 ls를 사용하는 것은 새로운 일을 하는 게 아닙니다. 단지 이미 할 줄 아는 것을
00:01:01더 통제된 방식으로 수행하는 것뿐입니다. 이 접근 방식은 코드에만 국한되지 않습니다. 에이전트는
00:01:06코드가 있든 없든 어떤 디렉토리든 탐색할 수 있는데, 이미 명령에 익숙하고 파일 시스템을 이해하고 있기 때문입니다.
00:01:11에이전트는 무언가 필요할 때마다 ls나 find 같은 네이티브 배시 명령어를 사용해 파일 시스템을 훑어봅니다.
00:01:17find로 정확한 파일을 찾아내면,
00:01:23grep과 cat을 이용한 패턴 매칭으로 파일 내에서 관련 내용을 검색합니다.
00:01:27이렇게 하면 관련 있는 아주 작은 정보 조각만 모델로 전송되고 나머지는 메모리 밖에 머물게 되어,
00:01:32컨텍스트 윈도우를 깨끗하게 유지합니다. 즉, 모델에 불필요한 데이터에
00:01:36토큰을 낭비하지 않는다는 뜻입니다. 이 방식을 통해 에이전트는 구조화된 결과를 반환합니다.
00:01:41이 패턴이 워낙 효과적이라 Vercel은 아예 이를 기반으로 한 배시 도구를 오픈 소스로 공개했습니다.
00:01:46에이전트가 개발자와 똑같은 방식으로 파일 시스템을 탐색할 수 있는 능력을 부여한 것이죠.
00:01:51대규모 언어 모델 시스템을 구축할 때 모델에 적절한 정보를 제공하는 방법은 두 가지가 있습니다.
00:01:56에이전트가 잘 따라주길 바라며 상세한 시스템 프롬프트를 제공하거나,
00:02:00벡터 데이터베이스에 방대한 데이터를 넣고 시맨틱 검색으로 추출하는 방식입니다. 하지만
00:02:06각 접근 방식에는 한계가 있습니다. 시스템 프롬프트는 토큰 창의 제한 때문에
00:02:10한 번에 보낼 수 있는 정보량이 제한됩니다. 더 큰 데이터셋을 다루기 위해 시맨틱 검색을 사용하는데,
00:02:15이는 쿼리와의 의미적 유사성을 바탕으로 정보를 찾습니다. 하지만 벡터 검색은
00:02:20정확한 검색보다는 의미적 유사성을 위한 것입니다. 쿼리의 일반적인 맥락과 일치하는 데이터 덩어리들을 반환할 뿐,
00:02:25우리가 찾는 구체적인 값이라는 보장은 없습니다. 결국 수많은 데이터 덩어리에서 정확한 내용을 추출하는 건 모델의 몫으로 남죠.
00:02:30반면 파일 시스템은 다른 접근 방식을 제공합니다. 파일 시스템을 사용하면 구조가
00:02:35실제 도메인과 매칭됩니다. 종종 폴더 구조 내의 파일 간 관계가
00:02:40상위 폴더 간의 관계를 그대로 반영하기도 합니다. 파일 시스템을 사용하면
00:02:45이러한 관계들을 모델이 이해하는 벡터 덩어리로 평탄화할 필요가 없으므로,
00:02:49시맨틱 검색에서 흔히 발생하는 관계 정보 누락을 방지할 수 있습니다. 이러한 계층적
00:02:54연결이 자연스럽게 보존되어 데이터에 이미 존재하는 조직적 논리가 유지됩니다.
00:02:59또 다른 장점은 검색이 정밀하다는 것입니다. grep이나 배시 도구는 정확히 일치하는 결과를 반환하지만,
00:03:05벡터 검색은 쿼리와 느슨하게 일치하는 모든 덩어리를 반환한 뒤 모델이 무엇을 쓸지 결정하게 합니다.
00:03:10파일 시스템 방식은 필요한 값만 딱 가져옵니다. 에이전트가 배시 도구를 사용하면
00:03:15정확히 필요한 데이터 덩어리만 받기 때문에 컨텍스트가 최소화되고, 다른 불필요한 데이터들은
00:03:20메모리에 들어가지 않습니다. 덕분에 에이전트는 무관한 데이터에 매몰되지 않고
00:03:25정확한 정보 조각에만 집중하여 정렬된 상태를 유지할 수 있습니다. 사실 이 아이디어는 여러분에게 생소한 게 아닙니다.
00:03:30이미 'Claude Code'나 모든 CLI 에이전트에서 패턴 매칭을 통해 검색 범위를 좁히는 배시 함수를 사용하고 있습니다.
00:03:36저희도 이미 검토하는 모든 아이디어의 조사 용도로 파일 시스템과
00:03:41Claude Code의 기능을 활용해 왔습니다. 보통 새로 접한 소프트웨어 툴을
00:03:46이 파이프라인에 통과시키는데, 여기에는 조사가 거쳐야 할
00:03:51평가 기준이 담긴 여러 단계가 포함되어 있습니다. 이 모든 것은 마크다운 파일에 정의되어 있는데,
00:03:56테스트 중인 도구의 요구 사항과 목표, 최종 문서 작성법,
00:04:01그리고 각 단계에 필요한 모든 정보가 들어있습니다. 또한 Claude에게 특정 문서들을 샘플로 제공하여
00:04:06스타일 가이드 역할을 하게 하고, 최종 문서는 'research results' 폴더에 저장됩니다.
00:04:11조사를 안내하기 위해, 아이디어를 각 단계별로 어떻게 통과시키는지 설명하는 Claude.md 파일을 두어
00:04:17결과적으로 모든 체크리스트를 만족하는 조사 보고서를 얻게 됩니다.
00:04:22조사할 것이 생길 때마다 저는 그냥 Claude에게 가서 아이디어나 조사할 도구를 말해줍니다.
00:04:27그러면 Claude는 먼저 도구나 아이디어를 파악한 뒤 6단계 검증 프로세스를 하나씩 가동합니다.
00:04:32모든 단계를 마치면 Claude는 최종 보고서를 생성하고,
00:04:37우리는 이를 읽고 해당 아이디어가 잠재력이 있는지 확인하면 됩니다. 이 파일 시스템 방식은
00:04:42일일이 수동으로 해야 했을 조사 과정을 자동화함으로써 엄청난 시간을 절약해 줍니다.
00:04:47여러분의 상황에 맞게 이 파이프라인을 직접 시도해보고 싶다면,
00:04:52저희가 최근 출시한 'AI Labs Pro' 커뮤니티에서 저희와 유사한 조사 파이프라인을
00:04:57구축할 수 있는 즉시 사용 가능한 템플릿을 받으실 수 있습니다. 이번 영상은 물론
00:05:03이전의 모든 영상에 대해 프로젝트에 바로 적용할 수 있는 템플릿, 프롬프트, 모든 명령어와 기술을 제공합니다.
00:05:08저희 활동이 가치 있다고 느끼고 채널을 후원하고 싶으시다면 이것이 가장 좋은 방법입니다. 링크는 설명란에 있습니다.
00:05:12Vercel의 사례 연구를 읽어보던 중 이 아키텍처를 이용해
00:05:17판매 요약 에이전트를 만드는 법을 보았습니다. 그들이 오픈 소스로도 공개했지만,
00:05:22그걸 보고 직접 시도해보고 싶은 정말 흥미로운 아이디어가 떠올랐습니다.
00:05:27당시 저는 부서별로 구분된 JSON, Markdown, TXT 파일 형태의 방대한 회사 데이터를
00:05:32활용하는 사내 규정 프로젝트를 만들고 있었습니다. 평소라면 Chroma 같은
00:05:39벡터 데이터베이스를 사용했겠지만, 이번에는 이 도구를 한번 써보기로 했습니다. 그래서
00:05:44이 아키텍처를 구현해 봤습니다. 백엔드에는 회사 데이터가 들어있는 문서 폴더의 경로를 포함하고
00:05:49에이전트에게 ls, cat, grep, find 명령어 권한을 주었습니다. 도구 사용법과 각 명령어를 언제 쓸지에 대한 가이드도 함께요.
00:05:55모델은 Gemini 2.0 Flash를 사용했고 여기에 Vercel의 배시 도구를 제공하며 도구 내 문서 경로를 지정해 주었습니다.
00:06:01그러자 데이터와 관련된 어떤 질문을 던졌을 때 에이전트는
00:06:06사내 핸드북이나 휴가 규정 문서 등
00:06:11회사의 실제 정책 내용을 바탕으로 정확하게 답변했습니다. 어떻게 작동하는지 확인하기 위해
00:06:16터미널에 기록된 도구 사용 로그를 살펴보았습니다. 에이전트는 먼저 ls 명령어로 어떤 문서가 있는지 확인한 다음,
00:06:21grep의 패턴 매칭을 사용해 '휴무일'이나 유사한 용어를 찾았습니다.
00:06:27이 명령어 세트가 쿼리를 처리했고 기존 RAG 시스템과 동등한 수준의 정확도로 결과를 내놓았습니다.
00:06:32이 프로젝트의 소스 코드가 필요하시다면 저희 커뮤니티에서 다운로드하여 직접 체험해 보실 수 있습니다.
00:06:38이 도구를 살펴보면서 가장 먼저 들었던 생각은,
00:06:43에이전트가 서버에서 직접 명령어를 실행하게 하는 것이 정말 안전할까 하는 것이었습니다. 실제로
00:06:47지난 12월 React 서버 컴포넌트에서 최고점인 10.0점짜리 취약점이 발견되기도 했는데,
00:06:52이 역시 서버에서의 코드 실행과 관련된 것이었죠. 따라서 에이전트에게 이런 권한을 주는 것은 정말 강력하면서도 잠재적으로 위험합니다.
00:06:57그럼에도 제가 이 도구를 신뢰한 이유는 무엇일까요? 바로 샌드박스에서 실행되고 격리되어 있기 때문입니다.
00:07:03우리가 지정한 특정 디렉토리에만 접근할 수 있고 다른 어떤 것도 수정하지 않습니다.
00:07:08기사에서도 언급되었듯이 에이전트는 운영 시스템에 대한 접근 권한 없이 파일을 탐색하므로,
00:07:14에이전트가 서버에서 해로운 명령을 실행하려 하더라도 운영 코드는 안전하게 유지됩니다. 이 도구는 두 가지 격리 방식을 제공합니다.
00:07:19첫 번째는 인메모리 환경입니다. 이 설정에서는 에이전트를 만들 때처럼
00:07:24접근 권한이 있는 파일에서만 배시 스크립트를 실행하는 배시 도구만을 사용합니다.
00:07:29두 번째는 Vercel 샌드박스를 이용해 가상 머신 수준의 격리를 제공하는
00:07:35완전 호환 샌드박스 환경입니다. 필요에 따라 선택할 수 있죠.
00:07:40인메모리 방식은 간단한 유스케이스에 더 가볍고 빠르며, 강력한 보안 보장이 필요할 때는
00:07:46완전 VM 격리가 더 적합합니다. 비록 이 방식이 모델 호출당 비용을 절감하는 데 매우 훌륭하지만,
00:07:51모든 종류의 문제에 적합한 해결책은 아닙니다. 단어의 의미적 매칭이 필요한 경우에는
00:07:56배시 도구가 정확한 일치만을 찾기 때문에 이상적이지 않습니다. 에이전트를 호출했을 때 보았듯이,
00:08:01에이전트는 특정 키워드를 사용해 필요한 데이터를 찾습니다. 또한 파일 구조가 엉망인 경우
00:08:06에이전트가 수많은 도구 호출을 하며 헤맬 수 있어 적합하지 않습니다. 에이전트가 탐색하기 쉬운 구조가 훨씬 유리합니다.
00:08:11제 개인적인 제안은, 데이터가 고도로 구조화되어 있고 요청 사항이 무엇을 원하는지 명확할 때는 배시 도구를 사용하라는 것입니다.
00:08:17반면 파일에 적힌 내용의 '의미'가 더 중요하거나 쿼리가 모호할 가능성이 높을 때는 RAG를 사용하세요.
00:08:22마무리하기 전에 후원사 소식을 전해드립니다. 바로 Brilliant입니다. 최고의 엔지니어는 단순히 문법만 아는 것이 아니라,
00:08:27문제를 근본 원리부터 분석합니다. 저희가 Brilliant와 파트너십을 맺은 이유도 그것입니다.
00:08:32그들의 철학은 '직접 해보며 배우는 것'입니다. 단순 암기가 아니라 개념을 직접 다뤄보는 능동적인 문제 해결을 우선시하죠.
00:08:37예를 들어 “AI 작동 원리” 코스에서는 읽기만 하는 게 아니라 실제 로직을 조작해 봅니다.
00:08:42손실 공간에서 손실을 계산하고 보간법을 시각화하는 등의 기술적 내용을 직접 다루며,
00:08:47영상 강의로는 얻을 수 없는 깊은 직관을 쌓을 수 있습니다. 인터랙티브한 기술 코스들을 통해
00:08:52우리가 이야기한 개념들을 진정으로 마스터하는 가장 효과적인 방법을 경험해 보세요.
00:08:57또한 연간 프리미엄 구독 시 20% 할인을 받아 수학, 데이터, CS 전 과정을
00:09:02제약 없이 이용하며 실력을 키울 수 있는 로드맵을 확보할 수 있습니다. 영상 설명란의 링크를 클릭하거나
00:09:07화면의 QR 코드를 스캔해 30일 무료 체험을 신청하세요. 이것으로
00:09:12오늘 준비한 영상을 마칩니다. 저희 채널을 응원하고 이런 영상을 계속 제작하는 데 힘을 보태고 싶으시다면
00:09:17아래의 Super Thanks 버튼을 이용해 주시면 감사하겠습니다. 시청해 주셔서 감사합니다. 다음 영상에서 뵙겠습니다.
00:09:22or scan the QR code on your screen to claim your free 30-day trial. That brings us to the end of
00:09:28this video. If you'd like to support the channel and help us keep making videos like this, you can
00:09:32do so by using the super thanks button below. As always, thank you for watching and I'll see you in the next one.