LLM으로 가상의 기업 94개사, 분개장 70만 행의 월별 재무 데이터셋을 구축해봤습니다
요약
가상의 94개 기업에 대해 1년 치 월별 재무 데이터셋을 구축하여 공개했습니다. 이 데이터는 총 70만 행의 분개장과 월별 재무제표를 포함하며, 기존에는 파악하기 어려웠던 '월별 변화'와 '분개장 수준의 상세 내역'을 제공합니다. 이 데이터셋은 인간 학습용으로 재무지표 연결 고리를 이해하는 데 사용되며, LLM의 재무 분석 및 집계 능력을 검증하는 AI 테스트베드 역할을 합니다.
핵심 포인트
- 월별 분개장(仕訳) 수준의 상세 재무 데이터를 제공합니다.
- 가상의 94개 기업을 통해 다양한 업종과 규모를 시뮬레이션했습니다.
- 재무제표와 분개장의 연결 고리를 학습하고 검증하는 데 유용합니다.
- LLM이 실제 재무 데이터 분석 능력을 테스트할 수 있는 환경을 구축했습니다.
서론: 학습 및 검증에 사용할 만한 재무 데이터가 부족했다
가상의 기업 94개사에 대한 1년 치 분개장과 월별 재무제표를 합성한 데이터셋인 'SyntheticMonthlyFinancials-JP-v1.0.0'을 구축하여 공개했습니다.
갑자기 말인데요, 저는 재무 데이터를 보는 것을 좋아합니다.
다만, 공개된 기업의 재무 데이터는 대부분 연간 또는 분기 단위이며, 월별로 매출이나 자금이 어떻게 움직였는지, 그 숫자가 어떤 거래들의 누적물로 만들어졌는지는 파악하기 어렵습니다.
분개(仕訳) 수준의 데이터는 거의 공개되지 않습니다. 실재 기업의 분개장은 기밀 정보이기 때문에 당연한 일입니다.
그래서 '월별로 확인 가능하며, 분개장까지 거슬러 올라갈 수 있는 재무 데이터'를 직접 만들기로 했습니다.
목적은 실재 기업을 재현하는 것이 아니라, 재무제표의 숫자를 세분화하여 원하는 대로 집계하고 검증할 수 있는 환경을 만드는 것입니다.
사용 목적은 크게 두 가지로 예상합니다.
- 인간 학습용: 분개장과 재무제표의 연결 고리, 월별 변화, 재무지표 계산 등을 직접 손으로 만져보며 확인할 수 있습니다.
- AI 검증용: 집계나 분석 도구 테스트, LLM이 어느 정도까지 재무 데이터를 읽을 수 있는지 검증하는 용도입니다.
무엇을 만들었는가
가상의 기업 94개사, 각 사별 12개월 분(2026년 4월 ~ 2027년 3월, 3월 결산)의 재무 데이터입니다.
분개장 행은 총 70만 행을 넘습니다.
| 항목 | 내용 |
|---|---|
| 기업 수 | 94개사 (업무 소프트웨어, 건설, 지역 서비스, 제조, 인재, 식품 도매 등) |
| ... | 470문항 (1사당 5문항, 6영역, 108종 지표) |
| 기업 규모 | 연간 매출 약 2,300만 엔 ~ 약 38.9억 엔, 첫 달 직원 수 3명 ~ 79명 |
파일 구성은 다음과 같습니다. 회사별로 하나의 폴더에 담겨 있습니다.
SyntheticMonthlyFinancials-JP-v1.0.0/
├── CASE_INDEX.csv # 케이스 ID・회사명・업종 목록
├── COMPANY_OVERVIEW.csv # 94개사의 개요 (업종 구분・규모・주요 재무 수치)
...
94개사 회사에 대하여
업종은 건설과 IT/업무 소프트웨어가 많으며, 이 두 분야가 전체의 약 3분의 1을 차지합니다. 원래 업종 라벨은 표기 오류를 포함하여 29가지가 있으므로, 여기서는 11개 구분으로 묶어 계산했습니다.

규모와 수익성은 상당히 다양합니다. 연간 매출액 중앙값은 약 2.2억 엔이며, 1억 엔 미만이 25개사, 10억 엔 이상이 6개사입니다. 94개사 중 15개사가 영업 적자이고, 4개사는 기말에 채무 초과 상태입니다.
업종 구분별 중앙값은 다음과 같습니다.
| 업종 구분 | 사수 | 연간 매출액 | 영업이익률 | 첫 달 직원 수 | 영업 적자 | 주요 비즈니스 모델 |
|---|---|---|---|---|---|---|
| 건설 | 18 | 3.5억 엔 | 16.0% | 16명 | 2개사 | 프로젝트형, 유지보수 계약형 |
| ... |
열(列)은 월(2026년 4월~2027년 3월), 행(行)은 계목의 가로형 표입니다. 행은 '분류 그룹 → 계목 분류 → 계정 과목 → 보조 과목'의 계층 구조를 가지고 있으며, 하위 열이 공란인 행은 해당 계층의 합계 행입니다. 합계 행과 명세 행을 모두 더하면 이중 계산(double counting)이 되므로 주의해야 합니다.

