
OpenClaw-RL 완전 해부: AI 에이전트가 '대화하면서 스스로 똑똑해지는' 시대가 열리다
매일 쓰는 AI 에이전트가 사용자의 반응, 터미널 출력, GUI 변화까지 '다음 상태 신호'로 읽어 스스로 진화한다면? OpenClaw-RL 논문이 제시하는 '대화만으로 학습하는 에이전트'의 원리를 역사적 맥락부터 핵심 기술까지 쉽고 깊게 풀어본다.

매일 쓰는 AI 에이전트가 사용자의 반응, 터미널 출력, GUI 변화까지 '다음 상태 신호'로 읽어 스스로 진화한다면? OpenClaw-RL 논문이 제시하는 '대화만으로 학습하는 에이전트'의 원리를 역사적 맥락부터 핵심 기술까지 쉽고 깊게 풀어본다.
매일 AI 비서를 쓴다고 상상해 보자.
월요일, 보고서 초안을 부탁했더니 지나치게 격식체로 써왔다. "좀 더 캐주얼하게 써줘"라고 수정을 요청했다. 화요일, 같은 종류의 보고서를 부탁했더니 — 또 격식체다. 수요일도, 목요일도 마찬가지. 한 달이 지나도 이 AI는 "좀 더 캐주얼하게"를 기억하지 못한다.
이상하지 않은가? 인간 비서라면 한두 번 피드백을 받으면 다음부터는 알아서 스타일을 맞춘다. 하지만 현재 대부분의 AI 에이전트는 매 대화가 리셋된다. 사용자가 준 피드백, 에러 메시지, 성공 신호 — 이 모든 귀중한 정보가 그냥 버려진다.
2026년 3월, 프린스턴 대학교와 북경 대학교 연구팀이 이 문제에 정면으로 도전하는 논문을 발표했다. 제목부터 직관적이다:
"OpenClaw-RL: Train Any Agent Simply by Talking" (말만 하면 어떤 에이전트든 훈련시킬 수 있다)
이 논문의 핵심 통찰은 놀라울 정도로 단순하다: 에이전트가 행동할 때마다 환경이 돌려주는 "다음 상태"에는 학습에 필요한 모든 정보가 이미 들어 있다. 사용자 답변, 터미널 출력, GUI 변화, 테스트 결과 — 이 신호들을 실시간으로 수확해서 에이전트를 지속적으로 개선하자는 것이다.
하지만 이 아이디어가 왜 혁신적인지 이해하려면, 먼저 AI 학습의 역사를 짧게 되짚어 볼 필요가 있다.
2022년, ChatGPT가 세상을 놀라게 했을 때 핵심 비밀 무기는 RLHF(Reinforcement Learning from Human Feedback) — 인간 피드백 기반 강화학습이었다.
원리는 간단했다. AI가 생성한 두 개의 답변을 사람에게 보여주고 "어떤 게 더 좋아?"라고 물어본다. 이 선호 데이터를 모아서 보상 모델(Reward Model)을 학습시키고, 이 보상 모델의 점수를 높이는 방향으로 언어 모델을 강화학습(PPO)으로 튜닝한다.
이 방법 덕분에 AI가 "사람이 원하는 방식"으로 대답하는 법을 배웠다. 하지만 문제가 있었다. 사람이 직접 라벨링해야 하니 비용이 어마어마했고, 보상 모델 자체가 불완전해서 "보상 해킹(reward hacking)" — 실제로는 좋지 않지만 보상 모델의 점수만 높은 답변을 생성하는 현상이 발생했다.
연구자들은 더 효율적인 방법을 찾아 나섰다.
DPO(Direct Preference Optimization, 2023)는 보상 모델을 아예 없애고, 선호 데이터에서 직접 언어 모델을 최적화하는 수학적 트릭을 발견했다. 보상 모델 학습 → PPO 훈련이라는 복잡한 2단계 과정을 1단계로 줄인 것이다.
GRPO(Group Relative Policy Optimization, 2025)는 DeepSeek-R1에서 대규모로 검증되며 주목받았다. 같은 질문에 대해 여러 답변을 생성한 뒤, 정답 여부로 그룹 내 상대적 장점(advantage)을 계산하는 방식이다. 비평가(critic) 모델도 필요 없다.
RLHF든 DPO든 GRPO든, 학습 데이터를 미리 수집해야 했다. 사람이 라벨링하든, 자동으로 정답 여부를 판별하든 — "먼저 데이터를 모으고, 그다음 배치(batch)로 학습"하는 오프라인 패러다임이었다.
이것은 마치 식당에서 한 달치 고객 불만을 모아뒀다가 한꺼번에 읽고 개선하는 것과 같다. 물론 효과는 있지만, 고객이 "이 음식 너무 짜요"라고 말한 그 순간 즉시 간을 조절하는 것과는 차원이 다르다.
더 심각한 문제는 에이전트(Agent) 시대가 오면서 드러났다.
2025년부터 AI 에이전트가 폭발적으로 확산되었다. AI가 단순히 "질문에 대답"하는 것을 넘어, 코드를 작성하고, 터미널 명령을 실행하고, 웹 브라우저를 조작하고, API를 호출하는 복잡한 작업을 수행하게 된 것이다.
에이전트는 기존 챗봇과 근본적으로 다르다:
| 챗봇 | 에이전트 | |
|---|---|---|
| 상호작용 | 1회 질문-답변 | 수십 단계의 연쇄 작업 |
| 환경 | 텍스트만 | 터미널, GUI, 코드, API |
| 피드백 형태 | 사람의 평가 | 에러 메시지, 테스트 결과, 화면 변화 |
| 실패 비용 | 잘못된 답변 | 시스템 오류, 데이터 손실 |
이 에이전트들을 학습시키려면 기존 방법으로는 부족했다. GRPO의 "같은 질문에 여러 답변 생성 후 비교" 방식은 단일 턴(single-turn) 설정에 맞게 설계되어 있어서, 30단계에 걸친 GUI 조작 같은 긴 궤적(trajectory)에서는 "어느 단계에서 잘못했는지"를 알기 어려웠다.
바로 이 지점에서 OpenClaw-RL이 등장한다.
OpenClaw-RL 논문의 출발점은 한 가지 관찰이다:
에이전트가 행동할 때마다, 환경은 반드시 "다음 상태(next-state)"를 돌려준다. 이 다음 상태에는 두 종류의 보물이 묻혀 있는데, 기존 시스템은 이걸 전부 버리고 있다.
이 두 종류의 보물이 무엇인지 실제 사례로 살펴보자.
평가적 신호란 "잘했다/못했다"를 암시하는 정보다.
사례: 코딩 에이전트
에이전트가 Python 함수를 작성하고 테스트를 실행했다. 터미널이 돌려준 다음 상태는:
$ pytest test_calculator.py
FAILED test_divide - ZeroDivisionError: division by zero
1 failed, 4 passed
이 출력은 명확하게 말하고 있다: "5개 중 1개 실패했어. 0으로 나누는 경우를 처리 안 했어." 이것이 평가적 신호다. 에이전트의 행동이 얼마나 좋았는지(또는 나빴는지)를 스칼라 값(+1/-1)으로 변환할 수 있는 정보.
사례: 대화 에이전트
사용자가 AI에게 여행 계획을 요청했다. AI가 답변한 후, 사용자의 다음 메시지는:
"아니, 그게 아니라 부산 말고 제주도로 가고 싶다고 했잖아."
이 반응은 곧 -1 (불만족) 신호다. 반대로 "오 완벽해! 바로 이거야"라는 반응은 +1 (만족) 신호다.
방향적 신호는 한 단계 더 나아간다. 단순히 "틀렸다"가 아니라 "어떻게 고쳐야 하는지"까지 알려주는 정보다.
사례: 코드 리뷰 에이전트
에이전트가 코드를 수정한 후, 사용자가 이렇게 말한다:
"파일을 수정하기 전에 먼저 기존 코드를 읽어봤어야지. 지금 바꾼 부분이 다른 함수에서 쓰이고 있거든."
이 피드백은 "틀렸다(-1)"뿐 아니라 "먼저 파일을 읽고, 의존성을 확인한 뒤 수정해라"라는 구체적인 개선 방향까지 담고 있다. 그런데 기존 강화학습 시스템(RLHF, GRPO 등)은 이 풍부한 정보를 숫자 하나(-1)로 압축해 버린다. "어떻게"에 대한 정보는 통째로 사라진다.
OpenClaw-RL의 놀라운 점은 이 "다음 상태 신호"가 환경에 관계없이 보편적이라는 발견이다.
사용자의 다음 답변이 곧 피드백
만족 / 불만족 / 수정 요청stdout/stderr, 종료 코드
성공 / 에러 메시지 / 경고화면 상태 변화, 접근성 트리
버튼 클릭 성공 / 엉뚱한 페이지 이동테스트 결과, diff, lint 출력
pass / fail / 코드 스타일 위반API 반환값, 에러 트레이스
200 OK / 404 Not Found / 타임아웃대화에서 사용자의 "다시 해줘"나, 터미널의 exit code 1이나, GUI의 "페이지를 찾을 수 없습니다"나 — 본질은 같다. 에이전트의 행동에 대한 환경의 응답이고, 거기에는 평가적 정보와 방향적 정보가 담겨 있다.
이 보편성 덕분에 OpenClaw-RL은 하나의 학습 루프로 모든 종류의 에이전트를 동시에 훈련시킬 수 있다.
일반적인 강화학습 시스템은 이런 순서로 동작한다:
각 단계가 끝나야 다음 단계가 시작되는 동기식(synchronous) 구조다. 이 방식의 문제는 모델이 업데이트되는 동안 에이전트 서비스가 멈춘다는 것이다. 개인 비서 에이전트가 학습 중이라고 10분간 응답을 안 하면 아무도 쓰지 않을 것이다.
OpenClaw-RL은 이 문제를 완전 비동기 분리(full decoupling) 로 해결한다.
이 네 구성 요소는 서로를 기다리지 않는다:
비유하자면, 식당의 주방장이 주문 받기, 요리하기, 손님 피드백 읽기, 레시피 개선하기를 동시에 하는 것이다. 주문은 계속 들어오고, 요리는 계속 나가고, 피드백은 계속 분석되고, 레시피는 계속 개선된다. 어느 하나가 다른 것을 막지 않는다.
개인 에이전트(사용자 기기에서 실행되는 비서)의 경우, 모든 상호작용이 학습에 쓸모 있는 것은 아니다. OpenClaw-RL은 각 API 요청을 두 종류로 분류한다:
이렇게 함으로써 "노이즈"를 걸러내고, 실제로 학습에 유의미한 상호작용만 정확히 포착한다.
Binary RL은 OpenClaw-RL의 첫 번째 학습 방법이다. 원리는 직관적이다:
여기서 핵심은 다수결 투표(majority vote) 방식이다. 하나의 PRM이 한 번 판단하면 실수할 수 있으니, m번 독립적으로 판단하고 다수결로 최종 보상을 결정한다.
기존 에이전트 RL에서는 결과 보상(Outcome Reward) — 즉, 전체 작업이 끝난 후에만 "성공/실패" 신호를 주는 방식이 일반적이었다. 하지만 에이전트가 30단계에 걸쳐 GUI를 조작한 뒤 최종적으로 실패했다면, 도대체 몇 번째 단계에서 잘못된 건지 알 수가 없다.
이 문제를 희소 보상(sparse reward) 문제라고 한다. 축구 경기에서 90분간 뛰고 나서 "졌다"라는 신호만 받으면, 어느 패스가 잘못됐고 어느 슈팅이 좋았는지 모르는 것과 같다.
OpenClaw-RL은 매 단계마다 다음 상태를 보고 보상을 주는 과정 보상(Process Reward)을 적용한다. 30단계 GUI 작업이라면, 각 클릭/입력마다 "이 단계는 잘했다(+1)" 또는 "이 단계에서 틀어졌다(-1)"라는 밀집된 피드백을 제공한다.
논문의 실험 결과가 이를 극적으로 보여준다:
특히 도구 호출(tool-call) 설정에서 과정 보상을 추가하면 성능이 0.17 → 0.30으로 76% 향상된다. "어느 단계에서 틀렸는지"를 알려주는 것이 그만큼 중요하다는 뜻이다.
수식이 복잡해 보이지만 핵심은 간단하다. PPO(Proximal Policy Optimization) 스타일의 클리핑 목적 함수를 사용하되, GRPO와 달리 그룹 구조가 없다는 점이 다르다. 실시간 대화 설정에서는 같은 질문에 여러 답변을 생성해서 비교하는 것이 불가능하기 때문이다(사용자가 진짜로 기다리고 있으니까).
대신 OpenClaw-RL은 PRM이 매긴 보상을 직접 어드밴티지(advantage)로 사용하고, KL 발산 패널티(β=0.02)로 모델이 너무 급격하게 변하는 것을 방지한다.
Binary RL의 한계를 구체적 사례로 이해해 보자.
사용자가 AI에게 코드 리뷰를 요청했고, AI가 답변했다. 사용자의 다음 메시지:
"파일을 수정하기 전에 먼저 기존 코드를 읽어봤어야지. 지금 바꾼 부분이 다른 함수에서 쓰이고 있어."
Binary RL은 이 풍부한 피드백을 -1이라는 숫자 하나로 바꾼다. "못했다"는 건 알겠는데, 정확히 어느 토큰을 어떻게 바꿔야 하는지에 대한 정보는 완전히 사라진다.
이것이 Hindsight-Guided On-Policy Distillation(OPD) — 사후지견 기반 온정책 증류가 해결하려는 문제다.
OPD의 핵심 아이디어는 이것이다: 다음 상태에서 텍스트 힌트를 추출하고, 그 힌트를 원래 프롬프트에 미리 주입했더라면 모델이 어떻게 답했을지를 계산해서, 토큰별로 "이건 올리고 저건 내려라"라는 방향적 신호를 만든다.
이 과정을 비유로 풀어보면 이렇다:
시험을 치르고 나서 선생님이 "문제 3번은 공식을 잘못 적용했어. 이차방정식의 근의 공식을 써야 했어"라고 피드백을 줬다. 이때 같은 시험지를 다시 받되, 문제 위에 "힌트: 이차방정식의 근의 공식을 사용하세요"라고 적혀 있다면 어떻게 풀었을지를 상상하는 것이다.
힌트를 본 버전과 안 본 버전을 비교하면, 정확히 어떤 풀이 단계에서 달라져야 하는지가 토큰 단위로 드러난다.
스칼라 선호 신호
외부 보상 모델 필요쌍 선호 데이터 필요
사전 수집된 A vs B더 큰 교사 모델 필요
GPT-4 → 작은 모델자기 자신이 교사
힌트만 있으면 됨OPD의 혁신점은 사전 수집 데이터 없음, 외부 교사 모델 없음, 쌍 선호 데이터 없음 — 오직 실시간 다음 상태 신호에서 추출한 힌트와 모델 자기 자신만으로 토큰 수준의 방향적 학습을 해낸다는 점이다.
논문이 강조하는 것은 두 방법이 상충하지 않는다는 점이다.
| 특성 | Binary RL | OPD |
|---|---|---|
| 신호 유형 | 평가적 (잘했다/못했다) | 방향적 (이렇게 바꿔라) |
| 어드밴티지 수준 | 시퀀스 전체 | 토큰별 |
| 적용 범위 | 모든 턴 | 힌트 추출 가능한 턴만 |
| 신호 밀도 | 높음 (거의 모든 턴 활용) | 낮음 (엄격한 필터링) |
Binary RL은 넓게 깔아주는 바탕이다. 거의 모든 상호작용에서 "잘했어/못했어" 신호를 수집해서 전반적인 방향을 잡는다.
OPD는 핵심 순간에 정밀 교정하는 레이저다. 사용자가 구체적 피드백을 줬을 때만 작동하지만, 그때 "정확히 어느 토큰을 어떻게 바꿔야 하는지"를 토큰 단위로 알려준다.
논문의 개인 에이전트 실험에서 이 조합의 위력이 드러난다. 기본 점수 0.17에서 시작해서:
Binary RL만 쓰면 0.17 → 0.23으로 소폭 개선에 그치지만, OPD를 추가하면 0.72까지 급등하고, 두 방법을 결합하면 0.81에 도달한다. 기본 모델 대비 약 4.8배 개선이다.
흥미로운 점은 OPD가 느리게 시작하지만 결국 Binary RL을 압도한다는 것이다. 8 스텝 시점에서는 둘 다 0.25로 같지만, 16 스텝에서 OPD가 0.72로 치솟는다. 이는 OPD가 힌트를 엄격하게 필터링하기 때문에 초반에는 샘플이 부족하지만, 축적되면 토큰 수준의 정밀한 교정이 위력을 발휘하기 때문이다.
논문은 두 가지 매력적인 시나리오로 개인 에이전트를 검증한다.
학생이 OpenClaw를 사용해 수학 숙제를 한다. 단, 이 학생은 "AI가 쓴 것처럼 보이면 안 된다"는 전제가 있다. AI가 전형적인 격식체("다음과 같이 풀 수 있습니다", 굵은 글씨의 단계별 설명)로 답변하면 학생은 불만을 표시한다.
36번의 상호작용만으로, 에이전트는:
선생님이 OpenClaw를 사용해 학생 과제를 채점한다. 선생님은 "구체적이고 친근한 코멘트"를 원한다. 처음에 AI가 딱딱한 평가문을 쓰면 "좀 더 따뜻하게 써줘"라고 피드백한다.
24번의 상호작용 후, 에이전트는:
36번, 24번. 수백만 개의 라벨링 데이터가 아니라, 일상적인 사용 중 발생하는 자연스러운 피드백 수십 번만으로 뚜렷한 개인화가 이루어진다는 것이 핵심이다.
개인 에이전트를 넘어, OpenClaw-RL은 네 가지 범용 에이전트 설정에서도 검증되었다.
| 설정 | 모델 | 병렬 환경 수 | 최대 단계 |
|---|---|---|---|
| 터미널 (Shell) | Qwen3-8B | 128개 | 10 |
| GUI (화면 조작) | Qwen3VL-8B-Thinking | 64개 | 30 |
| SWE (코드 저장소) | Qwen3-32B | 64개 | 20 |
| 도구 호출 (API) | Qwen3-4B-SFT | 32개 | — |
네 가지 설정 모두에서 RL 훈련을 통해 점진적인 성능 향상이 관찰되었다. 특히 OpenClaw-RL이 개인 에이전트(단일 사용자, 희소한 상호작용)부터 범용 에이전트(수백 개 병렬 환경, 밀집된 신호)까지 하나의 프레임워크로 모두 커버한다는 점이 인상적이다.
지금까지 AI 모델의 생애주기는 이랬다:
모델은 배포된 순간 동결(freeze)된다. 사용자의 피드백은 수집되어 다음 버전 학습에 쓰이지만, 수개월의 시차가 존재한다.
OpenClaw-RL이 제시하는 미래는 이것이다:
배포가 곧 학습이고, 학습이 곧 배포다. 에이전트는 사용되면 사용될수록 자동으로 개선된다.
2026년 현재, AI 개인화는 대부분 프롬프트 엔지니어링(시스템 프롬프트에 사용자 선호를 명시)이나 RAG(사용자 히스토리를 컨텍스트에 넣기)에 의존한다. 하지만 이 방법들은 모델의 가중치 자체는 바꾸지 않는다. 프롬프트 길이 제한, 컨텍스트 검색 실패 등의 한계가 있다.
OpenClaw-RL은 모델 가중치를 직접 업데이트하는 진짜 개인화를 가능하게 한다. 36번의 상호작용만으로 에이전트의 행동 패턴이 근본적으로 바뀐다는 실험 결과는, 프롬프트 엔지니어링이나 RAG와는 차원이 다른 깊이의 개인화가 가능함을 보여준다.
2025년까지 에이전트 RL 연구는 분야별로 파편화되어 있었다. GUI 에이전트용 RL(DigiRL, WebRL), 코딩 에이전트용 RL(SWE-agent), 도구 사용 에이전트용 RL(ReTool) — 각각 다른 프레임워크, 다른 보상 체계, 다른 학습 파이프라인을 사용했다.
OpenClaw-RL은 "다음 상태 신호는 환경에 무관하게 보편적이다"라는 통찰로 이 파편화를 해소한다. 대화, 터미널, GUI, SWE, 도구 호출 — 다섯 가지 환경이 하나의 비동기 학습 루프에 동시에 흘러들어간다. 이는 멀티태스크 에이전트 — 대화도 하고, 코딩도 하고, 웹 브라우징도 하는 범용 에이전트의 통합 학습을 가능하게 하는 토대다.
이 논문의 핵심 아이디어들을 최종 정리하면:
에이전트의 행동 후 환경이 돌려주는 모든 반응. 사용자 답변, 터미널 출력, GUI 변화, 테스트 결과 등. 기존에는 버려지던 이 신호가 실시간 학습의 연료가 된다.
다음 상태에서 "잘했어/못했어"를 추출해 스칼라 보상으로 변환. 넓은 범위의 턴에 적용 가능. 과정 보상(PRM)으로 매 단계마다 피드백 제공.
다음 상태에서 "이렇게 고쳐라"는 텍스트 힌트를 추출. 힌트를 미리 알았을 때의 모델과 비교해 토큰별 개선 방향을 계산. 소수의 턴에만 적용되지만 정밀도가 높음.
서빙, 환경 실행, 보상 평가, 모델 훈련이 독립적으로 동작. 학습 중에도 서비스 중단 없음. 단일 사용자부터 대규모 배포까지 확장 가능.
대화, 터미널, GUI, SWE, 도구 호출 — 다섯 가지 이질적 환경의 신호를 하나의 학습 루프로 통합. 멀티태스크 에이전트의 동시 학습 가능.
OpenClaw-RL이 그리는 미래를 한 문장으로 요약하면 이것이다:
에이전트는 이미 하고 있는 상호작용에서 스스로 학습한다. 추가 데이터 수집도, 외부 교사 모델도, 배치 학습을 위한 서비스 중단도 필요 없다.
물론 아직 넘어야 할 산이 있다. 개인 에이전트에서 가중치를 직접 업데이트하면 프라이버시 문제가 발생하고, 잘못된 피드백에서 학습하면 모델이 나빠질 수도 있다. 비동기 학습에서 정책 버전이 어긋나는 off-policy 문제도 해결해야 한다.
그러나 방향은 명확하다. 2026년 AI 에이전트 시대의 다음 질문은 "어떤 에이전트를 쓸 것인가"가 아니라 "당신의 에이전트가 당신에게서 무엇을 배웠는가"가 될 것이다.
OpenClaw-RL은 그 질문에 대한 첫 번째 본격적인 대답이다.
참고 논문 및 자료