测试时间

2026年1月30日

Prompt

设计并开发一个基于 OpenAI API 的产品瑕疵检测系统,该系统应允许用户上传产品图片,通过调用 OpenAI API 分析图片内容,识别并以文字输出图片上存在的瑕疵。具体功能需求包括:实现图片上传界面,支持常见图片格式(JPG、PNG等);集成 OpenAI API 进行图像分析,要求能够准确识别至少5种常见产品瑕疵类型(如划痕、凹陷、色差、污渍、变形等);提供清晰的检测结果展示,包括瑕疵位置标记、瑕疵类型分类及置信度评分;系统需具备错误处理机制,能够处理图片上传失败、API调用超时等异常情况;界面设计应简洁直观,响应式布局适配不同设备. 有什么需要我做抉择的可以随时问我

简单分析

这个任务唯一的难点在于如何调用 OpenAI API, 以及生成的 prompt, 别的都是非常常规的业务逻辑, 所以我们重点会关注 AI 生成的 prompt 的质量. 由于是调用 OpenAI API 来检测瑕疵, 最终的效果由 OpenAI 决定, 所以评分时不会关心瑕疵检测的准确性. 所以总的来说会关注以下几部分:

  1. prompt 的质量 (50%)
  2. UI 的美观程度和功能 (40%)
  3. 开发的流畅程度 (10%)

1. Claude Opus 4.5 (In Cursor)

prompt

你是一个专业的产品质量检测AI助手。你的任务是分析产品图片,识别其中可能存在的瑕疵和质量问题。

你需要检测以下类型的瑕疵:
划痕 (Scratch) - 表面的线性损伤或刮痕
凹陷 (Dent) - 表面的凹陷或压痕
色差 (Color Deviation) - 颜色不均匀、斑点或与预期颜色不符
污渍 (Stain) - 表面的污点、水渍或其他污染
变形 (Deformation) - 形状扭曲、弯曲或不规则
裂纹 (Crack) - 表面或结构的裂缝
气泡 (Bubble) - 材料内部或表面的气泡
毛刺 (Burr) - 边缘粗糙或毛边

请以JSON格式返回分析结果,格式如下:
{
  "overallQuality": "优秀/良好/一般/较差",
  "qualityScore": 0-100的数字,
  "defects": [
    {
      "type": "瑕疵类型(中文)",
      "typeEn": "瑕疵类型(英文)",
      "location": "瑕疵在图片中的位置描述",
      "severity": "严重程度:轻微/中等/严重",
      "confidence": 0-100的置信度数字,
      "description": "详细描述"
    }
  ],
  "summary": "整体检测总结,简洁描述产品状况",
  "recommendations": ["改进建议1", "改进建议2"]
}

注意事项:
如果图片不是产品图片或无法识别,请在summary中说明
如果没有检测到瑕疵,defects数组为空,qualityScore应该较高
置信度表示你对该瑕疵判断的确定程度
位置描述要具体,如"左上角""中心偏右""底部边缘"等
请只返回JSON,不要包含其他文字

总体来说 prompt 质量还不错, 唯一的缺点在于, 我们的需求 prompt 里明确说了 UI 上需要展示瑕疵的位置, 但是 Claude 生成的 prompt 里没有包含这个要求, 所以在生成代码的时候, Claude 生成的 UI 上没有展示瑕疵的位置, 这是一个扣分项.

Prompt 得分: 7.

UI

UI 现代且简洁, 配色舒适, 用了环形图展示评分, 列出了检测摘要, 还有改进建议, 唯一的缺点还是上面提到的没有展示瑕疵的位置.

UI 得分: 7.

开发体验

Claude 的开发体验很少让人失望过, 对于这种简单的任务一次过是基本操作, 直接满分.

开发体验得分: 10.

综合评分

Claude Opus 4.5 (In Cursor): 7.3

2. Claude Opus 4.5 (In Claude Code)

Prompt

你是一个专业的产品质量检测专家。请仔细分析这张产品图片,识别以下类型的瑕疵:
划痕 (Scratch) - 表面线性损伤
凹陷 (Dent) - 表面凹陷变形
色差 (Color Deviation) - 颜色不均匀或异常
污渍 (Stain) - 表面污染物
变形 (Deformation) - 形状异常
裂纹 (Crack) - 表面裂缝
气泡 (Bubble) - 表面气泡缺陷

请严格按照以下JSON格式返回检测结果,不要包含任何其他文字:
{
  "hasDefects": boolean,
  "defects": [
    {
      "type": "瑕疵类型中文名",
      "typeEn": "DefectTypeInEnglish",
      "location": "瑕疵在图片中的位置描述,如:左上角、中部偏右、底部边缘等",
      "severity": "low或medium或high",
      "confidence": 0.01.0之间的数字,
      "description": "详细描述该瑕疵的特征"
    }
  ],
  "overallQuality": "good或acceptable或poor",
  "summary": "对产品整体质量的总结评估"
}

注意:
如果没有发现瑕疵,hasDefects设为false,defects为空数组
confidence表示你对该瑕疵判断的置信度
severity根据瑕疵对产品质量的影响程度判断
请仔细观察图片的每个区域

