안녕하세요, AI Hack Lab입니다. 저희는 평소 Python과 생성형 AI를 활용한 업무 자동화나 프롬프트 엔지니어링 실무 노하우를 발신하고 있습니다.
지난 글(【Python x Anthropic】Claude 3.5 Sonnet으로 구현하는 '자율형 리서치 & 요약 에이전트'의 최소 구성 구현 패턴)에서는 Tool use만으로 구동되는 ReAct 루프 구현을 설명했습니다.
일상 업무나 부업 리서치를 할 때, '수십 페이지에 달하는 사양서', '1시간이 넘는 온라인 회의 녹취 로그', '방대한 기술 문서'를 읽어들이는 비용은 매우 큰 부담입니다.
단순히 '요약해 줘'라는 프롬프트를 던지는 것만으로는 교과서적인 표면적 요약 결과가 나올 뿐, '누가, 언제까지, 무엇을 해야 하는지'와 같은 구체적인 액션 아이템이 묻혀버리기 쉽습니다.
본 글에서는 장문 처리와 컨텍스트 이해에 압도적인 강점을 가진 Claude 3.5 Sonnet을 활용하여, 장문 텍스트에서 '결정 사항', 'TODO(담당자/기한 포함)', '보류 사항'을 로컬 환경에서 100% 확실하게 추출하고 구조화하는 최소 구성의 Python 파이프라인을 설명합니다.
장문 문서 요약 및 액션 아이템 추출에 Claude 3.5 Sonnet이 선택되는 이유는 세 가지가 있습니다.
200k 토큰의 거대한 컨텍스트 윈도우
수십만 자 수준의 장문이나 여러 파일의 녹취록을 한 번에 프롬프트에 넣어 처리할 수 있습니다.
- '건초 더미 속의 바늘(Needle in a haystack)' 같은 높은 탐지 정확도
문장 속에 흩어져 있는 사소한 발언이나 조건 분기('~인 경우 A님이 담당')를 놓치지 않고 잡아냅니다.
- 명령어 추종성과 포맷 견고성
JSON 스키마나 마크다운 표 형식 지정에 대한 충실도가 높아, 후속 자동화 시스템과의 연동이 매우 용이합니다.
Anthropic 공식 Python SDK(anthropic)를 사용하여 텍스트 파일에서 액션 아이템을 자동으로 추출하는 스크립트를 작성합니다.
import os
import json
from anthropic import Anthropic
...
```json":
raw_content = raw_content[7:]
if raw_content.startswith("```"):
raw_content = raw_content[3:]
if raw_content.endswith("```"):
raw_content = raw_content[:-3]
return json.loads(raw_content.strip())
if __name__ == "__main__":
sample_meeting_log = """
【정례 MTG 2026/11/13】
참석자: 사토(PM), 스즈키(엔지니어), 다나카(마케)
사토: 차기 리리즈의 결제 기능에 대해 말씀드리자면, Stripe 본인 인증이 지연되어 테스트 환경 연결이 지체되고 있습니다.
스즈키: 제가 내일 14시까지 더미 데이터용 목 서버를 준비하겠습니다. 그걸로 프론트 동작 확인은 진행할 수 있을 것 같습니다.
다나카: LP 공개일인데, 다음 주 화요일 오전을 목표로 디자인을 확정하고 싶습니다. 사토님, 리뷰를 월요일 저녁까지 부탁드릴 수 있을까요?
사토: 알겠습니다. 월요일 17시까지 확인하겠습니다. 그리고 이용 약관의 법률 검토는 법무팀에 넘겼습니다. 답변 대기 중입니다.
"""
result = extract_action_items(sample_meeting_log)
print(json.dumps(result, ensure_ascii=False, indent=2))
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
실무에서 '쓸모없는 요약'을 방지하기 위한 포인트는 다음과 같습니다.
temperature: 0.0의 철저한 적용
창의성(Creativity)을 배제하고 사실에 기반한 결정 사항만을 충실하게 추출하도록 합니다. 할루시네이션(거짓 정보 생성)을 최소화할 수 있습니다.
- '모르는 경우 명기하기' 네거티브 제약
'담당자나 기한이 적혀있지 않은 경우, 임의로 추측하지 말고 '확인 필요' 또는 '미정'으로 출력하라'고 지정함으로써, 나중에 작업 누락을 방지할 수 있습니다.
- 미해결 논점(open_issues) 분리
결정된 것뿐만 아니라, '이월된 과제'를 별도로 추출하게 함으로써, 다음 회의나 태스크 준비가 극적으로 쉬워집니다.
회의 로그나 사양서에서 TODO를 수작업으로 옮겨 적는 시간은 오늘부터 0으로 만들 수 있습니다.
이 파이프라인을 Slack 봇이나 주기적인 배치 처리(batch processing)에 통합하는 것만으로도 팀 전체의 업무 속도가 비약적으로 향상됩니다.
꼭 로컬 환경에서 실행해 보세요.
저희 연구소(Lab)에서는 실무나 부업으로 즉시 활용 가능한 AI 자동화 노하우와 프롬프트 모음을 공개하고 있습니다.
- 🔰
[체험가 100엔] AI 부업 초보자가 '첫 1엔'을 벌 수 있는 즉효형 프롬프트 3가지
※선착순 10부 한정, 즉시 현금화 가능한 프로젝트 확보 프롬프트 특전 포함 - 📦
[전체 수록] AI 핵스터터 완전 공략 팩 (세트 할인)
https://note.com/calm_alpaca101/m/ma9d054614818 - 🌐
AI 핵 연구소 공식 블로그 (하테나 블로그)