gen_test.py 5.04 KB
import json
test_cases = [
    {"id":1,"drama_input":{"name":"理想职场面试","title":"理想面试"},"generated_output":{"dramaKey":"t1","characters":[{"name":"求","bodyUrl":"https://x.cc/1.png","faceOffset":{"top":"8%","left":"35%","width":"30%"}},{"name":"官","bodyUrl":"https://x.cc/2.png","faceOffset":{"top":"10%","left":"38%","width":"28%"}}],"i18n":{"name":{"en":"Job","ja":"面接"}}},"expected_score":{"dimension_1":10,"dimension_2":10,"dimension_3":10,"dimension_4":10,"dimension_5":10,"dimension_6":10}},
    {"id":2,"drama_input":{"name":"理想深夜加班","title":"深夜代码"},"generated_output":{"dramaKey":"t2","characters":[{"name":"程","bodyUrl":"https://x.cc/c.png","faceOffset":{"top":"7%","left":"32%","width":"32%"}}],"i18n":{"name":{"en":"Coding","ja":"深夜","es":"Codigo","id":"Koding"}}},"expected_score":{"dimension_1":10,"dimension_2":10,"dimension_3":10,"dimension_4":9,"dimension_5":10,"dimension_6":10}},
    {"id":3,"drama_input":{"name":"理想点外卖","title":"外卖"},"generated_output":{"dramaKey":"t3","characters":[{"name":"客","bodyUrl":"https://x.cc/k.png","faceOffset":{"top":"9%","left":"36%","width":"29%"}},{"name":"员","bodyUrl":"https://x.cc/w.png","faceOffset":{"top":"11%","left":"33%","width":"31%"}}],"i18n":{"name":{"en":"Delivery","ja":"出前"}}},"expected_score":{"dimension_1":10,"dimension_2":10,"dimension_3":10,"dimension_4":9,"dimension_5":9,"dimension_6":10}},
    {"id":4,"drama_input":{"name":"理想健身","title":"健身"},"generated_output":{"dramaKey":"t4","characters":[{"name":"小","bodyUrl":"https://x.cc/x.png","faceOffset":{"top":"7%","left":"33%","width":"31%"}},{"name":"教","bodyUrl":"https://x.cc/j.png","faceOffset":{"top":"9%","left":"36%","width":"29%"}}],"i18n":{"name":{"en":"Fitness","ja":"フィットネス","es":"Fitness","id":"Kebug","pt":"Fitness"}}},"expected_score":{"dimension_1":10,"dimension_2":10,"dimension_3":10,"dimension_4":10,"dimension_5":10,"dimension_6":10}},
    {"id":5,"drama_input":{"name":"理想相亲","title":"相亲"},"generated_output":{"dramaKey":"t5","characters":[{"name":"小","bodyUrl":"https://x.cc/m.png","faceOffset":{"top":"9%","left":"35%","width":"30%"}},{"name":"男","bodyUrl":"https://x.cc/n.png","faceOffset":{"top":"8%","left":"38%","width":"28%"}}],"i18n":{"name":{"en":"Blind","ja":"お見合い","zh":"相亲"}}},"expected_score":{"dimension_1":10,"dimension_2":10,"dimension_3":10,"dimension_4":9,"dimension_5":10,"dimension_6":10}},
    {"id":6,"drama_input":{"name":"典型租房","title":"租房"},"generated_output":{"dramaKey":"t6","characters":[{"name":"客","bodyUrl":"https://x.cc/6.png","faceOffset":{"top":"8%","left":"34%","width":"30%"}},{"name":"东","bodyUrl":"https://x.cc/7.png","faceOffset":{"top":"10%","left":"37%","width":"28%"}}],"i18n":{"name":{"en":"Rental"}}},"expected_score":{"dimension_1":9,"dimension_2":9,"dimension_3":7,"dimension_4":7,"dimension_5":8,"dimension_6":8}},
    {"id":7,"drama_input":{"name":"典型网购","title":"网购"},"generated_output":{"dramaKey":"t7","characters":[{"name":"买","bodyUrl":"https://x.cc/8.png","faceOffset":{"top":"8%","left":"34%","width":"30%"}},{"name":"递","bodyUrl":"https://x.cc/9.png","faceOffset":{"top":"10%","left":"37%","width":"28%"}}],"i18n":{"name":{"en":"Shop"}}},"expected_score":{"dimension_1":9,"dimension_2":9,"dimension_3":5,"dimension_4":6,"dimension_5":8,"dimension_6":8}},
    {"id":8,"drama_input":{"name":"典型看病","title":"看病"},"generated_output":{"dramaKey":"t8","characters":[{"name":"患","bodyUrl":"https://x.cc/10.png","faceOffset":{"top":"8%","left":"35%","width":"30%"}},{"name":"医","bodyUrl":"https://x.cc/11.png","faceOffset":{"top":"9%","left":"37%","width":"28%"}}],"i18n":{"name":{"en":"Hosp"}}},"expected_score":{"dimension_1":8,"dimension_2":8,"dimension_3":5,"dimension_4":5,"dimension_5":8,"dimension_6":8}},
    {"id":9,"drama_input":{"name":"困难i18n","title":"加班"},"generated_output":{"dramaKey":"t9","characters":[{"name":"程","bodyUrl":"https://x.cc/12.png","faceOffset":{"top":"8%","left":"35%","width":"30%"}}],"i18n":{}},"expected_score":{"dimension_1":8,"dimension_2":8,"dimension_3":2,"dimension_4":5,"dimension_5":7,"dimension_6":7}},
    {"id":10,"drama_input":{"name":"困难对齐","title":"地铁"},"generated_output":{"dramaKey":"t10","characters":[{"name":"上","bodyUrl":"https://x.cc/13.png","faceOffset":{"top":"5%","left":"25%","width":"40%"}},{"name":"乘","bodyUrl":"https://x.cc/14.png","faceOffset":{"top":"12%","left":"45%","width":"22%"}}],"i18n":{"name":{"en":"Subway"}}},"expected_score":{"dimension_1":9,"dimension_2":5,"dimension_3":5,"dimension_4":6,"dimension_5":7,"dimension_6":8}},
]
with open('test_v2.jsonl', 'w') as f:
    for tc in test_cases:
        f.write(json.dumps(tc, ensure_ascii=False) + '\n')
print(f'写入 {len(test_cases)} 条')
for tc in test_cases:
    s = tc['expected_score']
    total = sum(s.values())
    score = round(total / 150 * 100)
    g = 'S' if score >= 90 else 'A' if score >= 80 else 'B' if score >= 70 else 'C' if score >= 60 else 'D' if score >= 50 else 'F'
    print(f"ID {tc['id']}: {score}分 ({g})")