Skip to content

fix: 분할 조각 예산을 최종 EU 텍스트 기준으로 계산 Fixes #33 - #37

Merged
dnjsgkfka merged 1 commit into
mainfrom
fix/split-token-budget
Oct 22, 2026
Merged

dnjsgkfka merged 1 commit into
mainfrom
fix/split-token-budget

Conversation

@dnjsgkfka

Copy link
Copy Markdown
Member

문제

행 단위로 분할한 조각의 최종 text가 한도(512)를 넘었다. 측정값 [803, 179].
Linux/Python 3.12와 Windows/Python 3.14.5에서 같은 수치가 나와 플랫폼 문제가 아니다.

split.py::estimate_chunk_tokens가 캡션 + 표 HTML + 각주만 세고, 모든 조각에 복제되는 섹션 헤더·table_abstract·문맥 단락·평탄화 셀 문장을 예산에서 뺐다. 샘플 EU 기준 최종 text 2,821자 중 1,255자(45%)가 추정에서 누락됐다.

변경

  • 후보 조각을 그대로 조립해 count_eu_tokens()로 최종 텍스트 전체를 세도록 예산 계산 변경
  • 어느 조각이 마지막이 될지 미리 알 수 없으므로 예산은 항상 각주를 포함해 계산
  • 공통 필드 + 행 하나만으로 한도를 넘으면 행 분할로 해결되지 않으므로 llm_summary로 분기

검증

구분 수집 통과 실패 건너뜀
이전 123 109 3 11
이 PR 123 111 1 11

환경: Windows 11 / Python 3.14.5, docling 미설치 경량 구성

tests/specification/test_spec_split.py 11건 전원 통과. 남은 실패는 qa15(GAP-02, #34 ).

영향

분할 조각 수가 늘어나므로 Recall@1 수치가 달라진다. 벤치마크 재측정은 추후 수행한다.

Fixes #33

@dagshub

dagshub Bot commented Oct 22, 2026

Copy link
Copy Markdown

@dnjsgkfka
dnjsgkfka merged commit ed78343 into main Oct 22, 2026
3 of 7 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

분할 조각의 최종 텍스트가 512토큰 한도를 초과

1 participant