测试工程师如何利用通用千问大模型精准获取需求文档图片内容

一、背景与价值

在软件测试与需求追踪的实际工作中,经常遇到需求文档、票据、合同等图片资料,这些资料中的关键信息需要被高效、准确地提取和结构化,便于后续的自动化测试、数据归档及追溯分析。传统OCR工具虽能实现基本的文字识别,但在关键信息精准抽取、中文票据格式处理、多语言兼容等方面存在局限。

通义千问OCR大模型,基于阿里云百炼平台,具备卓越的文档、表格、手写体等多类型图片文字识别与信息抽取能力,支持自定义Prompt,能够实现高质量的结构化数据提取,为测试工程师提供了极大的便利和自动化能力提升。


二、应用流程

1. 场景分析

火车票图片关键信息提取为例,测试工程师需自动识别并抽取如下字段:

  • 发票号码
  • 车次
  • 起始站
  • 终点站
  • 发车日期和时间点
  • 座位号
  • 席别类型
  • 票价
  • 身份证号码
  • 购票人姓名

2. 环境准备

  • 注册并获取阿里云百炼平台API Key
  • 安装 openai 兼容SDK(DashScope SDK)
pip install openai

3. 核心代码实践

以下为完整的Python调用示例,包含图片URL、字段自定义、流式输出处理等关键环节:

import os
from openai import OpenAI

client = OpenAI(
    api_key="替换为你的API Key",
    base_url="https://dashscope.aliyuncs.com/compatible-mode/v1",
)
completion = client.chat.completions.create(
    model="qwen-vl-ocr-latest",
    messages=[
        {
            "role": "user",
            "content": [
                {
                    "type": "image_url",
                    "image_url": "图片URL",
                    "min_pixels": 28 * 28 * 4,
                    "max_pixels": 28 * 28 * 8192
                },
                {"type": "text",
                 "text": "请提取车票图像中的发票号码、车次、起始站、终点站、发车日期和时间点、座位号、席别类型、票价、身份证号码、购票人姓名。要求准确无误的提取上述关键信息、不要遗漏和捏造虚假信息,模糊或者强光遮挡的单个文字可以用英文问号?代替。返回数据格式以json方式输出,格式为:{'发票号码':'xxx', '车次':'xxx', ... }"}
            ]
        }
    ],
    stream=True,
    stream_options={"include_usage": True}
)
full_content = ""
for chunk in completion:
    if chunk.choices:
        content = chunk.choices[0].delta.content
        if content:
            full_content += content
print(full_content)

4. 识别效果示例

针对如下火车票截图:

在这里插入图片描述

模型输出结构化JSON数据:

{
    "发票号码": "2432911680400000000",
    "车次": "G1948",
    "起始站": "南京南站",
    "终点站": "郑州东站",
    "发车日期和时间点": "2024年11月14日11:46开",
    "座位号": "04车12A号",
    "席别类型": "二等座",
    "票价": "337.50",
    "身份证号码": "4107281991****5515",
    "购票人姓名": "读小光"
}

三、优势与评估

  1. 精准性高:结合图片内容和自定义Prompt指令,针对特定业务字段精准抽取,极大降低人工校对成本。
  2. 多场景适应:支持文档、票据、手写体等复杂格式,轻松应对需求文档、合同、表单等多种类型图片。
  3. 灵活性强:支持用户编写自定义Prompt,最大化适配不同项目和业务场景需求。
  4. 数据安全:可对敏感字段(如身份证号、姓名等)按需脱敏,保障数据合规。

四、最佳实践与注意事项

  • Prompt设计:根据业务实际,细化信息提取的字段和格式要求,提升结果准确率。
  • 图片质量:确保图片清晰,避免过度模糊、反光、遮挡,提升OCR效果。
  • 异常处理:针对识别不清或遮挡字段,统一用?占位,便于后续人工复核。
  • Token管理:关注接口Token用量和费用,合理规划调用频率。

五、总结

通用千问OCR大模型为测试工程师带来了强大的图片内容结构化提取能力,助力自动化需求追踪、文档归档、票据处理等关键流程。通过合理的Prompt设计与流程集成,可以极大提升测试效率和数据质量,是现代测试工程师不可或缺的智能利器。


建议在实际项目中持续优化Prompt和图片采集流程,结合业务实际反复验证,不断提升模型应用价值。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Python测试之道

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值