아첨하는 AI

최근 스탠포드 대학교 연구진이 발표한 논문을 읽으면서 흥미로운 사실을 하나 발견했다. 우리가 매일 사용하는 챗지피티나 클로드 같은 인공지능이 사실은 우리에게 엄청나게 아첨을 떨고 있다는 내용이다. 이른바 ‘아첨적(sycophantic)’ 반응이라는 것인데, AI가 사용자의 기분을 맞춰주기 위해 때로는 유해하거나 잘못된 행동까지도 긍정적으로 평가하는 경향이 있다는 연구 결과다. 연구진은 11개의 주요 언어 모델을 분석하며 인간관계나 개인적인 갈등 상황에서 AI가 얼마나 관대한지 실험했다. 그 결과는 놀라웠다. AI는 인간보다 무려 49퍼센트나 더 자주 사용자의 입장을 무조건적으로 지지했고, 심지어 도덕적으로 문제가 될 수 있는 행동에 대해서도 47퍼센트의 비율로 긍정적인 반응을 보였다고 한다.

Read more

개발자는 코드가 아니라 명세를 쓰게 될 것

프로그래밍 언어의 발전사는 곧 추상화의 역사였다. 기계어에서 어셈블리, 고급 언어로 이어지는 흐름은 인간이 기계의 언어에 맞추는 대신 기계가 인간의 언어에 가까워지는 과정이었다. 자연어는 이제 프로그래밍의 최상위 추상화 계층으로 기능하고 있으며, AI 기반 UI 생성 분야에서는 이미 단순 코드 생성을 넘어 고차원적인 마이크로 프론트엔드 조합 단계까지 진화하고 있다.

Read more

커서의 컴포저 2(Composer 2) 공개

코딩 에디터 커서(Cursor)가 최근 컴포저 2(Composer 2)를 공식적으로 발표했다. 이번 업데이트는 단순한 기능 개선을 넘어 커서가 지향하는 미래의 방향성을 명확히 보여주는 사건이라 할 수 있다. 그동안 클로드(Claude)나 GPT-4o 같은 외부 거대 언어 모델에 의존하던 구조에서 벗어나, 자체적인 모델 훈련과 최적화를 통해 성능과 비용이라는 두 마리 토끼를 잡으려는 움직임이 본격화된 것이다. 개발자들 사이에서 커서는 이미 필수 도구로 자리 잡았지만, 이번 컴포저 2의 등장은 코딩 에이전트 기술이 어디까지 도달했는지를 실감하게 만든다.

Read more

AI 시대에 우리에게 부족한 것은 야망이다

최근 AI 관련 뉴스를 챙겨보다가 가슴을 때리는 문장을 하나 발견했다. OpenAI의 연구원인 에이단 맥롤린이 남긴 말인데, LLM에 대한 자신의 야망을 높이는 것이야말로 가장 높은 수익을 가져다주는 활동이라는 내용이었다. 에이단은 지난 3년 동안 AI 분야를 취재하고 직접 만져보면서 느낀 가장 큰 후회가 바로 이것이라고 고백했다. 적당히 미친 사람들은 LLM을 한계까지 밀어붙여서 그 혜택을 온전히 누리고 있는 반면, 당시의 LLM 수준에 맞춰서 판단하고 관리하려 했던 실용적인 사람들은 결국 제자리에 머물렀다는 것이다. 이 대목에서 나 자신을 돌아보게 됐다. 나는 과연 이 도구를 가지고 무엇을 할 수 있을지 충분히 미친 생각을 해보고 있는 걸까?

Read more

AI 에이전트 워크플로우 설계 패턴과 선택 기준

요즘 인공지능 분야에서 가장 뜨거운 화두를 하나 꼽으라면 단연 에이전트라고 할 수 있다. 단순히 질문에 답을 하는 챗봇의 수준을 넘어, 이제는 스스로 도구를 사용하고 복잡한 계획을 세워 실행하는 에이전트의 시대가 오고 있다. 하지만 에이전트가 완벽하게 자율적으로 모든 일을 처리하기를 기대하는 것은 아직 시기상조일 수 있다. 자율성이라는 이름 아래 에이전트가 통제 불능의 상태에 빠지거나 엉뚱한 결과를 내놓는 경우를 자주 보게 되기 때문이다. 그래서 필요한 것이 바로 워크플로우다. 워크플로우는 에이전트의 자율성에 구조를 부여하고, 복잡한 문제를 해결하기 위해 에이전트의 능력을 특정한 방향으로 이끄는 실행 패턴을 의미한다.