和 Cursor 里的结果差不多, 所以评分也保持一致.

Prompt 得分: 7.

UI

这次 Claude 生成的 UI 就明显不如 Cursor 版的. 在点击分析后不仅没有展示上传的图片, 而且整体设计也比较花里胡哨, 背景色太杂, 还有 AI 特有的喜欢用 emoji.

UI 得分: 5.

开发体验

Claude Code 不用多说, 一次过.

开发体验得分: 10.

综合评分

Claude Opus 4.5 (In Claude Code): 6.5

3. GPT-5.2-codex

Prompt

"你是产品瑕疵检测助手,请只输出严格 JSON。",
"需要识别至少以下5种瑕疵类型:划痕、凹陷、色差、污渍、变形。",
"输出结构如下:",
"{",
'  "summary": "一句话总结",',
'  "defects": [',
"    {",
'      "type": "划痕|凹陷|色差|污渍|变形",',
'      "confidence": 0.0-1.0,',
'      "bbox": { "x": 0-1, "y": 0-1, "width": 0-1, "height": 0-1 }',
"    }",
"  ]",
"}",
"如果没有瑕疵,defects 为空数组,并说明 summary。",
"bbox 为归一化坐标,基于图像宽高比例,粗略框出瑕疵位置。"

这个 prompt 相比 Claude 来说明显拉了一大截. 虽说 context 不宜过长, 但是这也太简洁了.

Prompt 得分: 4

UI

Prompt 简陋, UI 也简陋, 检测结果就只简单写出了两个字. 不过在结果图片里标注了瑕疵位置(开头提到过, 不关心结果准确度, 因为这不 Coding Agent 主要决定的).

UI 得分: 5

开发体验

说实话 GPT 这块真的挺让我震惊, 因为它是唯一一个调用 OpenAI API 报错的 AI, 自己调用自己的 API 都能因为传了不存在的参数而报错也是挺离谱的, 还报错了 3 轮.

开发体验得分: 5

综合评分

GPT-5.2-codex: 4.5

4. Gemini 3 Pro

Prompt

You are an expert Quality Assurance Inspector for product manufacturing.
Your task is to analyze product images and identify potential defects.
Focus on these specific defect types:
Scratches (划痕)
Dents (凹陷)
Discoloration (色差)
Stains (污渍)
Deformation (变形)

For each defect found, provide:
type: One of the 5 types listed above.
confidence: A score between 0 and 1 indicating your certainty.
description: A brief description of the defect.
location: Approximate center coordinates of the defect as [x, y] percentages (0-100) relative to the image width and height. Top-left is [0, 0].

Return the result as a JSON object with a "defects" array.
Example format:
{
  "defects": [
    {
      "type": "Scratches",
      "confidence": 0.95,
      "description": "Visible scratch on the top surface",
      "location": [50, 25]
    }
  ]
}

If no defects are found, return {"defects": []}.

Prompt 和 Claude 比较类似, 并且说明了 location 需要是一个坐标, 加分.

Prompt 得分: 8

UI

号称"前端严父"的 Gemini 做的 UI 也不怎么样, 过于简陋, 不过好在标注了瑕疵的位置, 并且位置是最准的一个(尽管这更多是 Openai 的功劳).

UI 得分: 6

开发体验

一次过.

开发体验得分: 10

综合评分

Gemini 3 Pro: 7.4

5. Composer-1

Prompt

You are a quality control expert analyzing product images for defects.
Analyze the image and identify any defects from these categories:
- scratch: Surface scratches or marks
- dent: Dents or depressions
- color_difference: Color inconsistencies or variations
- stain: Stains, spots, or discolorations
- deformation: Shape deformations or warping
- crack: Cracks or fractures
- discoloration: Unusual color changes
- surface_imperfection: Other surface imperfections

For each defect found, provide:
1. Type (from the categories above)
2. Location description (e.g., "top-left corner", "center area", "edge")
3. Confidence score (0-100)
4. Description of the defect

Return your response as a JSON object with this structure:
{
"defects": [
  {
    "type": "scratch",
    "location": "top-left corner",
    "confidence": 85,
    "description": "Visible scratch approximately 2cm long"
  }
],
"summary": "Overall quality assessment",
"overallQuality": "good|fair|poor"
}

If no defects are found, return an empty defects array with overallQuality "good".

和 Claude 非常像, 同样很详细清楚, 同样缺少了对具体位置的要求, 只要求了模糊位置.

Prompt 得分: 7

UI

UI 相比 Claude 就差了很多.

  • Analyze Another Image 按钮颜色有点突兀
  • 没有在图里画出位置
  • 检测结果里的 90% confidenceStain 感觉应该互换颜色
  • 具体瑕疵的文字颜色比较浅, 不醒目

UI 得分: 5

开发体验

一次过.

开发体验得分: 10

综合评分

Composer-1: 6.5

6. Kimi-K2.5

Prompt

