feat: FreeTextExtractor(文本分段 + 占位结构化表)

This commit is contained in:
lhl
2026-08-09 03:09:42 +08:00
parent 5818dd01e4
commit a9cc3c9b90
2 changed files with 68 additions and 0 deletions
+17
View File
@@ -0,0 +1,17 @@
from genesis.data_models import CellValue, ExcelTable, SheetType
from genesis.parsers.free_text_extractor import build_free_text_table, extract_text_blocks
def test_extract_blocks_splits_on_empty_rows():
m = [["新入社員を登録。"], [], ["テスト要件:入力。"], [], []]
assert extract_text_blocks(m) == ["新入社員を登録。", "テスト要件:入力。"]
def test_build_free_text_table():
table = build_free_text_table("機能要件", ["A", "B"], "f.xlsx", SheetType.FUNCTION)
assert isinstance(table, ExcelTable)
assert table.detected_type == SheetType.FUNCTION
assert table.extraction_method == "llm_from_free_text"
assert len(table.rows) == 2
assert isinstance(table.rows[0]["text"], CellValue)
assert table.rows[0]["text"].value == "A"