← 返回目录
ap3.3实操⏱ 约 10 分钟

抽取实战:把一堆乱文本变成能入库的行

把前面所有零件串成一条能跑批的管线

🔎 最后验证 2026-08📚 来源:本节管线为 ECS 实测(2026-08,deepseek-chat,18 条真实脏文本,脚本与原始输出见本节代码)🧰 DeepSeek API、Python、SQLite
为什么学这个

到这里你手上的零件已经齐了:结实的调用(AP1)、管好的提示词(AP2)、写死的 schema + 校验修复(ap3.1/3.2)。

这一节把它们串成一条真能干活的批处理管线:一堆乱七八糟的文本进去,一张干净的表出来——而且坏数据不会污染好数据

这是你毕业项目里"结构化处理器"那条路的骨架,也是最容易变现的一类 AI 功能(把人工录入的活自动化)。

💡 打个比方

工厂流水线:原料(乱文本)→ 加工(模型提取)→ 质检(校验)→ 返修(修复循环)→ 分流(合格入库/次品进人工)→ 记账(成本流水)。

前面几节做的是各个工位,这一节把传送带接起来。

管线的七个环节

def process_batch(texts, feature="extract"):
    results, failures = [], []
    with ThreadPoolExecutor(max_workers=5)  ex:        
        rows = (ex.( t: process_one(t, feature), texts))
     text, (ok, data, err, meta)  (texts, rows):
        (results  ok  failures).append((text, data, err))
     results, failures

 ():
    row = new_meter_row(feature)                          
    :
        raw = ask_robust(SYS_PROMPT, text)                
        ok, data, errs = validate(raw)                    
          ok:
            raw = repair(SYS_PROMPT, text, raw, errs)     
            ok, data, errs = validate(raw)
         ok  data.get():                
             , data, , row
         ok, data, (.join(errs)   ok  ), row
    :
        write_meter(row)                                  
智图软件的赞赏码
都看到这了,打个赏呗!
接下来 · ap3.4
置信度与拒答:让它说"我不确定"
继续读下一节 →