개인공부&프로젝트

PARA 프레임워크로 생산성 관리하기 (feat. LLM Agent)

백악기작은펭귄 2025. 2. 15.
반응형

PARA 프레임워크로 생산성 관리하기 (feat. LLM Agent)

대학원 생활을 하다 보면 연구에만 집중하기 어려운 순간이 많다. 실험과 논문 작성도 벅찬데, 수업과 미팅, 각종 행정 업무까지 겹치면 하루가 어떻게 지나가는지도 모를 정도다. 여러 태스크가 뒤섞이고, 급한 일부터 처리하다 보면 정작 중요한 연구는 뒷전으로 밀려버리기 일쑤다. 그때그때 흩어진 생각과 자료를 정리하려 해도, 어디서부터 손을 대야 할지 막막할 때가 많다.

 

이런 혼란 속에서 PARA 프레임워크를 도입하면 업무를 체계적으로 정리하고, 연구와 기타 업무 사이에서 생각이 분절되는 문제를 해결할 수 있을 것 같았다. 하지만 막상 적용하려니, 이를 효과적으로 구축하는 과정이 또 하나의 부담으로 다가왔다. 그래서 AI의 도움을 받아 나만의 PARA 시스템을 만들어보려 한다.


PARA 프레임워크란?

PARA 프레임워크는 디지털 정보를 효과적으로 분류하고 관리하기 위한 시스템으로, Projects(프로젝트), Areas(영역), Resources(리소스), Archives(아카이브) 네 가지 카테고리로 데이터를 정리하는 방식을 의미한다. 이는 생산성 전문가인 티아고 포르테(Tiago Forte)가 개발한 방법으로, 복잡한 디지털 공간 속에서도 필요한 정보를 빠르게 찾고 활용할 수 있도록 도와준다.

  1. Projects(프로젝트)
    현재 진행 중인 목표 지향적인 작업들을 의미한다. 논문 작성, 특정 연구 과제, 학회 발표 준비와 같은 구체적인 작업이 여기에 해당한다. 프로젝트는 기한이 정해져 있으며, 완료되면 더 이상 관리할 필요가 없다.
  2. Areas(영역)
    지속적으로 유지해야 하는 책임과 관심사를 담는 카테고리다. 연구 분야, 수업 수강, 과제 참여, 개인 건강 관리 등이 여기에 포함될 수 있다. 프로젝트와 달리 끝나는 개념이 아니라 꾸준히 관리해야 하는 요소들이다.
  3. Resources(리소스)
    정보를 저장하는 공간으로, 특정 주제나 관심사와 관련된 자료를 모아놓는다. 예를 들어, 연구 관련 논문 리스트, 연구 방법론 참고 자료, 생산성 향상 팁 등이 여기에 속할 수 있다. 필요할 때 바로 참고할 수 있도록 체계적으로 정리하는 것이 중요하다.
  4. Archives(아카이브)
    완료된 프로젝트나 더 이상 자주 사용하지 않는 자료를 보관하는 공간이다. 논문 초안, 과거 연구 기록, 이전 학기 수업 자료 등이 해당될 수 있다. 아카이브는 적극적으로 활용하는 공간은 아니지만, 필요할 때 다시 참고할 수 있도록 유지하는 것이 핵심이다.

PARA 프레임워크로 생산성 관리하기 (feat. LLM Agent) - PARA 프레임워크로 생산성 관리하기 (feat. LLM Agent) - PARA 프레임워크란?
출처: Tiago Forte 블로그

 

PARA 프레임워크의 핵심은 단순히 정보를 저장하는 것이 아니라, 현재 필요한 것과 그렇지 않은 것을 명확히 구분하고, 빠르게 접근할 수 있도록 구조화하는 것이다. 이를 통해 하루에도 수십 번씩 전환되는 태스크 속에서도 중요한 정보가 흩어지지 않도록 도와준다.

 

하지만 이러한 것들을 실제로 의미 있을 정도로 정리해서 관리하기란 그리 쉽지 않다. 익숙해질 때까지 시간이 많이 필요할 뿐만 아니라, 많은 작업이 쉼 없이 몰아치는 시기에는 아예 관리를 포기해버리기도 한다. 사실 그럴 때일수록 더 필요한데 말이다. 게다가 이렇게 만들어 놓는다고 해도 특정 업무로 복귀했을 때 그것을 바로 시작할 수 있냐는 또 다른 문제이다. 이러한 문제를 인지 파편화문맥 전환 비용이라고 하며, 이를 줄이는 것은 생산성 향상에서 중요한 문제 중 하나이다.

 

