iflytek summary + cleanup

This commit is contained in:
Beast
2026-06-13 16:47:59 +08:00
parent f883c1ff31
commit 6dd5d86c8b
11 changed files with 433 additions and 195 deletions

64
analyzers/thu_analysis.py Normal file
View File

@ -0,0 +1,64 @@
import sys, os
sys.path.insert(0, "/home/ubuntu/inspiration-collector")
from tools.config import load_secrets, get_output_dir
from tools.llm import DeepSeekClient
from tools.memos_client import MemosClient
from datetime import datetime, timezone, timedelta
import subprocess
secrets = load_secrets()
mc = MemosClient(secrets.get("memos_url", "http://localhost:5230"), secrets["memos_token"])
llm = DeepSeekClient(secrets["deepseek_api_key"], secrets.get("deepseek_model", "deepseek-chat"), temperature=0.5)
TZ_BJ = timezone(timedelta(hours=8))
memos = mc.list_memos(days=7)
keywords = ["清华", "清华大学", "企业战略", "价值网", "战略转折点"]
thu_memos = []
for m in memos:
if any(kw in m["content"] for kw in keywords):
thu_memos.append(m)
if not thu_memos:
print("未找到清华相关灵感")
sys.exit(0)
lines = []
for m in thu_memos:
ct = m["created_at"]
try:
dt = datetime.fromisoformat(ct.replace("Z", "+00:00")) + timedelta(hours=8)
ts = dt.strftime("%m/%d %H:%M")
except:
ts = ct[:16]
lines.append("- **[" + ts + "]** " + m["content"].strip())
user_prompt = "以下是我在清华大学学习期间记录的灵感,请基于此写一篇专题分析:\n\n" + "\n\n".join(lines)
user_prompt += "\n\n请重点分析1) 课程的核心理论框架 2) 推荐的书籍背景介绍 3) 这些知识如何与我的实践相结合"
system_prompt = """你是一个私人学习伙伴。用户正在清华大学参加培训,以下是他记录的与企业战略课程相关的灵感。
请只分析这些内容,不要涉及其他话题。
要求引用原文、融会贯通、有实质内容不少于2000字。输出纯Markdown。"""
result = llm.ask(system_prompt=system_prompt, user_prompt=user_prompt)
date = datetime.now(timezone.utc)
now_bj = datetime.now(TZ_BJ)
content = "---\ndate: " + date.strftime("%Y-%m-%d") + "\ntype: thu-special\ntags: [清华学习, 企业战略, 专题分析]\n---\n\n"
content += result
daily_dir = os.path.join(get_output_dir("daily"), date.strftime("%Y-%m-%d"))
os.makedirs(daily_dir, exist_ok=True)
now_str = now_bj.strftime("%H%M%S")
fname = date.strftime("%Y-%m-%d") + "_thu_analysis_" + now_str + ".md"
fpath = os.path.join(daily_dir, fname)
with open(fpath, "w", encoding="utf-8") as f:
f.write(content)
print("Done: " + fpath + " (" + str(len(result)) + " chars)")
proj = "/home/ubuntu/inspiration-collector"
subprocess.run(["git", "add", fpath], cwd=proj, capture_output=True, timeout=15)
subprocess.run(["git", "commit", "-m", "thu analysis " + now_str], cwd=proj, capture_output=True, timeout=15)
subprocess.run(["git", "push", "origin", "main"], cwd=proj, capture_output=True, timeout=30)
print("Pushed to Gitea")