你是一个专业的产品质量检测专家。请仔细分析产品图片,识别以下5种常见瑕疵类型:
划痕 (scratch) - 产品表面的线性损伤
凹陷 (dent) - 产品表面的局部下陷
色差 (color_difference) - 颜色不均匀或与标准不符
污渍 (stain) - 表面的污染或斑点
变形 (deformation) - 产品形状异常或扭曲

请以 JSON 格式返回分析结果,格式如下:
{
  "defects": [
    {
      "type": "瑕疵类型英文",
      "name": "瑕疵中文名称",
      "location": "瑕疵位置描述",
      "confidence": 0.0-1.0,
      "description": "详细描述",
      "severity": "轻微/中等/严重"
    }
  ],
  "summary": "总体评估摘要",
  "totalDefects": 0
}

注意:
只返回 JSON 数据,不要其他文字说明
如果没有发现瑕疵,defects 为空数组
confidence 为 0-1 之间的浮点数
severity 只能是 "轻微""中等""严重"`

同样的, 没有写明 location 需要具体坐标.

Prompt 得分: 7

UI

Kimi 生成的 UI 是 AI 味最浓的: 经典蓝紫色渐变, 经典 emoji, 经典黄色背景文字框.

UI 得分: 6

开发体验

Kimi 在写代码的时候没有出什么乱子, 但是在运行的时候报了依赖找不到的错误, 应该是执行安装依赖的命令时出了什么错.

开发体验得分: 6

综合评分:

Kimi-K2.5: 6.5

7. Qwen-3-coder

本次挑战最大的小丑登场.

Prompt

请分析这张产品图片,识别以下5种类型的瑕疵:划痕、凹陷、色差、污渍、变形。对于每个发现的瑕疵,请提供:1)瑕疵类型 2)在图片中的位置描述 3)置信度评分(0-100%)。如果未发现明显瑕疵,请回复'未发现明显瑕疵'。以JSON格式返回结果,包含字段:defects(数组,每个元素包含type、location、confidence)。
  • Prompt 没有换行
  • 没有提供 JSON 形式的说明
  • 虽然写了需要什么字段, 但是只写了字段名, 没有写字段类型和描述

Prompt 得分: 2

UI

没啥好说的, 根本用不了.

  • 最上面那个蓝色的方块是上传按钮, 初始文本是 "点击上传", 结果上传之后就变成了文件名, 很匪夷所思的行为
  • "开始分析"和"重新选择", 一绿一灰, 非常不协调, 灰色一般用于 disabled 的样式
  • 大黑 banner 很土很丑, 像 10 年前的 bootstrap 风格
  • 同样没有在图里标明位置

UI 得分: 1

开发体验

结果都这样了, 开发体验也不重要了.

开发体验得分: 1

综合评分

Qwen-3-coder: 1.5

排名

模型Prompt (50%)UI (40%)开发体验 (10%)综合评分
Gemini 3 Pro86107.4
Claude Opus 4.5 (In Cursor)77107.3
Claude Opus 4.5 (In Claude Code)75106.5
Composer-175106.5
Kimi-K2.57666.5
GPT-5.2-codex4554.5
Qwen-3-coder2111.5

总结

  1. Claude: 符合最强的地位. 虽然本次挑战里两次都没有注意到对坐标的要求导致惜败 Gemini, 但是别的方面基本都拉满了.
  2. Gemini: 号称前端严父, 但是本次挑战里 UI 画得真的很差, 不过因为抓到了坐标这个需求功能点, 整体小胜 Claude 排到了第一.
  3. GPT: 不符合预期. 虽然我平时没有怎么用过 GPT-5.2-codex 这个模型, 但是就仅有的个位数的次数体验里, 还是比较好的, 没有什么问题. 但是在本次挑战中暴露了严重的幻觉, 连自己的 API 都不知道有什么参数.
  4. Composer-1: 很多人可能没听过这个模型, 这是 Cursor 官方推出的第一个自研编程模型, 最大的特点是速度真的快到飞起. 刚出来的时候我用它问过几个问题, 我的眼睛完全跟不上它往外吐 token 的速度, 一瞬间就完成了回复. 所以一直想测一下它的编程质量如何. 由于是 Cursor 自己出的第一个模型, 我其实是对它没报啥希望的, 但是最终呈现的效果还不错, 中规中矩地完成了, 所以整体超出预期.
  5. Kimi-K2.5: 我之前一直不太喜欢 Kimi, 因为这家公司一直感觉营销大于实力, 尤其是 Kimi-K2 刚出来的时候, 全网都在刷如何用它来驱动 Claude Code, 所以我对它同样没啥期待, 但是最终的效果也还不错, 虽然生成 UI 的 AI 味很浓.
  6. Qwen-3-coder: 有点过分了. 我一直以为它的能力是国产 AI 里第一梯队的, 没想到居然表现这么差, 全方位地差. 只能说继续加油吧️.
本站提供的所有下载资源均来自互联网,仅提供学习交流使用,版权归原作者所有。如需商业使用,请联系原作者获得授权。 如您发现有涉嫌侵权的内容,请联系我们 邮箱:alixiixcom@163.com