PARA 프레임워크를 이용해서 인지 파편화를 줄이는 방법

인지 파편화(Cognitive Fragmentation)는 업무 수행 중 문맥이 불연속적으로 전환되면서 인간의 뇌가 자연스럽게 정보를 처리하는 방식과 다르게 작동하게 되어 발생하는 현상이다. 인간의 사고는 개념적으로 연속적인 흐름을 가지지만, 디지털 환경에서는 다양한 플랫폼과 애플리케이션을 넘나들며 정보를 처리해야 한다. 이러한 반복적인 문맥 전환(context switching) 과정에서 전환 비용(Switching Cost)이 증가하며, 인지 부하(cognitive load)가 가중된다. 그 결과, 작업에 몰입하는 것이 어려워지고 생산성이 저하된다.

 

예를 들어, 논문을 작성하던 도중 과제 미팅에 참석하거나 수업을 들으러 다녀와야하는 경우, 기존 작업의 문맥을 다시 파악하는 데 추가적인 시간이 필요하다. 이러한 반복적인 전환은 작업의 흐름을 끊고, 지속적인 집중을 방해하여 업무 효율성을 낮춘다.

 

PARA 프레임워크는 이러한 인지 파편화를 줄이고 인간의 사고 흐름을 보호하는 역할을 한다. 이는 마치 제2의 해마(prosthetic hippocampus)처럼 기능하며, 인간의 기억을 보조하는 외부 저장 시스템 역할을 한다. 해마는 인간의 장기 기억을 형성하고 유지하는 뇌 구조로, 우리가 경험한 정보들을 체계적으로 저장하고 연상할 수 있도록 돕는다. PARA는 이와 유사하게, 작업의 연속성을 유지할 수 있도록 정보와 문맥을 구조화하여 저장한다.

 

현대의 오피스 환경에서는 이메일, 논문 자료, 실험 데이터, 강의 자료 등이 다양한 디지털 플랫폼에 분산되어 있으며, 이를 수시로 검색하고 조합하는 과정에서 문맥 전환 비용(Context Switching Cost) 이 증가한다. PARA 시스템을 적용하면 관련된 모든 정보를 프로젝트 단위로 통합 관리할 수 있어, 한 곳에서 필요한 자료를 빠르게 찾을 수 있다.

 

실험: LLM이 PARA 프레임워크에 작업을 할당할 수 있을까?

LLM이 디지털 환경 내에서 발생하는 모든 업무를 모니터링하고 PARA 프레임워크에 할당할 수 있다면 이를 작성하는데 필요한 노력과 시간을 줄여줄 수 있을 것이다. 또한 휘발성이 있는 사용자의 기억에 의존하지 않고도 정보를 체계적으로 분류하고 작업에 복귀했을 때 정리한 내용을 바탕으로 응답을 생성하고(ex-논문 레퍼런스 작성 시 서지관리 소프트웨어의 내용을 바탕으로 응답), 필요한 작업을 수행하여 줌으로써(ex-과제 미팅에 참석할 때 과제 관련 자료를 자동으로 찾아서 열어줌) 전환 비용을 줄여줄 수 있을 것이라고 생각하였다. 이는 반복적인 정보 검색 및 재구성의 필요성을 줄이며, 깊이 있는 사고를 가능하게 하여 연구와 창의적 문제 해결에 더 많은 시간을 할애할 수 있도록 도와준다.

 

본격적인 시스템 개발에 앞서, 먼저 LLM 에이전트가 입력 받은 응답을 PARA 프레임워크에 자동으로 분류해서 할당할 수 있는지를 검증해 보았다. 현재는 아주 단순한 코드만 작성한 상태이며, 몇 가지 tool만을 제공해 둔 상태이다.

 

결론부터 말하자면, 꽤 잘한다. 사실 프롬프트를 공들여 쓰지도 않았고 사용 가능한 도구도 몇 개 주지 않았기 때문에 일단 굴러가는지만 확인하고 고쳐보려 했는데, 예상 외로 꽤나 잘 정리하는 모습을 보여서 놀랐다.

 

