OpenAI o1은 시스템 1.5 사고를 합니다. 더 논리적인 시스템 2 사고를 하게 만들수 있데요

배경 및 목적

트위터에서 흥미로운 트윗을 하나 보았습니다. 요컨데 o1은 시스템 1.5 사고를 하는 논리 머신인데, 얘를 잘 가이드 해 주면 진정한 논리적 사고인 시스템 2 사고를 할 수 있게 해 줄 수 있다고 합니다.

https://x.com/omarsar0/status/1845869689911820334

그러면 어떻게 시스템 2 사고를 할 수 있게 만들지 알아 보았습니다.

참고 자료

원문:

https://www.qodo.ai/blog/system-2-thinking-alphacodium-outperforms-direct-prompting-of-openai-o1/

너는 MIT 리뷰의 베테랑 편집자야.

아래 블로그 포스트는 OpenAI o1이 시스템2 사고를 할 수 있지만, 사용자가 가이드 해 줘야 한다는 내용인거 같아.

핵심이 되는 어떻게 가이드 해야 하는지에 대해 정리해 주고, 전체 블로그 내용도 요약해줘.

일단 이렇게 OpenAI o1으로 요약을 받아 보는 것으로 시작했습니다.

핵심 요약:

OpenAI의 o1 모델이 시스템2 사고를 할 수 있도록 가이드하려면, AlphaCodium과 같은 구조화된 프레임워크를 활용하여 모델의 추론 과정을 향상시켜야 합니다. 이를 위해 다음과 같은 방법을 사용합니다:

  1. 다단계 반복 프로세스 적용: 코드 생성, 실행, 테스트, 오류 수정을 반복하여 솔루션의 정확성과 신뢰성을 높입니다.

  2. 추가 데이터 생성: 문제에 대한 반성(reflection)과 테스트에 대한 추론(reasoning)을 포함한 추가 데이터를 생성하여 모델이 문제를 더 깊이 이해하고 접근 방식을 개선하도록 돕습니다.

  3. AI 기반 테스트 케이스 강화: 기존의 공개 테스트 케이스를 보완하고, AI가 생성한 추가 테스트를 도입하여 솔루션의 견고성을 검증합니다.


전체 블로그 요약:

블로그는 OpenAI의 새로운 o1 모델이 시스템2 사고—즉, 더 깊고 이성적인 추론 능력—를 갖출 수 있지만, 이를 위해서는 사용자나 특정 프레임워크의 가이드가 필요하다는 내용을 다룹니다.

AlphaCodium 소개:

  • AlphaCodium은 Qodo의 연구팀이 개발한 오픈소스 도구로, LLM을 활용한 코드 생성에 혁신적인 접근 방식을 제공합니다.

  • 다단계 반복 프로세스를 통해 코드 생성, 실행, 테스트, 오류 수정을 반복하며 솔루션의 품질을 향상시킵니다.

  • 추가 데이터와 테스트 케이스를 생성하여 모델의 문제 이해도와 추론 능력을 강화합니다.

시스템 사고에 대한 이해:

  • 시스템1 사고: 빠르고 직관적인 반응으로, 현재 대부분의 LLM이 이 방식으로 작동합니다.

  • 시스템2 사고: 신중하고 깊은 논리적 추론이 필요한 문제 해결 방식입니다.

  • 시스템1.5 사고: 시스템1과 시스템2의 중간 단계로, 일부 추론 능력을 보이지만 완전한 시스템2 사고를 하기에는 부족합니다.

o1 모델의 평가와 한계:

  • o1 모델은 시스템1.5 수준으로 평가되며, 깊은 추론을 위해서는 외부의 가이드가 필요합니다.

  • Terence Tao의 평가에 따르면, o1은 유능한 대학원생 수준의 능력을 보이지만, 핵심 개념을 스스로 생성하지는 못합니다.

  • o1 모델은 복잡한 문제에서 오류나 비논리적인 결과를 나타낼 수 있습니다.

AlphaCodium과 o1의 결합 실험:

  • 실험 결과: AlphaCodium을 o1 모델과 결합하여 Codeforces 벤치마크에서 테스트한 결과, 정확도가 크게 향상되었습니다.

  • 의미: AlphaCodium은 o1의 성능을 향상시키고, 모델이 더 전략적이고 신중한 문제 해결을 할 수 있도록 돕습니다.

  • 성능 향상 요인: AlphaCodium의 구조화된 프로세스와 추가 데이터 생성이 모델의 추론 능력을 강화합니다.

결론 및 향후 방향:

  • 시사점: 올바른 프레임워크와 도구를 사용하면, 기본 모델인 o1도 시스템2 사고에 가까워질 수 있습니다.

  • 향후 과제: 완전한 시스템2 수준에 도달하려면 추가 연구와 개발이 필요합니다.

  • Qodo의 목표: 코드의 무결성에 초점을 맞추어, 테스트와 리뷰 과정을 통합한 시스템2 사고를 위한 개발을 진행하고 있습니다.

  • 커뮤니티 참여: AlphaCodium은 오픈소스이며, GitHub에서 접근 가능하며, 더 많은 연구자와 개발자의 참여를 기대합니다.

결국 핵심은 OpenAI o1이 진정한 시스템2 사고를 할 수 있게 도와주는 프레임워크 + 데이터를 쓰는 것이라 합니다.

활용 툴

  • OpenAI o1

실행 과정

AlphaCodium의 Flow

AlphaCodium의 흐름을 구별짓는 두 가지 핵심 요소가 있습니다. 첫째, 이 시스템은 문제 성찰과 테스트 추론과 같은 추가 데이터를 생성하여 반복적인 과정을 돕습니다. 이는 모델이 복잡한 문제를 해결하는 접근 방식을 더 잘 이해하고 개선하는 데 도움을 줍니다. 둘째, AlphaCodium은 AI가 생성한 테스트로 기존의 공개 테스트 케이스를 보강하여, 솔루션의 견고성을 검증하기 위한 추가적인 검증 단계를 도입합니다. 이러한 구조화된 프로세스를 통해 AlphaCodium은 코드 자체뿐만 아니라 고품질의 신뢰할 수 있는 출력을 보장하는 데 필요한 추론과 테스팅에 초점을 맞춥니다.

와 코딩 실력이 엄청나게 올라갑니다. 오픈AI 자료에 따르면, o1-preview + AlphaCodium flow engineering이면 o1의 코딩 실력보다 나아 진다는 군요!

사용자당 광고 수익을 보여주는 막대 차트

이전에 GPT-4의 코딩 실력도 14%에서 44%로 올렸다고 하더군요.

결과 및 인사이트

  • o1-preview는 아직 시스템 1.5 사고를 하는 수준인 것 같습니다. 마치 우리가 머리로 생각하는 것과 비슷한 거 같아요. 논리적이라고 생각하나, 많은 부분에 있어서는 논리적 비약을 우리 스스로 알아 차리지 못하죠.

  • 하지만, 이걸 도와주는 프레임워크가 있으면 (아마도 산업 도메인 별로 다를 것 같습니다) 이런 프레임워크의 도움으로 o1-preview 혹은 o1을 내 분야에 맞게 더 성능을 높여 쓸 수 있을 것 같습니다.

1
지피터스 뉴스레터

이번 주 AI, 딱 쓸 것만

매주 월요일 아침,
읽고 바로 써먹을 AI 소식만