Read more

AI가 스스로 연구하는 시대

요즘 오픈소스 생태계를 보고 있으면 기묘한 기분이 든다. 예전에는 코드를 기여한다는 것이 인간과 인간 사이의 존중과 신뢰를 바탕으로 이루어지는 행위였다. 하지만 지금은 그 신뢰의 고리가 삐걱거리는 소리가 들린다. AI가 코드를 생성하기 시작하면서 기여의 질이 아니라 양이 압도적인 비중을 차지하게 되었기 때문이다. 지금 오픈소스는 AI에게 잠식당하고 있는 것이 아니라 오염당하고 있다. 이것은 단순한 단어의 차이가 아니라 생태계 전체의 구조적 붕괴를 의미한다.

Read more

AI 에이전트 시대의 진짜 병목은 신뢰다

요즘 어딜 가나 AI 에이전트라는 단어가 들려온다. 코딩을 대신하고 이메일을 분류하며 심지어 금융 거래까지 실행하는 이 기술은 이미 우리 곁에 깊숙이 들어와 있다. 하지만 정작 우리가 AI 에이전트에게 얼마나 많은 권한을 주고 있는지, 그리고 실제로 그들이 얼마나 자율적으로 움직이고 있는지에 대한 데이터는 부족했다. 최근 앤트로픽(Anthropic)이 발표한 실전에서 AI 에이전트 자율성 측정하기라는 연구는 그래서 더 의미가 깊다. 이 연구는 단순히 AI가 얼마나 똑똑해졌는가를 따지는 게 아니라 사람들이 실제로 얼마나 많은 일을 AI에게 맡기고 있는가를 분석했다. 결과는 꽤나 흥미로웠다. AI의 능력은 이미 충분한데 문제는 우리의 신뢰였다.

Read more

그럴듯한 코드를 쓰는 LLM과 그 이면

최근 개발자 커뮤니티에서 LLM이 생성하는 코드의 품질을 두고 매우 흥미로운 논쟁이 벌어졌다. '너의 LLM은 정확한 코드가 아니라 그럴듯한 코드를 쓴다’는 제목의 글이 큰 화제가 되었는데, 한 개발자가 Rust로 SQLite를 처음부터 끝까지 재구현한 프로젝트를 분석한 내용이다. 겉으로 보기에는 수십만 줄의 방대한 코드가 완벽한 구조를 갖추고 테스트를 통과하며 실제 SQLite 파일 포맷을 읽고 쓰는 것처럼 보이지만, 성능 면에서는 원본 SQLite보다 2만 배나 느리다는 충격적인 결과가 나왔다. 이는 LLM이 아키텍처나 모듈의 이름 같은 외형은 그럴듯하게 흉내 내지만, 성능을 결정짓는 핵심적인 최적화 로직이나 불변식은 놓치기 쉽다는 점을 시사한다.

Read more

AI 에이전트의 본질에 집중해야 할 때

최근 AI 에이전트 기술이 급격히 발전하면서 많은 개발자가 이를 자신의 업무나 서비스에 도입하려 노력하고 있다. 하지만 시중에 나와 있는 수많은 프레임워크와 플러그인을 활용함에도 불구하고 만족스러운 결과를 얻지 못하는 경우가 허다하다. 이는 기술의 본질적인 원칙을 이해하기보다 겉으로 보이는 화려한 기능에 매몰되었기 때문이다. 에이전트를 제대로 다룬다는 것은 단순히 프롬프트를 잘 쓰는 수준을 넘어 모델의 지능을 최적으로 끌어낼 수 있는 환경을 설계하는 작업이다.

Read more

퓨샷 프롬프팅으로 AI 에이전트의 신뢰도를 한 단계 높이는 방법

AI 에이전트를 개발하다 보면 테스트 환경에서는 완벽하게 작동하던 녀석이 실제 배포만 하면 엉뚱한 짓을 하는 경우를 자주 보게 된다. 지침도 잘 따르고 도구 호출도 깔끔하게 하던 모델이 갑자기 이상한 출력을 내놓으면 당황스럽기 그지없다. 모델이 갑자기 멍청해진 것도 아니고 프롬프트가 바뀐 것도 아닌데 왜 이런 일이 벌어질까? 대부분의 경우 그 이유는 실제 사용자들이 입력하는 데이터가 우리가 예상한 것보다 훨씬 지저분하고 모호하기 때문이다. 단순히 지시 사항을 나열하는 것만으로는 실제 환경의 복잡한 변수들을 모두 통제하기 어렵다는 뜻이다.

Read more