- archive/hermes-dead-tools-20260820/: hermes独有不在cron不被import的111个一次性排查/测试工具 - archive/hermes-dead-tools-20260820/: 4个废弃scanner(btd1_v3/market_scanner/market_thermometer已废弃/s2v2) - archive/legacy-cleanup-20260820/: MoFin根2旧版(mo_models/technical_analysis)+/home/hmo/scripts无引用旧项目+MoFin/scripts重复prepare_report_data - 删除MoFin根mo_models.py(根旧版,deploy/profile-scripts权威保留) - 保留: mofin_db.py/mo_data.py硬链接(server.py多层sys.path需各目录访问同一inode,非冗余) - fix_gateway.py保留(Gateway看门狗fix_gateway_port.py的活跃依赖,勿误删) - 验证: cron所有脚本引用无缺失, key模块import正常 - hermes独有从116收敛到5核心(alert_logger/market_screener/prepare_report_data/self_todo_executor_v2/xmpp_zhiwei_bot)
29 lines
1.1 KiB
Python
29 lines
1.1 KiB
Python
import json, urllib.request, base64
|
|
|
|
KEY = "sk-aRNj3UwKSLPsDfh15QNTPwbHxahblfaO"
|
|
BASE = "https://token.sensenova.cn/v1"
|
|
MODEL = "sensenova-6.7-flash-lite"
|
|
|
|
img_b64 = base64.b64encode(open('/tmp/test_shot.jpg', 'rb').read()).decode()
|
|
payload = json.dumps({
|
|
"model": MODEL,
|
|
"messages": [{
|
|
"role": "user",
|
|
"content": [
|
|
{"type": "image_url", "image_url": {"url": f"data:image/jpeg;base64,{img_b64}"}},
|
|
{"type": "text", "text": "请识别这张图片中的所有文字内容,包括数字、股票名称、金额、日期。用中文回复。"}
|
|
]
|
|
}],
|
|
"max_tokens": 1500,
|
|
}).encode()
|
|
req = urllib.request.Request(f"{BASE}/chat/completions", data=payload,
|
|
headers={"Content-Type": "application/json", "Authorization": f"Bearer {KEY}"})
|
|
try:
|
|
resp = urllib.request.urlopen(req, timeout=90)
|
|
data = json.loads(resp.read().decode())
|
|
msg = data.get('choices', [{}])[0].get('message', {})
|
|
text = msg.get('content', '') or msg.get('reasoning', '')
|
|
print('OCR OK:')
|
|
print(text[:1500])
|
|
except Exception as e:
|
|
print('OCR FAIL:', e) |