• 회의록 요약, 아웃풋 구조 잡는 거 노하우 좀요.

    최근에 회의록 요약용으로 LLM 돌려보는데, 단순히 텍스트 양만 줄여주는 수준이더라고요.
    어느 정도 요약은 되는데, 딱 제가 원하는 핵심 정보가 빠져요.

    특히 '그래서 누가, 뭘, 언제까지 하기로 했는지' 같은 액션 아이템이나, 최종적으로 합의된 '의사결정 사항' 같은 걸 구조적으로 뽑아내는 게 중요해서요.

    혹시 이런 걸 뽑아내기 위해 프롬프트 자체를 어떻게 구성해야 하는지, 다른 분들 경험담 같은 거 공유해 주실 분 있을까요?
    단순히 "요약해줘"보다는 좀 더 디테일하게 구조화하는 팁이 궁금합니다.

  • 아, 이거 진짜 공감합니다.
    저도 처음에 LLM 돌릴 때 "회의록 요약해 줘" 이렇게만 던졌다가, 결과물 받으면 '음, 요약은 됐는데 그래서 누가 뭘 하기로 했는지 부분이 비어있네?' 하는 상황이 정말 많았어요.
    단순 요약은 '의미'를 뽑아내는 거라면, 우리가 원하는 건 '구조'와 '책임 소재'를 뽑아내는 거거든요.
    결론부터 말씀드리자면, 그냥 "요약해 줘"라는 명령형 문장으로 접근하면 안 되고, LLM에게 "너는 지금부터 OOO 역할의 전문 비서야.
    그리고 최종 결과물은 반드시 이 포맷(Schema)을 지켜서 뽑아내야 해."
    라고 역할을 부여하고 출력 형식을 강제하는 게 핵심입니다.
    제가 실무에서 써보면서 효과를 봤던 몇 가지 노하우랑, 질문자님이 원하시는 '액션 아이템'과 '의사결정 사항'을 구조적으로 뽑아내는 구체적인 프롬프트 구성법을 단계별로 정리해 드릴게요.
    --- ### 🛠️ 1단계: 역할(Persona) 부여 및 목표 명확화 (가장 중요) 가장 먼저 할 일은 LLM에게 '너는 누구이며, 이 문서에서 무엇을 찾아야 하는지'를 정의해 주는 거예요.
    "너는 회의록을 전문적으로 분석하는 프로젝트 매니저(PM)야." 같은 역할 부여가 좋아요.
    그리고 그 역할에 맞춰서, 이 회의록의 최종 목표가 뭔지 정의해야 합니다.
    예시 프롬프트 구조 (시작 부분): > "당신은 기업의 회의록을 전문적으로 분석하는 시니어 PM입니다.

    당신의 임무는 아래 제공된 회의록 텍스트를 분석하여, 프로젝트 진행에 필요한 핵심 정보만을 추출하는 것입니다.
    단순한 요약은 필요 없으며, 반드시 아래 제시된 세 가지 구조화된 카테고리(의사결정, 액션 아이템, 논의된 주요 이슈)만을 뽑아내야 합니다." 이렇게 역할을 부여하면, LLM이 '요약'이라는 모호한 작업 대신 '분석가'라는 구체적인 역할을 맡게 되면서 톤 앤 매너 자체가 바뀌어요.

    📊 2단계: 출력 구조 강제화 (JSON 또는 마크다운 테이블 사용) 이게 제일 핵심 기술입니다.

    LLM이 자유로운 텍스트로 답변하게 두면, 원하는 정보가 섞여서 나와서 나중에 파싱(가공)하기 너무 힘들어요.
    따라서, 출력 형식을 강제로 지정해 주는 것이 필수입니다.
    가장 강력하고 추천하는 방법은 JSON 형식으로 출력하도록 요구하는 거예요.
    JSON으로 요청하는 프롬프트 예시 (추가할 부분): > "결과는 반드시 아래의 JSON 형식만을 사용해야 합니다.
    다른 설명이나 서론, 결론은 일절 추가하지 마세요.
    만약 특정 카테고리(예: 의사결정 사항)에 해당하는 내용이 없다면, 해당 필드는 'N/A'로 처리하세요." JSON 구조 예시: json { "회의_개요": { "주제": "OO 프로젝트 주간 회의", "참석자": ["김대리", "박과장", "최팀장"], "일시": "2024년 10월 27일" }, "의사결정_사항": [ {"결정_내용": "A 기능은 다음 분기로 이관하고, 이번 스프린트에서는 B 기능에만 집중한다.", "합의된_사유": "리소스 분산 방지 목적"}, // ... 다른 결정 사항들 ], "액션_아이템": [ {"담당자": "박과장", "할_일": "경쟁사 최신 동향 리포트 취합 및 공유", "기한": "11월 3일(금)", "우선순위": "High"}, {"담당자": "김대리", "할_일": "B 기능의 UI/UX 와이어프레임 초안 작성", "기한": "10월 31일(목)", "우선순위": "High"} ], "논의된_주요_이슈": [ {"이슈": "클라우드 비용 증가 추이", "핵심_논점": "예산 초과가 우려되므로 비용 최적화 방안을 재검토해야 함.", "후속조치": "다음 회의에서 재무팀과 논의 예정"} ] } 💡 왜 JSON이 좋은가요? JSON은 기계가 읽기 가장 쉬운 구조예요.
    ChatGPT나 Claude 같은 LLM은 구조화된 형식으로 출력하라는 요청을 받았을 때, 그 형식의 틀을 매우 잘 지키려고 노력해요.
    나중에 파이썬이나 엑셀로 데이터를 가져가서 자동화하기가 가장 수월하죠.

    🔍 3단계: 액션 아이템과 결정 사항을 분리 추출하는 구체적 지시어 질문자님이 가장 중요하게 생각하시는 '누가, 뭘, 언제까지' 구조는 단순히 '요약' 명령어로 뽑아낼 수 없습니다.

    프롬프트에 다음과 같은 **'필터링 기준'**을 명시해줘야 합니다.
    1.
    액션 아이템(Action Item) 추출 기준:
    * 키워드 정의: "명령문, 할 일, 해야 한다, 담당자 지정이 포함된 문장만 추출해 주세요." * 필수 포함 요소 정의: "반드시 [담당자], [수행할 작업], [완료 기한] 세 가지 요소가 모두 포함되어야 유효한 아이템으로 간주합니다." (이 세 가지가 없으면 일단 제외하도록 지시하는 것이 좋아요.) 2.
    의사결정 사항(Decision Made) 추출 기준:
    * 키워드 정의: "회의록에서 '결정했다', '합의했다', '최종적으로 결정하기로 했다' 등의 문맥이 명확한 문장만 추출해 주세요." * 핵심 질문: "이것이 단순한 아이디어 제안인지, 아니면 더 이상 논의할 필요 없이 이번 회의에서 확정된 사항인지 판단해 주세요." (이 구분이 중요합니다.
    제안과 확정을 구분하게 해야 합니다.) ### ⚠️ 실전에서 자주 하는 실수와 주의점 1.
    실수: 너무 많은 정보를 한 번에 요청하는 경우 (Overloading)
    만약 "요약해 주고, 액션 아이템 뽑아주고, 이슈도 정리하고, 배경 설명도 해줘"처럼 너무 많은 것을 요구하면, LLM이 정보의 우선순위를 혼란스러워해요.
    ➡️ 해결책: 한 번에 하나씩, 단계별로 요청하거나, 아니면 위에서 제안드린 것처럼 모든 것을 포함하는 단일 구조(JSON) 내에서 처리하도록 유도하는 것이 가장 좋습니다.
    2.
    실수: 컨텍스트 길이가 너무 긴 경우
    회의록이 10페이지가 넘어가면, LLM이 앞부분의 중요한 내용을 잊어버리거나, 가장 최근에 언급된 내용에 치우치는 경향이 있어요.
    ➡️ 해결책: 긴 회의록은 **'도입부 요약'**과 **'본론(실제 논의 부분)'**으로 나누어서 두 번에 걸쳐 처리하거나, 아니면 가장 중요한 안건(Agenda) 부분만 따로 발췌해서 넣는 것이 성능 면에서 훨씬 좋아요.
    3.
    주의점: 가정(Assumption)에 의존하지 않도록 경고하기
    LLM은 가끔 문맥상 빠진 정보를 '추측'해서 채워 넣을 때가 있어요.
    (예: 누가 담당할지 임의로 사람 이름을 넣기).
    ➡️ 해결책: 프롬프트 마지막에 "만약 텍스트에 명확히 언급되지 않은 정보는 절대 임의로 추측하여 채워 넣지 말 것.
    모르면 비워두거나 N/A 처리할 것."
    이라는 부정적 제약 조건을 반드시 추가해 주세요.

    🚀 최종 정리 템플릿 (복사해서 쓰기 편하게) 만약 제가 딱 하나의 프롬프트를 만든다면, 아래와 같은 형태로 조합해서 사용하는 걸 추천합니다.

    "당신은 회의록 분석 전문 PM입니다.
    아래 [회의록 텍스트]를 분석하여, 오직 지정된 JSON 형식만을 사용하여 결과를 출력해 주세요.
    다른 설명이나 서문은 절대 추가하지 마세요.

    [핵심 규칙] > 1.
    액션 아이템은 '누가', '무엇을', '언제까지' 세 가지가 모두 명시된 경우에만 포함합니다.

    의사결정 사항은 단순 의견 제시가 아닌, 최종적으로 '합의된 결정'만을 추출합니다.

    내용이 불분명하거나 추측이 필요한 정보는 절대 넣지 말고, 해당 필드는 'N/A'로 처리하세요.

    [출력 형식] > (여기에 위에서 제시한 JSON 구조 전체를 붙여넣기) > > [회의록 텍스트] > (여기에 분석할 회의록 붙여넣기)" 이 정도의 디테일함으로 접근하시면, 단순 요약 수준을 훌쩍 넘어서 실제로 업무에 바로 투입 가능한 '데이터베이스화된 회의록'을 얻으실 수 있을 거라고 확신합니다.
    처음에는 프롬프트가 길고 복잡하게 느껴지실 수 있지만, 이 '구조 설계' 작업 자체가 시간 대비 가장 큰 가치를 가져다주는 작업이니, 몇 번만 연습해보시면 금방 익숙해지실 거예요.
    도움이 되었으면 좋겠습니다!