OpenClaw...
on
얼마전엔 하도 RAG에 대해서 떠들기에 RAG도 해봤다. 그놈의 ai agent라는 것의 맛을 좀 볼 생각으로 말이다. langchain/langgraph라는 것도 좀 들여다보고.
나같이 지극히 평범한 사람의 눈으로 보기에는 RAG의 핵심은 주어진 자료를 어떻게 indexing/embedding하느냐와 그렇게 만들어진 db를 어떻게 불러와서 어떻게 LLM에게 전달하느냐에 있었다. 깊이 빠져서 시간을 날려버리기 전에 빨리 빠져나왔다. 이것이야 말로 연륜의 힘(?) 이랄까.
과거의 방식과 비교하자면, 조금 비약일지 몰라도 정적이었던 if-then 문법이나 정규표현식(Regex)의 한계를 넘어선 것으로 보였다. LLM을 이용해 ‘문맥’이라는 유연한 조건을 걸고 고차원적인 자동화(Automation)를 시도하는 셈이다. 이미 LLM API가 보편화된 덕분에, 거대한 지능 덩어리를 내 스크립트 안의 함수나 외부 라이브러리처럼 가볍게 호출할 수 있게 된 덕분이다.
여기서 굳이 ‘에이전트(Agent)’라는 이름을 달게 된 결정적인 이유는 ‘반복(Iteration)’에 있다. 원하는 조건에 도달하지 못했을 때, 스스로 해결책을 찾아 다시 시도하며 목표를 향해 나아가는 과정이 가능해졌기 때문이다. 고전적인 프로그래밍이 모든 방법과 절차를 일일이 규정해야 했다면, 이제는 목표값에 도달할 때까지 LLM이 스스로 문제를 풀어나가도록 유도할 수 있다는 엄청난 차이가 있다.
결국 관건은 그 LLM의 지능 수준이 어떠한지, 그리고 실행 가능한 수단(Tools)을 얼마나 잘 마련해 주느냐에 달려 있다. 원하는 답을 끌어내기 위해 어떤 프롬프트를 설계하느냐는 여전히 개발자의 몫이다. AI를 에이전트로 부리든 지능 증폭용으로 쓰든, 결국 사용자의 핵심 역량은 ‘프롬프팅(Prompting)’으로 수렴된다는 사실을 다시금 체감한다. 사실상 ai를 agent로 부리든 지능을 증폭하는 용도로 사용하든 사용자의 능력은 prompting하는 것에 달려있다는 것이다.
이 와중에 얼마전부터 OpenClaw가 대유행이라 ‘나도 한번?’ 하는 가벼운 마음으로 설치해 봤다.
첫인상은 요즘 유행하는 vibe, 그러니까 zsh에 power10k를 얹은 듯한 그런 매끄러운 느낌이었다. 외부 LLM API를 쓸까 하다가, 성능이 좀 떨어지더라도 로컬 LLM(Local LLM)으로 돌리면 어떤 일이 벌어지는지 궁금해 먼저 시도해 봤다.
결과는 예상대로다. 응답은 느리고 대답은 엉뚱해서 실행조차 제대로 안 되는 게 태반이었다. ‘에이전트’라기보다는 손 많이 가는 ‘애물단지’에 가까웠다. 게다가 OpenClaw를 로컬 환경에 최적화하는 과정도 제대로 정리된 자료가 없어 한참을 헤매야 했다.
그놈의 AI 에이전트를 잘 쓰면 미래의 지배자가 된다는데, 그것은 어디까지나 지능 수준이 압도적인 LLM을 전제로 할 때나 가능한 이야기임을 직관적으로, 그리고 경험적으로 깨달았다. 오랫동안 맞춰가며 ‘죽이 맞는’ 그런 관계가 아니라, 지능 자체가 너무 높아서 나뿐만 아니라 대중의 의중을 꿰뚫어 보는 수준의 AI 말이다.
소규모 로컬 LLM 따위가 그런 일을 해낼 리 만무하다. 그렇다고 GB10이나 M3 Ultra 같은 고사양 장비를 덜컥 들이는 것도 무리일 테고.
이제는 세상의 흐름이 주기적으로 반복되는 것을 보며 그 유사성과 차이점을 스스로 찾아내려는 나 자신을 발견한다. 이런 시도가 재미있기도 하지만, 한편으로는 ‘내가 벌써 그럴 나이인가’ 자문하게 된다. 10년, 20년 전을 되돌아보면 당시에도 세상은 비슷한 일로 들썩였고 비관론과 낙관론이 교차했다. 하지만 지나고 보면 대세는 결국 완만하게 우상향했다.
틈만 나면 세상의 흐름을 예측하려 들고, 운 좋게 맞아떨어지면 그걸로 ‘한탕’ 해볼까 꿈꾸다가도 이내 답답해하고 불안해하는 게 내 본모습인가 싶다. 사실 내가 흐름을 예측한다는 건 가능과 불가능의 차원을 넘어선 문제다. 수백만 번 다시 태어나도 닿을 수 없는 안드로메다에 가보겠다고 고집 피우는 것과 무엇이 다를까.
매일 변화하는 자산 시장의 그래프를 보고 있으면 예전 전공 서적에서 배웠던 ‘Random Fading’ 곡선이 떠오른다. Short-term과 Long-term fading이 섞인 그 곡선 말이다. 다만 실제 시장은 Low-pass filtering이 덜 된 것처럼 아주 날카롭고 미세한 변화가 빠르게 요동친다. 미시적으로 보면 한없이 복잡하고 어렵지만, 거시적으로 보면 그래도 어느 정도 예측 가능한 궤적이 보인다는 게 묘하다.
인생의 매 순간을 예측하고 바라는 대로 흘러가길 고집하는 삶. 그것이 어긋날 때마다 스스로의 능력을 의심하고 세상을 탓하는 게 얼마나 무의미한지 잘 안다. 하지만 여전히 그 ‘중생심’을 버리지 못한 채 하루하루를 낭비하고 있다. 중생이 중생을 벗어나려 한들, 그게 말처럼 쉬운 일일까.
그냥 생긴 대로 살기로 했다. 어리석으면 어리석은 대로 살자. 여전히 어리석기에 무모할 수 있고, 또 순수할 수 있는 것 아닐까. 아직 중생심 충만한 지금의 나를 즐기려 한다. 이럴 시간도 그리 많이 남지는 않았을 테니까.