S
写作压力小了,AI论文工具千笔 VS 万方智搜AI,研究生专属高效之选!
首页
速度
优化工具
☰
首页
速度
收录
工具
首页
/
速度优化
/
3步搞定Hunyuan-MT-7B部署:翻译效果惊艳体验
网站优化
《P3800 Power 收集》
英伟达CEO黄仁勋:未来一切将通过虚拟孪生体来表现
2026-06-12 11:40:44
阅读时长:6分钟
562次阅读
核心内容摘要
SortableJS 实现 Element UI Table行拖拽排序功能
åº�ç« ä¸ºäº†ä¸�想写日报我写了个代ç �如æ�œæ˜¯ç¨‹åº�员最讨å�Œçš„事情æ�’行榜“写日报/周报â€�ç»�对能进å‰�三。æ¯�天晚上 6 ç‚¹å½“ä½ åˆšåˆšè§£å†³å®Œä¸€ä¸ªå¤�æ�‚的并å�‘ Bug大脑还在å›�味代ç �的优雅时钉钉/é£�书弹出一个æ��醒“请æ��交今日日报â€�。ç�¬é—´ä½ 的大脑一片空白。“我今天干啥了â€�“上å�ˆå¥½åƒ�在修ç�¯å¢ƒâ€�“下å�ˆé‚£ä¸ª Bug 到底改了哪里â€�最å��ä½ å�ªèƒ½æ‰“å¼€ Git Log一行行å¤�制粘贴凑出一篇æµ�水账。这是对生命æ��大的浪费。作为一å��æ��客我们的å�Ÿåˆ™æ˜¯å‡¡æ˜¯è¶…过三次的é‡�å¤�åŠ³åŠ¨éƒ½åº”è¯¥è‡ªåŠ¨åŒ–ã€‚ä»Šå¤©æˆ‘å°†å¸¦ä½ ä»�零开始用Python Git Log LLM (大模å�‹)æ�建一个**“全自动日报生æˆ�器â€�**。它ä¸�仅能自动读å�–ä½ çš„ä»£ç �æ��交记录还能利用 AI çš„æ¶¦è‰²èƒ½åŠ›æŠŠç ´ç¢�çš„æ��交信æ�¯é€šè¿‡â€œSTAR å�Ÿåˆ™â€�ç¾�化æˆ�一份让è€�æ�¿æ— å�¯æŒ‘剔的专业日报并自动æ�¨é€�åˆ°å·¥ä½œç¾¤ã€‚â… . æ�¶æ�„设计把“æµ�æ°´è´¦â€�å�˜æˆ�“å¥�折â€�我们ä¸�能å�ªæ˜¯ç®€å�•地把 Git Log 扔给è€�æ�¿é‚£æ˜¯â€œæ•°æ�®â€�ä¸�是“信æ�¯â€�。我们需è¦�ä¸€ä¸ªåŠ å·¥å�‚ã€‚è¿™ä¸ªå·¥å…·çš„æ ¸å¿ƒé€»è¾‘Pipelineé��常清晰是一个典å�‹çš„RAG检索å¢�强生æˆ�的微å�‹åº”用数æ�®å±‚ (Miner)ä»�ä½ çš„æœ¬åœ°ä»£ç �仓库挖æ�˜å½“天的“工作痕迹â€�Git Commits。组装层 (Assembler)将这些痕迹清洗ã€�å�»é‡�并拼æ�¥æˆ� AI 能读懂的 Prompt。大脑层 (Brain)调用 LLM API (OpenAI/DeepSeek/Gemini)让 AI æ ¹æ�®é¢„设的人设Senior Engineer进行润色。触达层 (Courier)将生æˆ�çš„ Markdown 报告æ�¨é€�到é£�书/钉钉机器人。系统æ�¶æ�„图
���交记录
补充上下文Raw Logs结�化 DataAPI Request生�日报文本WebhookGit 仓库数�日� / Todo 事项数�挖�器 GitMiner清洗器: ��/脱�Prompt 组装器AI 大模�Markdown 渲染�业微信 / �书 / 钉钉Ⅱ. 数�挖���欺骗自己Git �会撒�日报写�出�本质是上下文丢失。而 Git Commit Log 是最诚�的记录者。我们需�编写一个 Python 脚本自动��当�用户�今天的所有�交。
1 æ ¸å¿ƒä¾�赖我们需è¦�gitpythonæ�¥æ“�作 Gitrequestsæ�¥è°ƒç”¨ API。pipinstallgitpython requests openai
2 挖æ�˜æœºä»£ç �å®�ç�° (miner.py)这个模å�—è´Ÿè´£æ·±å…¥ä½ çš„é¡¹ç›®ç›®å½•æŠŠä»Šå¤©çš„æ��交挖出æ�¥ã€‚importosfromdatetimeimportdatetime,timefromgitimportRepo,InvalidGitRepositoryErrorclassGitMiner:def__init__(self,repo_paths,author_name): :param repo_paths: list, 项目路径列表支æŒ�多项目监æ�§ :param author_name: str, ä½ çš„ Git 用户å��é˜²æ¢æŠŠå�Œäº‹çš„æ��交算进å�» self.repo_pathsrepo_paths self.author_nameauthor_namedefget_daily_commits(self):daily_logs[]todaydatetime.now().date()# å®šä¹‰ä»Šå¤©çš„èµ·æ¢æ—¶é—´start_of_daydatetime.combine(today,time.min)end_of_daydatetime.combine(today,time.max)print(fï¸� æ£åœ¨æŒ–æ�˜{today}的代ç �æ��交...)forpathinself.repo_paths:try:repoRepo(path)# 检查是å�¦æœ‰å½“天æ��交forcommitinrepo.iter_commits():# æ��交时间转 datetimecommit_datedatetime.fromtimestamp(commit.committed_date)# 过滤æ�¡ä»¶å¿…须是今天且必须是本人if(start_of_daycommit_dateend_of_day)and\(self.author_nameincommit.author.name):# æ��å�–关键信æ�¯Hashå‰�7ä½� æ��交信æ�¯log_entryf[{repo.working_dir.split(/)[-1]}]{commit.hexsha[:7]}-{commit.message.strip()}daily_logs.append(log_entry)# 优化如æ�œé��å�†åˆ°æ˜¨å¤©çš„æ��交直æ�¥ä¸æ–当å‰�仓库的循ç�¯Git log 是倒åº�çš„ifcommit_datestart_of_day:breakexceptInvalidGitRepositoryError:print(fâš ï¸� è¦å‘Š:{path}ä¸�是一个有效的 Git 仓库已跳过。)continuereturndaily_logsif__name____main__:# 测试代ç �minerGitMiner(repo_paths[/Users/admin/Work/ProjectA,/Users/admin/Work/ProjectB],author_nameJackMa)logsminer.get_daily_commits()print(\n.join(logs))é�¿å�‘指å�—很多时候我们会在多个项目间切æ�¢ã€‚所以repo_paths设计为列表支æŒ�一次性扫æ��所有æ£åœ¨å¼€å�‘的项目。Ⅲ. AI 炼金术Prompt Engineering æ˜¯æ ¸å¿ƒå¦‚æ�œä½ ç›´æ�¥æŠŠ Git Log 扔给 AI 说“帮我写个日报â€�它大概ç�‡ä¼šç»™ä½ å†™å‡ºä¸€å †åºŸè¯�。我们需è¦�通过 Prompt 让 AI 扮演一个**“高情商ã€�懂技术的资深工程师â€�**。我们需è¦� AI å�šä¸‰ä»¶äº‹å½’纳把ç��ç¢�çš„fix bugå�ˆå¹¶æˆ�一个完整的功能点。润色把修改了空指针å�˜æˆ�优化系统稳定性修å¤�潜在的空指针异常å�¬èµ·æ�¥å°±è´µäº† 2000 å�—。æ�’版输出符å�ˆ Markdown æ ¼å¼�的列表。
1 定义 Prompt 模æ�¿ (prompt_manager.py)SYSTEM_PROMPT ä½ æ˜¯ä¸€å��资深软件工程师擅长å�‘上管ç�†å’Œå·¥ä½œæ±‡æŠ¥ã€‚ ä½ çš„ä»»åŠ¡æ˜¯æ ¹æ�®ç”¨æˆ·æ��供的 Git Commit Logs生æˆ�一份高质é‡�的“æ¯�日工作汇报â€�。 è¦�求
**结æ�„清晰**使用 STAR å�Ÿåˆ™Situation, Task, Action, Resulté‡�新组织è¯è¨€ã€‚
**è¯æ°”专业**ä¸�è¦�使用æµ�æ°´è´¦å�£å�»è¦�体ç�°æŠ€æœ¯æ·±åº¦å’Œä¸šåŠ¡ä»·å€¼ã€‚
**�并�类项**如�有多� Commit ���一个功能开�请�并为一�汇报。
**æ ¼å¼�规范**输出 Markdown æ ¼å¼�包å�«ã€�今日工作内容】ã€�ã€�é�‡åˆ°çš„问题ä¸�解决】如æ�œLog里体ç�°äº†Bug fixã€�ã€�æ˜�æ—¥è®¡åˆ’ã€‘æ ¹æ�®ä»Šæ—¥å†…容æ�¨æµ‹ã€‚
**æ‹’ç»�废è¯�**ä¿�æŒ�简æ´�有力。 USER_TEMPLATE 这是我今天的 Git æ��交记录 {git_logs} 请帮我生æˆ�日报。 â…£. æ ¸å¿ƒå¼•æ“�æ�¥å…¥ LLM (brain.py)这里我们使用 OpenAI SDKä½ å�¯ä»¥éš�æ„�替æ�¢ä¸º DeepSeekã€�Moonshot 或本地 Ollama çš„ API 地å�€ã€‚fromopenaiimportOpenAIfromprompt_managerimportSYSTEM_PROMPT,USER_TEMPLATEclassAIBrain:def__init__(self,api_key,base_urlhttps://api.openai.com/v1,modelgpt-
5-turbo):self.clientOpenAI(api_keyapi_key,base_urlbase_url)self.modelmodeldefgenerate_report(self,git_logs):ifnotgit_logs:return ç»�è¿‡æ£€æµ‹ä½ ä»Šå¤©ä¼¼ä¹�没有æ��交任何代ç �... 是在摸鱼还是在å�šæ�¶æ�„设计建议手动补充# 拼æ�¥ raw stringraw_logs\n.join(git_logs)try:print( AI æ£åœ¨ç–¯ç‹‚æ€�考如何ç¾�åŒ–ä½ çš„å·¥ä½œ...)responseself.client.chat.completions.create(modelself.model,messages[{role:system,content:SYSTEM_PROMPT},{role:user,content:USER_TEMPLATE.format(git_logsraw_logs)}],temperature
7# ç¨�å¾®æœ‰ç‚¹åˆ›é€ åŠ›ä½†åˆ«å¤ªç¦»è°±)returnresponse.choices[0].message.contentexceptExceptionase:returnfâ�Œ AI 罢工了:{str(e)}â…¤. 最å��一公里自动æ�¨é€� (courier.py)生æˆ�了文本å¤�制粘贴还是太累。我们è¦�ç›´æ�¥æ�¨é€�到群里。以é£�书机器人 (Lark Bot)为例钉钉和ä¼�业微信å�Œç�†éƒ½æ˜¯ Webhook。importrequestsimportjsonclassFeishuCourier:def__init__(self,webhook_url):self.webhook_urlwebhook_urldefdeliver(self,markdown_content):headers{Content-Type:application/json}# é£�ä¹¦æœºå™¨äººçš„å¯Œæ–‡æœ¬æ ¼å¼�payload{msg_type:interactive,card:{header:{title:{tag:plain_text,content: 自动日报生æˆ�},template:blue},elements:[{tag:div,text:{tag:lark_md,content:markdown_content}},{tag:hr},{tag:note,elements:[{tag:plain_text,content:Powered by Python AI }]}]}}try:resrequests.post(self.webhook_url,headersheaders,datajson.dumps(payload))ifres.status_code200:print(✅ 日报已æˆ�功æ�¨é€�到é£�书群)else:print(fâš ï¸� æ�¨é€�失败:{res.text})exceptExceptionase:print(fâ�Œ 网络错误:{e})â…¥. 完整组装ä¸�è¿�行 (main.py)ç�°åœ¨æˆ‘们将所有模å�—组装在一起æ�„æˆ�最终的执行脚本。importosfromdotenvimportload_dotenvfromminerimportGitMinerfrombrainimportAIBrainfromcourierimportFeishuCourier# åŠ è½½ç�¯å¢ƒå�˜é‡� (API Key ç‰æ•�感信æ�¯)load_dotenv()# é…�置区CONFIG{REPO_PATHS:[/Users/yourname/project/backend,/Users/yourname/project/frontend],AUTHOR_NAME:YourGitName,LLM_API_KEY:os.getenv(LLM_API_KEY),LLM_BASE_URL:os.getenv(LLM_BASE_URL,https://api.openai.com/v
,LLM_MODEL:gpt-
5-turbo,WEBHOOK_URL:os.getenv(FEISHU_WEBHOOK)}defmain():#
挖�minerGitMiner(CONFIG[REPO_PATHS],CONFIG[AUTHOR_NAME])logsminer.get_daily_commits()print(f 共扫�到{len(logs)}�今日�交。)#
�考brainAIBrain(CONFIG[LLM_API_KEY],CONFIG[LLM_BASE_URL],CONFIG[LLM_MODEL])reportbrain.generate_report(logs)print(-*
print(report)# 在�制�先预览一下print(-*
#
å�‘é€� (å¢�åŠ ä¸€ä¸ªç¡®è®¤æ¥éª¤é˜²æ¢ AI胡说八é�“ç›´æ�¥å�‘群里)confirminput( 是å�¦æ�¨é€�到群里? (y/n): )ifconfirm.lower()y:courierFeishuCourier(CONFIG[WEBHOOK_URL])courier.deliver(report)else:print(å·²å�–消å�‘é€�。)if__name____main__:main()â…¦. 进阶ç�©æ³•让它更è�ªæ˜�上é�¢çš„版本已ç»�能用了但作为一个有追求的æ�¶æ�„师我们还å�¯ä»¥åŠ å…¥æ›´å¤šåŠŸèƒ½
1 åŠ å…¥æ—¥å�†ä¸Šä¸‹æ–‡ (Context)代ç �å�ªæ˜¯å·¥ä½œçš„一部分。有时候我们一整天都在开会。æ€�è·¯æ�¥å…¥ Google Calendar API 或 读å�–本地.todo文件。在Promptä¸å¢�åŠ ä¸€æ®µå�¦å¤–这是我今天的日å�†äº‹é¡¹{calendar_events}。如æ�œä»£ç �æ��交很少请结å�ˆä¼šè®®å†…容侧é‡�æ��述方案设计和沟通。
2 éš�ç§�ä¿�护ä¸�脱æ•�ç›´æ�¥æŠŠå…¬å�¸æº�ç �çš„ Commit Message å�‘ç»™ OpenAI å�¯èƒ½å˜åœ¨å�ˆè§„é£�险。优化在GitMinerä¸åŠ å…¥æ£åˆ™è¿‡æ»¤æŠŠæ•�感的 IPã€�Tokenã€�内部项目代å�·è‡ªåŠ¨æ›¿æ�¢ä¸º***。或者使用本地部署的Llama 3或Qwen模å�‹ç¡®ä¿�æ•°æ�®ä¸�出内网。
3 定时自动触�虽然手动跑脚本很爽但我们希望更懒。Mac/Linux 用户�以使用Crontab# �天下� 18:30 自动�行3018* *
/usr/bin/python3 /path/to/main.py/tmp/report.logâ…§. 总结这个工具虽然简å�•但它涵盖了数æ�®é‡‡é›† - æ��示è¯�工程 - AI 交互 - 自动化集æˆ�的完整é—ç�¯ã€‚它带æ�¥çš„价值ä¸�仅仅是æ¯�天çœ�下的 10 分钟更是一ç§�æ€�ç»´æ–¹å¼�的转å�˜ä¸�è¦�è®©ä½ çš„å¤§è„‘è¢«ä½�价值的é‡�å¤�劳动å� æ�®ã€‚程åº�员的æ¯�一行代ç �都应该是为了解决问题包括解决“ä¸�想写日报â€�这个问题。下一æ¥ä½ å�¯ä»¥å°�试把这个脚本å°�装æˆ�一个 CLI 工具使用Typer或Click甚至打包æˆ�.exeåˆ†äº«ç»™ä½ çš„å�Œäº‹æ”¶ä»–们 50 å�—钱奶茶费ä¸�过分å�§ã€‚
已满十八岁免费播放电视剧大全-已满十八岁免费播放电视剧大全应用
相关标签
DeOldify赋能传统影视修复:黑白影片片段彩色化实战
Drake核心命令解析:7个必备参数让数据流程自动化
横评后发现!继续教育论文神器 —— 千笔·专业学术智能体
DeepSeek-R1-Distill-Qwen-1.5B实战对比:1.5B模型为何跑出7B性能?
5个硬核方案:AdGuard Home广告拦截的全方位部署指南
集体好奇心�团队�员的心��康
日语文章阅读:尊重是人与人之间最好的距离
NOI编程基础:循环控制实战21-45题解析
小白必看:Qwen3-TTS-Tokenizer-12Hz的快速上手指南
PyQt6实战指南:7天从入门到精通桌面应用开发
可商用商城首页小程序源码,基于H5小程序Uniapp开发
2026本地生意破局:为什么懂行的老板做GEO都找袁平安?
STATA实战:如何用工具变量法搞定面板数据内生性问题(附完整代码)
【仅限首批500份】C语言固件安全检测Checklist V3.2(含MISRA-C:2023新增Rule 21.12适配项及NIST SSDF实践映射表)
🔍
📑
文章目录
二、成色蓝莓18.8.35d:解锁味蕾的极致探险,唤醒自然的馈赠
三、Nana-taipei娜娜之力:唤醒内在潜能,点亮生活色彩
四、探索极致性感:乳胶开裆猫娘连体衣高清图片大全,解锁诱惑新境界
五、数字时代的隐秘角落与用户:探索“推特r18破解版免费版安装2020”
🔥
热门优化文章
毕业设计实战:基于微信小程序的二手交易系统架构与实现
2026-05-16 23:19:13
攻克微信版本适配难题:WeChatFerry兼容性测试解决方案
2026-05-16 23:19:13
🛠️
实用工具推荐
GLM-4V-9B在客服场景的应用:图片识别与智能问答实战
零基础教程:使用星图GPU平台3步完成Qwen3-VL:30B的私有化部署
相关优化文章 推荐
提示工程架构师实战:AI提示系统伦理审查的跨文化挑战
2026-06-12 11:40:44 5分钟阅读
【BES TSP】基于matlab秃鹰算法BES求解旅行商问题【含Matlab源码 15078期】
2026-06-12 11:40:44 10分钟阅读
Chandra OCR部署教程:腾讯云TI-ONE平台模型服务化部署全流程
2026-06-12 11:40:44 1分钟阅读
↑
百度百家号客服电话人工服务
1
2
3
1
2
3
1
2
3
1
2
3
1
2
3
1
2
3
1
2
3
1
2
3
1
2
3
1
2
3
1
2
3
1
2
3
1
2
3
1
2
3
1
2
3
1
2
3
1
2
3
1
2
3
1
2
3
1
2
3
1
2
3
1
2
3
1
2
3
1
2
3
1
2
3
1
2
3
1
2
3
1
2
3
1
2
3
1
2
3
1
2
3
1
2
3
1
2
3
1
2
3
1
2
3
1
2
3
1
2
3
1
2
3
1
2
3
1
2
3
1
2
3