현금흐름(CF)은 직접법으로, '매출채권 등 회수', '판매관리비 등 지급', '부채 차입', '부채 상환' 등의 입출금 내역을 통해 매월 현금 및 예금의 움직임을 추적할 수 있습니다.
timeline.csv: 경영 이벤트
매월 직원 수와 '숫자가 변한 이유'에 해당하는 이벤트가 포함되어 있습니다. 이 회사의 경우, 예를 들어 다음과 같은 흐름입니다.
| 연월 | 카테고리 | 이벤트 |
|---|---|---|
| 2026-04 | 경영 정책 | 영업 생산성 개선 결정 |
| ... | ||
| 현실과 유사하게 실행된 이벤트가 반드시 재무 데이터에 반영되는 것은 아닙니다. |
결정부터 실행까지의 시간 지연(time lag)이나, 이벤트 전후로 손익계산서(PL)가 어떻게 변했는지도 확인할 수 있습니다.
재무 분석용 QA
각 회사당 5문제씩, 총 470문항의 수치 답변형 문제입니다. 문제에는 계산 정의와 반올림 방식이 기재되어 있으며, 모범 답안에는 계산식과 계산 과정이 첨부되어 있습니다. (아래는 실제 데이터 문제의 예시입니다.)
돈 회수 속도를 보는 문제
2026년 4월~6월 매출채권회전율을 '기간 매출액 ÷ 평균 매출채권'으로 구해주세요. 평균 매출채권은 기초(2026년 3월 말)와 6월 말의 평균입니다. 연간 환산은 하지 않습니다. 정답: 18,600,000 ÷ ((5,800,000 + 6,600,000) ÷ 2) = 3.00회
이익 목표에서 역산하는 문제
2026년 9월 PL을 바탕으로 매출원가는 전액 변동비, 판매관리비는 전액 고정비로 가정합니다. 변동비율이 변하지 않을 때, 월 영업이익을 100만 엔으로 만들기 위해 필요한 매출액을 구해주세요(엔 미만은 반올림). 정답: (판매관리비 14,500,000 + 1,000,000) ÷ (1 − 매출원가 12,000,000 ÷ 매출액 30,000,000) = 25,833,333엔
6개 영역(재무 안전성·유동성, 운전 자금·회전 효율, 현금흐름·상환 능력, 자본 효율·투자 적산, 수익성·성장성, 관리 회계·미래 예측)에 약 78문제씩 배분되어 있습니다. 문제의 약 4할(205문제)은 전표(仕訳)와 PL 등 2~4개 파일을 교차 분석해야 풀 수 있습니다.
어떤 분석이 가능한가?
연간 단위에서는 하나의 숫자로만 보이는 지표도 월별로 보면 크게 움직이는 것을 알 수 있습니다. 예를 들어 영업이익률은 연간으로는 14.0%이지만, 월별로는 5.6%에서 21.4%까지 변동합니다.

