AI汇总CSV销售额:三个答案都是8万韩元,报告为什么还有差别?
已取消订单保留着旧的已付款记录,另一个订单的数量后来又改了。再加上单价缺失和部分退款,难点不是加法,而是该加哪些行。ChatGPT、Gemini和Claude都算出8万韩元。WekeyLab AI会采用Claude的报告结构,因为它让尚未处理的订单不容易被忽略。
本次选择:Claude,把待确认事项放在结果旁边
Claude给出8万韩元、4笔订单、10件商品后,立即说明K104因缺少单价尚未计入,补齐后金额、订单数和商品数都可能一起变化,并建议标记为暂定结果。收到报告的人不用读完整张表,也能知道范围。
ChatGPT和Gemini同样正确地把K104列为待确认,不能说只有Claude发现了缺失。区别在报告的组织方式:Claude补上8个唯一订单等于4笔计入、3笔排除、1笔待确认的核对。我们会保留这行。
同一份十行数据,先选版本再看状态
这是虚构韩国网店2026年9月19日的数据,时间均为韩国时间,金额为韩元。K102在09:15是已付款,10:10变成取消。K103从09:20的2件改为10:00的3件。规则要求先选每个订单的最新修改行,再判断是否已付款。
K104缺单价,应待确认,不能填0。全额退款K105和待付款K108排除。K107部分退款4,000韩元,只减金额,不擅自减少数量。输入没有运费和税额,不能补加。我们在提问前固定八项标准,然后将相同韩文问题各提交一次,不限制长度。
独立Python计算保留K10124,000、K10324,000、K10620,000、K10712,000韩元。商品金额84,000减去部分退款4,000,得到80,000韩元,4笔订单合计10件。中文版保留韩元原值,便于复核,不把数字直接改成人民币。
ChatGPT:逐项核算清楚,信息有些重复
ChatGPT依次给出汇总、全订单表、逐笔算式、排除原因和下次处理步骤。它清楚解释K102为何以最新取消状态为准,K103为何使用3件,还单独说明K107部分退款后仍保留1件。
它的保存正文在本次三份回答中最长。表格、算式和说明存在重复,但方便逐行对照原始资料。正式交接时,我们会把摘要和待确认事项放前面,详细计算放后面。更长不代表本次算术比另外两个更准确。
Gemini:简洁的表格,缺失单价的来源要说清
Gemini的总额和分类同样正确,保存正文是本次最短的。它建议先按最新时间排序、标记空值、对未知状态发出提示,这些输入质量检查很实用。
需要改的是K104的后续处理建议:从商品数据库查正常单价后补入。若数据库保存的是这笔交易实际适用的单价,这样做有用;若只有当前售价或标价,就可能与订单当时的成交价不同。输入没有说明数据库结构。我们会改成从订单详情或支付记录核实实际成交单价。
这不是说Gemini算错了当前合计。它在本次计算中正确排除了K104,得到8万韩元。修正的是下一步操作说明。
Claude:不仅对金额,也核对每个订单去了哪里
Claude说明10行原始数据删除2条旧版本后,留下8个唯一订单;其中计入4笔、排除3笔、待确认1笔。金额正确之外,这还能检查是否有订单无故消失。
它还建议:同一订单若出现相同的最新时间,不随意挑一行,而是转待确认。本样本没有时间并列,所以没有验证这种情况的处理表现,但这是接收下一份文件前值得明确的规则。
WekeyLab AI把Claude的笔数核对、ChatGPT的逐单计算和Gemini的状态值检查结合到最终报告中。三者都算对,没有必要编造一个算术胜者。
顺序一变,8万就成了11万
先筛已付款,会删掉K102较新的取消记录。再从剩余行里选最新版本,就把旧的30,000韩元付款订单算了回来,总额变成110,000韩元。必须先选最新行,再筛状态。
把缺失单价填0更隐蔽:总额仍为80,000,但若将K104纳入,订单数变成5、商品数变成11。若选K103的旧数量2件,总额则变成72,000。这些是我们根据同一输入独立算出的错误处理示例,不是三家AI实际犯的错误。
WekeyLab AI整理的报告
这是针对所给韩元数据的自制报告文案,明确标出尚未解决的订单。
2026-09-19订单CSV汇总——暂定,K104单价待确认 净销售额:80,000韩元;计入订单:4笔;商品数量:10件 计入:K10124,000;K10324,000;K10620,000;K10712,000韩元 计算:商品金额84,000-部分退款4,000 排除:K102取消;K105全额退款;K108待付款 待确认:K104缺单价1笔,不按0处理 核对:10行→8个唯一订单=4计入+3排除+1待确认 未补加运费和税额 后续:核实K104当时实际适用的单价及最新状态,再重新汇总
下次要求的不只是总额,而是可核对的清单
明确最新版本、状态、空值和部分退款的规则,再索取计入、排除、待确认清单,检查三类是否涵盖全部唯一订单。计算不需要的姓名、联系方式应先去掉。
下面是我们的复用提问模板,不是追加测试结果。相关会议记录与退款邮件比较,也讨论了看似合理的结果为何必须保留原有条件。
先按订单选最新修改行,再判断状态。列出计入、排除和待确认订单及逐单算式,核对三类数量是否等于全部唯一订单数。不要用0或当前商品售价填补空单价。最新时间并列或无法判断的值请标为待确认。按下方规则处理退款金额与商品数量。
来源与实际记录
2026年9月19日12:02—12:04韩国时间实际网页回复。同一虚构韩文输入,各提交一次,不限长度。ChatGPT Free、Think关闭、未显示模型名;Gemini Flash、套餐未核实;Claude Free、Sonnet5 Medium。原文指纹核对一致。按预设八项标准及独立Python计算核验;未测试文件上传、大数据集、Excel公式执行或真实店铺财务结账。英中版本是同一次测试的本地化,保留标明的韩元金额。搜索量未知。
Related: meeting action items / 회의록 비교
Related: refund email comparison / 환불 답장 비교
ChatGPT · 2026-09-19 12:02–12:04 KST
온라인 쇼핑몰 주문 CSV를 보고 오늘 매출을 정리하려고 해. 아래는 연습용 가상 자료이고 금액은 원이야. 보고서에 넣을 순매출, 집계 주문 수, 상품 수량과 주문별 계산 근거를 정리해 줘. 제외하거나 확인해야 하는 주문도 알려주고, 다음에 비슷한 파일을 받았을 때 실수를 줄이는 방법도 설명해 줘. 집계 규칙은 이래. 같은 주문번호가 여러 번 나오면 수정시각이 가장 최근인 행 하나만 사용해. 최신 행의 상태가 결제완료인 주문만 집계하고 취소·전액환불·결제대기는 제외해. 단가가 비어 있으면 0원으로 보지 말고 그 주문은 확인 대기로 따로 빼 줘. 순매출은 수량×단가에서 부분환불액을 뺀 값이야. 상품 수량은 집계에 포함한 주문의 수량 합계이고, 부분환불액이 있다고 수량을 임의로 줄이지 않아. 배송비와 세금은 이번 자료에 없으니 추가하지 마. 수정시각은 모두 한국시간이야. 주문번호,수정시각,상태,수량,단가,부분환불액 K101,2026-09-19 09:10,결제완료,2,12000,0 K102,2026-09-19 09:15,결제완료,1,30000,0 K103,2026-09-19 09:20,결제완료,2,8000,0 K104,2026-09-19 09:25,결제완료,1,,0 K105,2026-09-19 09:30,전액환불,1,18000,0 K106,2026-09-19 09:35,결제완료,4,5000,0 K107,2026-09-19 09:40,결제완료,1,16000,4000 K108,2026-09-19 09:45,결제대기,1,25000,0 K103,2026-09-19 10:00,결제완료,3,8000,0 K102,2026-09-19 10:10,취소,1,30000,0 주어진 규칙을 **주문번호 중복 제거 → 최신 행 확인 → 상태 판정 → 단가 확인 → 순매출 계산** 순서로 적용하면 다음과 같습니다. ### 오늘 집계 결과 * **순매출: 80,000원** * **집계 주문 수: 4건** * **상품 수량: 10개** * **확인 대기: K104 1건** * 배송비·세금은 자료에 없으므로 계산에 포함하지 않았습니다. ## 2026년 9월 19일 매출 집계 | 주문번호 | 최종 수정시각 | 최종 상태 | 수량 | 단가 | 부분환불액 | 순매출 | 처리 | | ---- | ------- | ----- | -: | ------: | -----: | ------: | ----- | | K101 | 09:10 | 결제완료 | 2 | 12,000원 | 0원 | 24,000원 | 집계 | | K102 | 10:10 | 취소 | 1 | 30,000원 | 0원 | - | 제외 | | K103 | 10:00 | 결제완료 | 3 | 8,000원 | 0원 | 24,000원 | 집계 | | K104 | 09:25 | 결제완료 | 1 | 단가 없음 | 0원 | - | 확인 대기 | | K105 | 09:30 | 전액환불 | 1 | 18,000원 | 0원 | - | 제외 | | K106 | 09:35 | 결제완료 | 4 | 5,000원 | 0원 | 20,000원 | 집계 | | K107 | 09:40 | 결제완료 | 1 | 16,000원 | 4,000원 | 12,000원 | 집계 | | K108 | 09:45 | 결제대기 | 1 | 25,000원 | 0원 | - | 제외 | ### 집계 계산 * K101: 2 × 12,000 - 0 = **24,000원** * K103: 3 × 8,000 - 0 = **24,000원** * K106: 4 × 5,000 - 0 = **20,000원** * K107: 1 × 16,000 - 4,000 = **12,000원** **순매출 합계: 24,000 + 24,000 + 20,000 + 12,000 = 80,000원** **상품 수량: 2 + 3 + 4 + 1 = 10개** **집계 주문 수: 4건** ### 제외·확인 대기 주문 * **K102:** 처음에는 결제완료였지만 10:10에 수정된 최신 행의 상태가 **취소**이므로 전체 주문을 제외합니다. * **K103:** 09:20의 2개가 아니라 10:00의 최신 행인 **3개**를 사용합니다. * **K104:** 결제완료이지만 **단가가 비어 있으므로 0원으로 계산하지 않고 확인 대기**로 분리합니다. * **K105:** 최신 상태가 **전액환불**이므로 제외합니다. * **K108:** **결제대기**이므로 제외합니다. * **K107:** 부분환불 4,000원이 있어도 수량은 1개 그대로 유지하고, 매출에서 4,000원만 차감합니다. ### 다음에 같은 CSV를 받을 때 실수를 줄이는 방법 가장 안전한 방법은 **금액부터 계산하지 말고 먼저 행을 정리하는 것**입니다. 1. **주문번호별로 묶는다.** 2. 각 주문에서 **수정시각이 가장 늦은 행만 남긴다.** 3. 남은 행의 상태가 `결제완료`인지 확인한다. 4. `결제완료` 중 **단가 공란을 별도로 분리**한다. 5. 나머지만 `수량 × 단가 - 부분환불액`으로 계산한다. 6. 마지막에 **주문 수와 상품 수량을 각각 합산**한다. 7. 특히 중복 주문은 **행 수가 아니라 주문번호 기준**으로 세는지 확인한다. 이번 자료에서 가장 쉽게 생길 수 있는 오류는 **K102의 이전 결제완료 행을 그대로 집계하거나, K103의 이전 수량 2개를 사용하는 것**입니다. 따라서 CSV를 받으면 먼저 `주문번호 → 최신 수정시각 → 최종 상태`를 확인하는 습관을 들이는 것이 좋습니다.
Gemini · 2026-09-19 12:02–12:04 KST
온라인 쇼핑몰 주문 CSV를 보고 오늘 매출을 정리하려고 해. 아래는 연습용 가상 자료이고 금액은 원이야. 보고서에 넣을 순매출, 집계 주문 수, 상품 수량과 주문별 계산 근거를 정리해 줘. 제외하거나 확인해야 하는 주문도 알려주고, 다음에 비슷한 파일을 받았을 때 실수를 줄이는 방법도 설명해 줘. 집계 규칙은 이래. 같은 주문번호가 여러 번 나오면 수정시각이 가장 최근인 행 하나만 사용해. 최신 행의 상태가 결제완료인 주문만 집계하고 취소·전액환불·결제대기는 제외해. 단가가 비어 있으면 0원으로 보지 말고 그 주문은 확인 대기로 따로 빼 줘. 순매출은 수량×단가에서 부분환불액을 뺀 값이야. 상품 수량은 집계에 포함한 주문의 수량 합계이고, 부분환불액이 있다고 수량을 임의로 줄이지 않아. 배송비와 세금은 이번 자료에 없으니 추가하지 마. 수정시각은 모두 한국시간이야. 주문번호,수정시각,상태,수량,단가,부분환불액 K101,2026-09-19 09:10,결제완료,2,12000,0 K102,2026-09-19 09:15,결제완료,1,30000,0 K103,2026-09-19 09:20,결제완료,2,8000,0 K104,2026-09-19 09:25,결제완료,1,,0 K105,2026-09-19 09:30,전액환불,1,18000,0 K106,2026-09-19 09:35,결제완료,4,5000,0 K107,2026-09-19 09:40,결제완료,1,16000,4000 K108,2026-09-19 09:45,결제대기,1,25000,0 K103,2026-09-19 10:00,결제완료,3,8000,0 K102,2026-09-19 10:10,취소,1,30000,0 제시된 집계 규칙에 따라 최신 수정시각을 기준으로 중복을 제거하고 상태를 판별하여 정산한 오늘 매출 보고서입니다. 오늘의 매출 집계 요약 항목 집계 결과 순매출 80,000원 집계 주문 수 4건 총 상품 수량 10개 주문별 상세 처리 및 계산 근거 주문번호 최신 수정시각 최종 상태 수량 단가 부분환불액 순매출 계산식 최종 분류 K101 09:10 결제완료 2 12,000원 0원 (2×12,000)−0=24,000원 집계 포함 K102 10:10 취소 1 30,000원 0원 - 제외 K103 10:00 결제완료 3 8,000원 0원 (3×8,000)−0=24,000원 집계 포함 K104 09:25 결제완료 1 누락 0원 - 확인 대기 K105 09:30 전액환불 1 18,000원 0원 - 제외 K106 09:35 결제완료 4 5,000원 0원 (4×5,000)−0=20,000원 집계 포함 K107 09:40 결제완료 1 16,000원 4,000원 (1×16,000)−4,000=12,000원 집계 포함 K108 09:45 결제대기 1 25,000원 0원 - 제외 확인 대기 및 제외 주문 내역 확인 대기 주문 (1건) K104: 상태는 '결제완료'이나 단가가 비어 있습니다. 임의로 0원 처리하지 않고 상품 DB에서 정상 단가를 확인한 후 매출에 합산해야 합니다. 제외 주문 (3건) K102: 09:15에는 결제완료였으나, 10:10 최신 수정시각 기준 '취소'로 변경되어 집계에서 제외되었습니다. K105: 최신 상태가 '전액환불'로 제외되었습니다. K108: 최신 상태가 '결제대기'로 미결제 상태이므로 제외되었습니다. 향후 유사 CSV 파일 작업 시 실수 방지 가이드 중복 제거 전 정렬 수행: 주문번호로 중복을 제거하기 전에 반드시 수정시각 기준 내림차순(최신순) 정렬을 먼저 실행하세요. 단순 중복 제거만 하면 과거 기록이 남고 최신 상태(예: 취소)가 누락될 수 있습니다. 누락 데이터(NULL) 식별자동화: 단가나 수량 셀이 비어 있는 경우 자동 계산식에서 0으로 넘어가기 쉽습니다. 조건부 서식이나 데이터 검증을 통해 빈 값을 하이라이트 표시하도록 설정하세요. 상태값(Status) 파이프라인 표준화: '결제완료', '취소', '전액환불', '결제대기' 등 상태값을 유효성 검사 목록으로 관리하고, 미인식 상태값이 들어올 경우 경고가 뜨도록 전처리 규칙을 세워두는 것이 좋습니다.
Claude · 2026-09-19 12:02–12:04 KST
온라인 쇼핑몰 주문 CSV를 보고 오늘 매출을 정리하려고 해. 아래는 연습용 가상 자료이고 금액은 원이야. 보고서에 넣을 순매출, 집계 주문 수, 상품 수량과 주문별 계산 근거를 정리해 줘. 제외하거나 확인해야 하는 주문도 알려주고, 다음에 비슷한 파일을 받았을 때 실수를 줄이는 방법도 설명해 줘. 집계 규칙은 이래. 같은 주문번호가 여러 번 나오면 수정시각이 가장 최근인 행 하나만 사용해. 최신 행의 상태가 결제완료인 주문만 집계하고 취소·전액환불·결제대기는 제외해. 단가가 비어 있으면 0원으로 보지 말고 그 주문은 확인 대기로 따로 빼 줘. 순매출은 수량×단가에서 부분환불액을 뺀 값이야. 상품 수량은 집계에 포함한 주문의 수량 합계이고, 부분환불액이 있다고 수량을 임의로 줄이지 않아. 배송비와 세금은 이번 자료에 없으니 추가하지 마. 수정시각은 모두 한국시간이야. 주문번호,수정시각,상태,수량,단가,부분환불액 K101,2026-09-19 09:10,결제완료,2,12000,0 K102,2026-09-19 09:15,결제완료,1,30000,0 K103,2026-09-19 09:20,결제완료,2,8000,0 K104,2026-09-19 09:25,결제완료,1,,0 K105,2026-09-19 09:30,전액환불,1,18000,0 K106,2026-09-19 09:35,결제완료,4,5000,0 K107,2026-09-19 09:40,결제완료,1,16000,4000 K108,2026-09-19 09:45,결제대기,1,25000,0 K103,2026-09-19 10:00,결제완료,3,8000,0 K102,2026-09-19 10:10,취소,1,30000,0 # 2026-09-19 매출 집계 (연습용 가상 자료) ## 1. 보고서 반영 수치 | 항목 | 값 | |---|---| | 순매출 | **80,000원** | | 집계 주문 수 | **4건** (K101, K103, K106, K107) | | 상품 수량 | **10개** | | 확인 대기 | 1건 (K104) | K104는 단가가 비어 있어 위 수치에 넣지 않았습니다. 단가가 확인되면 순매출, 주문 수, 수량이 함께 바뀌므로 보고서에 "잠정, K104 제외"라고 표기하는 것이 안전합니다. ## 2. 주문별 계산 근거 **집계 포함 (최신 행 기준 결제완료)** | 주문번호 | 사용한 행 | 수량 | 단가 | 수량×단가 | 부분환불 | 순매출 | |---|---|---|---|---|---|---| | K101 | 09:10 | 2 | 12,000 | 24,000 | 0 | 24,000 | | K103 | 10:00 (최신) | 3 | 8,000 | 24,000 | 0 | 24,000 | | K106 | 09:35 | 4 | 5,000 | 20,000 | 0 | 20,000 | | K107 | 09:40 | 1 | 16,000 | 16,000 | 4,000 | 12,000 | | **합계** | | **10** | | 84,000 | 4,000 | **80,000** | K103은 09:20 행(2개)이 아니라 10:00 행(3개)을 사용했습니다. K107은 부분환불이 있어도 수량은 1개 그대로입니다. **제외 또는 확인 대기** | 주문번호 | 최신 행 상태 | 처리 | 사유 | |---|---|---|---| | K102 | 취소 (10:10) | 제외 | 09:15에는 결제완료였지만 최신 행이 취소 | | K105 | 전액환불 | 제외 | 집계 대상 상태가 아님 | | K108 | 결제대기 | 제외 | 집계 대상 상태가 아님 | | K104 | 결제완료 | **확인 대기** | 단가 공란 (0원 처리 금지) | **검산:** 고유 주문번호 8개 = 집계 4 + 제외 3 + 확인 대기 1. 전체 행은 10개이고, 중복 행 2개(K102, K103)를 빼면 8개가 남습니다. ## 3. 다음에 실수를 줄이는 방법 1. **순서를 지키기:** 중복 제거(주문번호별 최신 행)를 먼저 하고 상태 필터를 그다음에 적용합니다. 상태 필터를 먼저 걸면 K102의 옛 행(결제완료)이 살아남아 30,000원이 잘못 들어갑니다. 2. **최신 행 판단은 시각 기준으로:** 행 순서가 아니라 수정시각을 날짜·시간 값으로 변환해 비교합니다. 같은 주문에 같은 수정시각 행이 둘 이상이면 임의로 고르지 말고 확인 대기로 뺍니다. 3. **빈 값과 0을 구분하기:** 단가 공란은 0으로 채우지 않고 별도 목록으로 뺍니다. 수량이나 환불액의 공란, 숫자가 아닌 값도 같은 방식으로 처리합니다. 4. **부분환불은 금액에서만 차감하기:** 수량은 원본 그대로 두고, 순매출에서만 환불액을 뺍니다. 5. **건수 대사하기:** 항상 "고유 주문 수 = 집계 + 제외 + 확인 대기"가 맞는지 확인합니다. 맞지 않으면 누락이나 중복이 있는 것입니다. 6. **값 정리하기:** 상태값의 앞뒤 공백, 단가의 쉼표나 문자열 형태(예: "12,000")를 먼저 정리합니다. 7. **보고서에 기준 명시하기:** "최신 수정시각 행 기준, 결제완료만, 배송비·세금 제외, 확인 대기 N건 제외" 한 줄을 붙입니다. 원하시면 이 절차를 그대로 검증하는 스크립트(주석 포함)도 정리해 드리겠습니다.