간단하게 LLM Agent 클래스와 입력 파일을 처리하는 함수를 작성하고 PARA 프레임워크를 JSON 형태로 관리할 수 있는 도구 함수를 작성해서 에이전트의 Tools에 추가해 주었다. 또한 유저 세팅 파일에 '사이드 프로젝트에서의 나의 역할' 등의 내용을 작성하여 이를 시스템 프롬프트에서 가져다 쓸 수 있도록 하였다.

 

이후 여러 명의 사람들이 언급된 사이드 프로젝트 회의록을 하나 업로드해서 실험을 해보았는데, 다음과 같이 나의 업무와 관련된 부분만 잘 추출해내는 것을 확인할 수 있었다(대외비가 포함되어 있어 가렸다).

{
    "Areas": {
        "품질 관리": {
            "Projects": {
                "통합 테스트 관리": {
                    "Resources": {
                        "품질 서비스 링크": {
                            "name": "품질 서비스 링크",
                            "type": "website",
                            "status": "active",
                            "url": "http://XXXXXX"
                        },
                        "통합 테스트 관리 시트": {
                            "name": "통합 테스트 관리 시트",
                            "type": "document",
                            "status": "active",
                            "url": "https://docs.google.com/spreadsheets/XXXXXXX"
                        }
                    },
                    "Archives": {},
                    "content": "통합 테스트 관리는 각 테스트 주차별로 다양한 시스템의 통합 테스트를 수행하고, 이를 관리하는 과정입니다.\n\n통합 테스트 관리는 1차, 2차, 3차로 나눠서 이뤄지며 주간미팅 전까지 결과가 취합되어야 합니다."
                }
            }
        },
        "소프트웨어 개발": {
            "Projects": {
                "클라우드 및 LLM API 호출 개발": {
                    "Resources": {
                        "테스트 자동화 파이프라인 설정": { 
                            "name": "GitHub Actions 설정", 
                            "type": "automation", 
                            "status": "active",
                            "url": "https://github.com/XXXX/.github/workflows/XXXX.yaml"
                        },
                        "LLM 모니터링 및 로깅": { 
                            "name": "Langfuse 기반 대시보드", 
                            "type": "website", 
                            "status": "active",
                            "url": "https://cloud.langfuse.com/XXX"
                        },
                    },
                    "Archives": {
                            "name": "Prompt Engineering 기록", 
                            "type": "documentation", 
                            "status": "archive",
                            "url": "https://github.com/XXXX/prompt/archive.json"
                    },
                    "content": "클라우드 및 LLM API 호출을 위한 다양한 작업\n\n사용자는 AI팀으로 LLM 관련 작업을 담당하고 있다"
                }
            }	
        }
    }
}

 

오.. 다음 단계로 넘어가봐도 될 것 같다.

 

다음 목표

현재는 GPT-4o API를 이용하고 있으며, 회의록과 같이 어느 정도 정제된 텍스트 기반 데이터를 입력으로 받고 있다. 하지만 이를 제대로 활용하기 위해서는 실시간으로 수집되는 다양한 모달리티를 커버해야 한다. 또한, 개인의 활동을 모두 모니터링하는 것을 목표로 하고 있는 만큼 비용적, 프라이버시적 관점에서 클라우드 기반 API가 아닌 로컬 LLM을 사용해야 할 것이다. 하지만 한편으로는 로컬 LLM을 사용하면 성능이 많이 저하되지는 않을지 걱정되기도 한다.

 

정리하자면, 당장 핸들링해야 할 문제는 다음과 같다.

1. '컴퓨터 내 디지털 활동의 모니터링'의 범위 및 방식 설계하기

2. 로컬 LLM에서의 성능 확인하기

 

아직 가야할 길은 멀지만, 일단 이 두 문제에 대한 답을 찾고 나면 그 다음 단계를 설계해 볼 수 있을 것 같다.


참고자료

[1] The PARA Method: The Simple System for Organizing Your Digital Life in Seconds | Tiago Forte

[2] 자고 일어나면 까먹는다: 생각의 분절 | 시안의 생산성

반응형