2027년 2월의 상승세는 timeline.csv에 있는 가격 인상 시행 월과 일치합니다. 이처럼 '숫자의 움직임'과 '그 이유'를 대조할 수 있다는 것이, 월별 데이터와 이벤트 데이터를 만든 목적입니다.
그 외 가능한 분석들
- 월별 추이 분석: 매출의 계절성, 판매관리비의 고정비·변동비 분해, 자금 흐름의 골짜기가 어느 달에 오는지 파악 -
- 전표(仕訳)를 통한 분석: 고객별·부문별 매출, 매출채권 회수 주기(site), 소비세 흐름 -
- 재무 지표 학습: 자기자본비율, CCC, 순부채/EBITDA 등을 직접 계산하고 QA 모범 답안(계산 과정 포함)으로 채점 확인 -
- 도구 검증: 회계 시스템이나 집계 스크립트, BI 대시보드의 테스트 데이터
AI로 재무 능력을 시험해 볼 수도?
또 다른 동기는 'AI가 재무 데이터를 얼마나 정확하게 읽을 수 있는지'를 보고 싶다는 것입니다. QA는 이를 위해 추가되었습니다. 문제와 참조 파일을 제공하고 수치를 답하게 한 뒤, 모범 답안과 대조하기만 하면 되므로 채점은 기계적으로 할 수 있습니다.
시험할 때 주의해야 할 점이 두 가지 있습니다.
- journal.csv는 그대로 넣기 어려울 때가 많음: 전표장(仕訳帳)은 회사당 중앙값으로 약 700KB, 최대 약 9MB에 달합니다. 사전에 집계하여 제공하거나, 모델에게 집계 도구를 사용하게 함으로써 측정 능력이 달라질 것이라고 생각합니다.
- 계층의 합계 행 주의: 재무제표 CSV는 합계 행과 명세 행이 혼재되어 있으므로, 그대로 넣으면 이중 계산하기 쉽습니다.
문제마다 영역·난이도·참조 파일 수가 파악되므로, '정답률'뿐만 아니라 '여러 파일을 교차할 때 틀리는 경우', '심화 문제에서 무너지는' 등의 오류 경향까지 볼 수 있습니다.
각 모델별 결과는 취합되는 대로 다른 글로 소개할 예정입니다.
어떻게 만들었나
재무 데이터 생성 방법
LLM과 Python을 이용한 시뮬레이션을 결합하여 생성했습니다.
LLM을 활용하여 가상의 기업들의 사업 내용, 고객, 계약 조건, 인원, 설비 등을 설계하게 했습니다. 이 설정들을 바탕으로 Python을 이용해 월별 수요, 매출, 비용, 입출금을 시뮬레이션하고, 발생한 분개장(仕訳)으로부터 재무제표를 집계했습니다.
LLM: 회사 설계 (사업 내용・고객・계약 조건・인원・설비)
↓
Python: 월별 시뮬레이션 (수요・매출・비용・입출금)
...
사업 모델은 SaaS, 건설, 도매, 제조 등 14종류에 대응하며, 계약의 증감, 수주 잔고(受注残), 인원 및 설비의 처리 능력, 계절 변동 등을 반영했습니다.
또한, 가격 인상・채용・설비 투자와 같은 경영 정책은 LLM에게 선택하게 하고, 그 실행 시기나 성공 여부, 재무에 미치는 영향은 프로그램 측에서 처리하고 있습니다. timeline.csv의 '결정했지만 실시되지 않은', '연기된'과 같은 이벤트는 이 시스템을 통해 생성되었습니다.
핵심은 재무 수치를 LLM에게 직접 만들게 하지 않았다는 점입니다.
LLM이 숫자를 쓰게 하면, 차변-대변(貸借)이 맞지 않거나, 재무상태표(BS)와 현금흐름표(CF)가 연결되지 않는 등의 모순이 발생하기 쉽습니다.
재무 분석 QA 생성 방법
QA 질문과 모범 답안은 OpenAI의 gpt-6-pro로 생성했습니다.
각 회사의 재무 데이터를 기반으로, 6개 영역・108종류의 지표에서 질문을 만들게 했으며, 계산 정의・반올림 방식・계산 과정까지 포함하여 출력하게 했습니다.
일관성 검증
전체 94개사・12개월 분 데이터에 대해 회계 수치의 내부 일관성을 검증했습니다.
| 검증 항목 | 결과 |
|---|---|
| 분개의 차변-대변 일치 | 총 275,318건 거래에서 차변과 대변이 일치함 |
| ... |
여기서 확인하는 것은 '데이터끼리 모순되지 않았는지'이지, '업계의 실태로서 타당한 수치인지'는 아닙니다. 이 점은 다음 제약 사항에서 보충합니다.
제약
합성 데이터이므로 할 수 없는 것도 기재합니다.
실제 기업의 데이터가 아닙니다. 회사명・거래처명을 포함하여 모두 가공이며, 실제 명칭과 유사하더라도 관계없습니다. -
업계의 실태를 나타내는 것이 아닙니다. 업계 통계, 세무 신고, 투자 판단의 근거로 사용할 수 없습니다. -
세금은 간략화했습니다. 법인세 등은 결산월(3월)에 일괄 계상했으며, 세무 신고용 계산이 아닙니다. -
기간은 12개월뿐입니다. 전년 동기 대비와 같은 다년간 분석은 할 수 없습니다. -
모범 답안은 제삼자가 감사한 것이 아닙니다. 엄밀한 비교에 사용할 경우 검산을 권장합니다.
마무리
'월별로 보고 싶다', '분개장까지 거슬러 올라가고 싶다'는 저의 욕구에서 만든 데이터셋입니다. 숫자의 이면에 있는 거래나, 월별 변동을 살펴보는 것만으로도 재미있으므로, 재무를 공부하는 분이나 분석 툴 또는 LLM을 시험해 보고 싶은 분들 모두 꼭 사용해 보시기 바랍니다.
재무 전문가가 아니라 단순히 좋아하는 수준이라서, '이 회사의 숫자가 이상하다', '이런 업종이나 지표도 원한다'와 같은 피드백이 있다면 개선해 나갈 예정입니다.
Discussion

AI 자동 생성 콘텐츠
본 콘텐츠는 Zenn AI의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.
원문 바로가기