fix: AI 표본 생성 재개 시 목표 건수 보존
This commit is contained in:
parent
265a388389
commit
78e9f8648a
@ -264,6 +264,7 @@ def main() -> int:
|
||||
done = load_done_ids(args.out)
|
||||
if done:
|
||||
logger.info("기존 출력 %d건을 건너뜁니다: %s", len(done), args.out)
|
||||
target_new = max(0, args.limit - len(done))
|
||||
|
||||
rng = random.Random(args.seed)
|
||||
# 소재 행을 결정적으로 섞는다. 같은 seed 면 같은 순서가 나온다.
|
||||
@ -335,7 +336,7 @@ def main() -> int:
|
||||
with sink as sink:
|
||||
if args.dry_run:
|
||||
for task in tasks:
|
||||
if written >= args.limit:
|
||||
if written >= target_new:
|
||||
break
|
||||
_, _, _, target, _, model, prompt = task
|
||||
print(f"\n--- [{written + 1}] model={model} target={target}자 ---")
|
||||
@ -343,9 +344,9 @@ def main() -> int:
|
||||
written += 1
|
||||
else:
|
||||
with ThreadPoolExecutor(max_workers=args.concurrency) as executor:
|
||||
while written < args.limit:
|
||||
while written < target_new:
|
||||
batch = []
|
||||
for _ in range(min(args.concurrency, args.limit - written)):
|
||||
for _ in range(min(args.concurrency, target_new - written)):
|
||||
task = next(tasks, None)
|
||||
if task is not None:
|
||||
batch.append(task)
|
||||
@ -381,7 +382,8 @@ def main() -> int:
|
||||
if written % 50 == 0:
|
||||
logger.info(
|
||||
"생성 %d/%d (길이 폐기 %d, 품질 폐기 %d, 실패 %d)",
|
||||
written, args.limit, skipped_len, skipped_quality, failed,
|
||||
len(done) + written, args.limit,
|
||||
skipped_len, skipped_quality, failed,
|
||||
)
|
||||
|
||||
logger.info(
|
||||
|
||||
Loading…
Reference in New Issue
Block a user