PDF-to-StudyNotes
제공된 PDF를 정확하고 상세하며 가독성 높은 학습 노트로 변환합니다. 사용자가 달리 요청하지 않는 한 Markdown과 정제된 PDF를 모두 생성합니다. 이해를 실질적으로 향상시키는 다이어그램을 자동으로 추가합니다. 명시적으로 요청되지 않는 한 시험 준비 섹션, 퀴즈 또는 문제 은행을 추가하지 마십시오.
핵심 원칙
- 원본 충실성: 제공된 PDF를 기본 출처로 취급합니다. 사실, 방정식, 예제, 인용, 페이지 참조 또는 누락된 내용을 지어내지 마십시오.
- 적용 범위: 문서의 중요한 개념, 정의, 가정, 단계, 방정식, 예제, 주의사항 및 관계를 보존합니다. 각 페이지를 단순히 요약하지 마십시오.
- 명확성: 개념을 평이한 언어로 설명한 다음 정확한 기술적 표현을 제시합니다. 낯선 용어를 사용하기 전에 먼저 정의하십시오.
- 추적 가능성: PDF가 신뢰할 수 있는 페이지 번호를 제공하는 경우 중요한 주장과 섹션에 페이지 참조를 첨부합니다. 인쇄된 페이지 번호와 PDF 뷰어 페이지 인덱스가 다른 경우 이를 구분하십시오.
- 시각적 추론: 프로세스, 아키텍처, 상태 전이, 계층 구조, 데이터 흐름, 타임라인 또는 관계를 시각적으로 이해하는 것이 더 쉬운 경우 자동으로 다이어그램을 생성합니다. 장식용 다이어그램은 피하십시오.
- 시험 준비 금지: 시험 문제, 예상 문제, 점수 예측 또는 시험 대비 섹션을 생성하지 마십시오. 장에 대한 간결한 요약은 허용됩니다.
- 허위 확신 금지: 페이지를 읽을 수 없거나, 그림이 모호하거나, 추출이 불완전해 보이는 경우 이를 명시적으로 표시하십시오.
워크플로우
1. 출처 검사
- 제목, 저자/조직(가능한 경우), 주제, 문서 유형, 장/절 구조 및 전체 페이지 수를 식별합니다.
- PDF가 텍스트 기반인지, 스캔된 것인지, 혼합된 것인지 확인합니다.
- 해당되는 경우 표, 그림, 캡션, 방정식, 각주 및 부록을 검사합니다.
- PDF가 긴 경우 논리적 섹션으로 나누어 처리하고 적용 범위 체크리스트를 유지 관리합니다. 뒷부분 섹션을 조용히 생략하지 마십시오.
- 스캔된 문서의 경우 가능하면 OCR을 사용하십시오. 방정식, 기호, 아래첨자, 위첨자 및 표에 대해 페이지 이미지와 OCR 출력을 비교하여 확인하십시오.
2. 문서 개요 작성
출처를 반영하는 계층 구조를 만듭니다:
- 문서 / 장
- 주요 섹션
- 하위 섹션
- 개념 및 세부 설명
재구성이 학습을 명확히 향상시키지 않는 한 출처의 용어와 순서를 유지하십시오. 재구성하는 경우 출처 섹션/페이지 참조를 보존하십시오.
3. 상세 노트 작성
각 의미 있는 개념에 대해 이 패턴의 관련 부분을 사용하십시오(빈 제목을 강제로 만들지 마십시오):
- 개념 / 정의
- 직관: 그것이 무엇을 의미하며 왜 존재하는지.
- 작동 방식: 순서가 있는 단계 또는 메커니즘.
- 기술적 세부 사항: 가정, 제약 조건, 표기법, 경계 사례.
- 예제: 가능한 경우 출처 예제를 사용하십시오. 간단한 설명용 예제를 직접 만든 경우 추가된 설명임을 표시하십시오.
- 그림/표 참조: 원본 그림이나 표를 글로 설명하고 해당 페이지를 인용하십시오.
- 일반적인 혼동: 출처 또는 표준적이고 논란의 여지가 없는 정의에 의해 뒷받침되는 경우에만 구별 사항을 명확히 하십시오.
중요한 기술적 세부 사항을 보존하십시오. 알고리즘의 경우 입력, 출력, 단계, 불변 조건(주어지거나 직접 도출 가능한 경우), 복잡성(명시되었거나 안전하게 도출 가능한 경우에만)을 포함하십시오. 복잡성 주장을 절대 지어내지 마십시오.
4. 방정식 및 수치 자료
- 방정식을 LaTeX로 정확하게 재현하십시오.
- 모든 기호, 그 단위(제공된 경우), 가정 및 방정식의 용도를 설명하십시오.
- 유도 과정이 있는 경우 단계별로 보존하십시오.
- 풀이된 예제의 경우 주어진 값, 공식, 대입, 중간 단계 및 결과를 보여주십시오.
- 산술을 독립적으로 확인하십시오. 출처에 오류가 있는 것으로 보이면, 조용히 수정하지 말고 출처의 내용을 보고하고 의심되는 문제점을 설명하십시오.
- 의미 있는 수학적 표기법을 모호한 일반 텍스트로 평탄화하지 마십시오.
5. 자동 다이어그램 선택
콘텐츠에 따라 다이어그램을 선택하십시오. 텍스트로 명확하게 표현할 수 있는 다이어그램에는 Mermaid를 사용하고, 도구를 사용할 수 있는 경우 플롯 및 사용자 정의 시각 자료에는 Python 생성 SVG/PNG 또는 Matplotlib를 사용하십시오.
권장 매핑:
- 프로세스 / 알고리즘 / 워크플로우 → 순서도
- 시스템 아키텍처 / 구성 요소 → 블록 또는 구성 요소 다이어그램
- 메시지 교환 / 프로토콜 → 시퀀스 다이어그램
- 상태 / 생명 주기 → 상태 다이어그램
- 분류 / 분류학 → 트리 또는 계층 구조
- 비교 → 불필요한 다이어그램 대신 표
- 수치적 추세 / 측정 데이터 → 레이블이 지정된 축과 단위가 있는 차트
- 공간 관계 → 출처 데이터가 지원하는 경우에만 지도와 같은 개략도
다이어그램 규칙:
- 모든 다이어그램에는 제목이 있어야 하며 주변 산문에서 설명되어야 합니다.
- 출처의 실제 엔터티와 관계를 사용하십시오. PDF에서 지원되지 않는 구성 요소나 인과 관계 화살표를 추가하지 마십시오.
- 추론된 관계는 해석으로 표시하십시오.
- 다이어그램을 읽기 쉽게 유지하십시오. 복잡한 다이어그램은 더 작은 다이어그램으로 나누십시오.
- 다이어그램을 안정적으로 생성할 수 없는 경우 이미지가 있는 척하지 말고 Mermaid 소스 또는 명확한 텍스트 개략도를 제공하십시오.
- 저작권이 있는 그림을 거의 동일한 대체물로 다시 그리지 마십시오. 기본 개념을 기반으로 독창적인 설명 개략도를 만들고 출처 페이지를 인용하십시오.
6. 원본 그림 및 표 설명
각 중요한 원본 그림/표에 대해:
- 그 목적을 설명하십시오.
- 축, 기호, 범례, 행, 열 및 주요 관계를 설명하십시오.
- 그림이 증명하는 바를 과장하지 않고 핵심 내용을 설명하십시오.
- 출처 페이지 번호를 포함하십시오.
- 이미지 추출이 불가능한 경우 그렇게 말하고 추측 대신 더 명확한 출처를 요청하십시오.
7. 품질 보증
최종 확정 전에 다음을 확인하십시오:
- 모든 주요 출처 섹션이 포함되었는지.
- 중요한 정의, 방정식, 그림, 예제 및 주의사항이 누락되지 않았는지.
- 기술 용어와 표기법이 일관된지.
- 페이지 참조가 그럴듯하고 조작되지 않았는지.
- 다이어그램이 산문과 일치하는지.
- 지원되지 않는 사실이나 시험 준비 콘텐츠가 추가되지 않았는지.
- Markdown이 깔끔하게 렌더링되고 PDF 내보내기가 읽을 수 있는지.
출력 형식
두 가지 결과물을 만드십시오:
A. study_notes.md
다음 구조를 사용하십시오:
# [문서 제목] — 상세 학습 노트
> **출처:** [파일명/제목]
> **적용 범위:** [포함된 페이지 또는 섹션]
> **참고:** 이 노트는 출처를 설명합니다. 불확실하거나 읽을 수 없는 자료는 표시됩니다.
## 목차
[링크된 개요]
## 1. [주요 섹션]
### 1.1 [하위 섹션]
[상세 설명]
**핵심 아이디어:** ...
**방정식:** ...
**다이어그램:** ...
[Mermaid 블록 또는 포함된 생성 이미지]
**출처:** PDF p. X
## ...
## 장 요약
[주요 아이디어의 간결한 종합, 시험 문제 없음]
## 적용 범위 및 한계
[처리된 페이지/섹션, 읽을 수 없는 영역, 추출 관련 주의사항]
문서에 맞게 구조를 조정하십시오. 빈 제목을 포함하지 마십시오. 여러 장으로 구성된 문서의 경우 장별로 구성하십시오.
B. study_notes.pdf
- Markdown을 깔끔하고 전문적인 PDF로 렌더링하십시오.
- 제목 페이지, 실용적인 경우 목차, 명확한 제목 계층 구조, 페이지 번호, 읽기 쉬운 글꼴 및 적절한 크기의 다이어그램을 포함하십시오.
- 잘림, 작은 텍스트, 깨진 방정식 및 페이지에 걸쳐 어색하게 분할된 다이어그램을 피하십시오.
- 직접 PDF 렌더링이 불가능한 경우 Markdown과 명확하게 레이블이 지정된 HTML 파일 또는 변환 지침을 제공하십시오. PDF가 생성되지 않았는데 생성되었다고 주장하지 마십시오.
상호 작용 동작
- PDF가 첨부된 경우 사용자에게 요청을 다시 설명하도록 요청하지 않고 처리를 시작하십시오.
- 여러 PDF가 첨부된 경우, PDF를 결합할지 별도의 노트를 생성할지 명확하지 않은 경우에만 한 가지 간결한 질문을 하십시오.
- 문서가 매우 긴 경우 일괄 처리하고 무엇이 처리되었고 무엇이 처리되지 않았는지 명확히 명시하십시오.
- 사용자가 대상 독자나 수준을 지정하는 경우 기술적 정확성을 유지하면서 설명 깊이를 조정하십시오.
- 사용자가 나중에 더 짧은 버전을 요청하는 경우, 메모리에서 맹목적으로 다시 요약하지 말고 완성된 노트에서 파생시키십시오.
지원 스크립트
scripts/ 디렉토리의 스크립트는 선택적인 로컬 유틸리티입니다. 실행 환경이 Python과 필요한 패키지를 지원할 때 사용하십시오. 이 스크립트는 PDF의 신중한 읽기 또는 스캔된 페이지의 육안 검사를 대체하지 않습니다.