ai_member_xiaoyan/scripts/update_pic_judge_descriptions.py

286 lines
7.3 KiB
Python
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

#!/usr/bin/env python3
"""Update 图片描述 for reading_pic_judge records."""
import json, requests, time
CRED_FILE = "/root/.openclaw/credentials/xiaoyan/config.json"
APP_TOKEN = "CMHSbUUjka3TrUsaxxEc297ongf"
TABLE_ID = "tblJc60aO0T163MJ"
IMAGE_DESC = {
# ---- 121301 ----
"recvj5nIAxF3XG": """1.
风格: 卡通,简单线条
场景:住宅街道,阳光下三栋彩色小房子并排而立
三栋卡通房子 - 黄色屋顶、红色屋顶、蓝色屋顶,并排站着,前面有小路和花草。
2.
风格: 卡通,简单线条
场景:厨房一角
棕色木质橱柜 - 靠着墙,柜子上放着几个盘子,柜门半开能看到里面的杯子。
3.
风格: 卡通,简单线条
场景:客厅一角
一张大沙发 - 蓝色软沙发,沙发上有两个彩色靠垫,沙发前有小茶几。
4.
风格: 卡通,简单线条
场景:卧室
一间卧室 - 里面有粉色小床、床头柜,墙上有时钟和画,地板上铺着地毯。
5.
风格: 卡通,简单线条
场景:卧室
一张小床 - 粉色小床上有枕头和被子,床头柜上放着一盏台灯,房间墙上贴着星星贴纸。
6.
风格: 卡通,简单线条
场景:动物园门口
动物园入口 - 大拱门上写着"ZOO",门外能看到长颈鹿和狮子在围栏里。
7.
风格: 卡通,简单线条
场景:动物园水池
河马 - 一只胖胖的河马泡在浅蓝色的水池里,只露出头和两只小耳朵,旁边有水草。
8.
风格: 卡通,简单线条
场景:卧室衣柜前
牛仔裤 - 一条蓝色牛仔裤叠放在椅子上。
9.
风格: 卡通,简单线条
场景:卧室衣柜前
牛仔裤 - 一条蓝色牛仔裤挂在衣架上。
10.
风格: 卡通,简单线条
场景:森林里
大棕熊 - 一只棕色大熊站在绿色森林中,旁边有大树。""",
# ---- 121401 ----
"recvj5nJG33bBE": """1.
风格: 卡通,简单线条
场景:小学教室
学生们 - 三个穿校服的小学生坐在课桌前,女孩扎着马尾,男孩短发,每人桌上放着课本。
2.
风格: 卡通,简单线条
场景:学校外观
学校建筑 - 一栋红色砖墙的学校大楼,楼顶有国旗飘动,大门敞开,门口有"School"标牌。
3.
风格: 卡通,简单线条
场景:美术课桌面
蜡笔 - 桌上散落着红黄蓝绿紫五支彩色蜡笔。
4.
风格: 卡通,简单线条
场景:美术课桌面
蜡笔 - 红黄蓝绿四支蜡笔整齐排放在白纸上。
5.
风格: 卡通,简单线条
场景:教室
女老师 - 穿着裙子的女老师站在讲台前,手里拿着粉笔,身后的黑板上写着字母。
6.
风格: 卡通,简单线条
场景:儿童卧室地面
垫子 - 一张彩色图案的方形游戏垫铺在地板上,垫子旁边散放着积木玩具。
7.
风格: 卡通,简单线条
场景:儿童卧室
课桌 - 一张木色小课桌,桌上有台灯、铅笔筒和一本打开的书。
8.
风格: 卡通,简单线条
场景:衣帽间
手提包 - 一个红色女士手提包挂在挂钩上,包上有金色扣子。
9.
风格: 卡通,简单线条
场景:卧室门口
书包 - 一个蓝色卡通书包靠在门边。
10.
风格: 卡通,简单线条
场景:衣帽间
手提包 - 一个红色手提包放在白色架子上。""",
# ---- 121501 ----
"recvj5nKxhm8X6": """1.
风格: 卡通,简单线条
场景:白色背景前
小男孩全身 - 一个穿红色T恤和蓝色短裤的男孩从头到脚完整站立双臂自然下垂。
2.
风格: 卡通,简单线条
场景:白色背景前
嘴的特写 - 一张微笑的嘴,上下两排白色牙齿,嘴唇粉色。
3.
风格: 卡通,简单线条
场景:公园草地上
两个小朋友 - 男孩和女孩在草地上一起玩球,两人都笑得很开心。
4.
风格: 卡通,简单线条
场景:白色背景前
耳朵的特写 - 一只人的耳朵,耳廓清晰可见。
5.
风格: 卡通,简单线条
场景:公园
两个小朋友 - 一个男孩和一个女孩手牵手站在树下,两人微笑着看向前方。
6.
风格: 卡通,简单线条
场景:白色背景前
相机 - 一台黑色单反相机,镜头朝前,闪光灯在顶部。
7.
风格: 卡通,简单线条
场景:公园
小男孩 - 一个戴棒球帽的男孩穿着条纹T恤和短裤站在草地上微笑。
8.
风格: 卡通,简单线条
场景:背景前
滑板 - 一个蓝色滑板平放在地上,侧面有火焰图案。
9.
风格: 卡通,简单线条
场景:户外滑板场
女孩滑滑板 - 一个扎马尾的女孩踩在滑板上滑行,滑板在脚下。
10.
风格: 卡通,简单线条
场景:背景前
滑板 - 一个蓝色带火焰图案的滑板平放在地面。""",
# ---- 121601 ----
"recvj5nLUpubaU": """1.
风格: 卡通,简单线条
场景:海滩
夏天 - 金色沙滩上有一把遮阳伞,蓝色大海远处有小帆船,天空挂着大太阳。
2.
风格: 卡通,简单线条
场景:户外
冬天雪景 - 白色雪覆盖地面和房屋屋顶,树木光秃秃的没有树叶,空中飘着雪花。
3.
风格: 卡通,简单线条
场景:户外
冬天雪景 - 一个雪人戴着帽子和围巾站在雪地里,房屋和树上都覆盖着白雪。
4.
风格: 卡通,简单线条
场景:冬天户外
穿厚棉衣的男孩 - 一个男孩穿着厚厚的外套,戴着围巾和手套,嘴里呼出白气,背景是雪地。
5.
风格: 卡通,简单线条
场景:户外
秋天 - 橙色和黄色的落叶铺满地面,树木只剩下稀疏的叶子,天空有一群飞鸟。
6.
风格: 卡通,简单线条
场景:马路上
公交车 - 一辆红色双层公交车停在路边,有窗户和车门。
7.
风格: 卡通,简单线条
场景:卧室
长裤 - 一条蓝色长裤叠放在床边的凳子上。
8.
风格: 卡通,简单线条
场景:卧室
长裤 - 一条深蓝色长裤挂在衣架上。
9.
风格: 卡通,简单线条
场景:户外
下雪 - 白色雪花从天空中纷纷落下,地面和房屋屋顶积了厚厚一层雪。
10.
风格: 卡通,简单线条
场景:户外
雪地 - 白色雪覆盖了整个地面,空中飘着雪花,远处有积雪覆盖的屋顶。""",
}
with open(CRED_FILE) as f:
cred = json.load(f)
app_id = cred["apps"][0]["appId"]
app_secret = cred["apps"][0]["appSecret"]
token_resp = requests.post(
"https://open.feishu.cn/open-apis/auth/v3/tenant_access_token/internal",
json={"app_id": app_id, "app_secret": app_secret},
)
token = token_resp.json()["tenant_access_token"]
for rid, desc in IMAGE_DESC.items():
resp = requests.put(
f"https://open.feishu.cn/open-apis/bitable/v1/apps/{APP_TOKEN}/tables/{TABLE_ID}/records/{rid}",
headers={"Authorization": f"Bearer {token}", "Content-Type": "application/json"},
json={"fields": {"图片描述": desc}},
)
code = resp.json().get("code")
print(f" {rid}: code={code}, desc_len={len(desc)}")
time.sleep(0.5)
# Verify
print("\nVerification:")
for rid in IMAGE_DESC:
resp = requests.get(
f"https://open.feishu.cn/open-apis/bitable/v1/apps/{APP_TOKEN}/tables/{TABLE_ID}/records/{rid}",
headers={"Authorization": f"Bearer {token}"},
)
desc_len = len(resp.json()["data"]["record"]["fields"].get("图片描述", ""))
print(f" {rid}: 图片描述={desc_len}chars {'' if desc_len > 100 else ''}")
print("\nDone.")