第 8 章 · 串起前 7 个:你的第一个「AI 百宝箱」脚本
生活化引入前 7 章你其实已经偷偷攒了一整套兵器能聊天、能写小红书文案、能接微信、能摘要、能翻译、能讲段子、还能画张图。但老实说——它们现在像一堆散落在地上的乐高想玩的时候还得一个个翻出来拼。我一个朋友就是这样桌面上chat.py、xiaohongshu.py、translate.py排了一排每次用都得回忆上次翻译那个文件叫啥来着。结果呢90% 的功能他根本没用上因为找脚本比用脚本还累。今天咱们干一件爽事把这些散兵游勇收编成一个带菜单的小程序。打开它输入数字 15要啥有啥。这一章是阶段 1 的毕业设计——你将从会写单个脚本的人升级成有自己的 AI 工具箱的人。 大白话原理你前面每章写的本质上都是同一件事的变种把一句话丢给 AI把回答拿回来。区别只是人设卡不同——写文案时你给 AI 戴了爆款写手的帽子翻译时戴了专业翻译的帽子。所以聪明的做法是先写一个万能传声筒ask(问题, 人设)谁要干活就套上对应的人设去喊它。然后在外面套一个菜单像餐厅点菜一样选 1 上聊天、选 2 上文案。换句话说——不是又学新东西而是把你已有的 7 个脚本用函数 菜单打包成一件。小知识这种一个入口、多个功能的结构专业上叫命令行工具CLI。你今天写的就是人生第一个 CLI。 可运行代码方式一云端 API默认需 Key新人有免费额度python# 第 8 章 · AI 百宝箱 --------------------------------------------------- # 安装依赖在终端运行 pip install openai from openai import OpenAI # ① 配置区只改这里就行 API_KEY 你的APIKey # 换成你的真实 Key BASE_URL None # None 用 OpenAI 官方地址云端 # 如果改用本地免费 Ollama把上面两行改成 # API_KEY ollama # Ollama 不校验 Key随便填 # BASE_URL http://localhost:11434/v1 # 本地模型地址 # ② 万能传声筒给 AI 一句话 一个人设拿回回答 def get_client(): 按配置返回客户端云端和本地共用同一套代码不用改别处 if BASE_URL: # 配了本地地址就用本地 return OpenAI(api_keyAPI_KEY, base_urlBASE_URL) return OpenAI(api_keyAPI_KEY) # 否则用云端 client get_client() # 程序启动就建好客户端 def ask(prompt, system你是一个乐于助人的AI助手, modelgpt-4o-mini): 万能调用发 (人设 问题) 给 AI返回纯文本回答 resp client.chat.completions.create( # 调用对话接口 modelmodel, # 云端 gpt-4o-mini / 本地如 qwen2.5:7b messages[ # messages 是对话历史 {role: system, content: system}, # system 给 AI 戴的人设帽 {role: user, content: prompt}, # user 你真正想问的 ], ) return resp.choices[0].message.content # 取出回答文字 # ③ 五个功能全都是 ask() 套不同人设 ----------------------------------- def chat(): 功能1自由聊天 print(输入 exit 退出聊天) while True: q input(你) if q.lower() exit: break print(AI ask(q)) # 不戴特殊帽子普通助手 def xiaohongshu(): 功能2小红书文案一次 10 条 topic input(想写什么主题) print(ask(f帮我写10条关于「{topic}」的小红书文案带emoji和话题标签, system你是爆款小红书文案写手擅长抓痛点)) def summary(): 功能3长文秒变 1 分钟摘要 text input(粘贴一段长文\n) print(ask(f用1分钟能读完的篇幅总结下面内容\n{text}, system你是信息提炼高手只留重点)) def translate(): 功能4英文翻中文 text input(要翻译的英文) print(ask(f翻译成中文保留语气{text}, system你是专业英中翻译)) def joke(): 功能5段子生成器 topic input(段子主题) print(ask(f讲一个关于「{topic}」的搞笑段子带反转, system你是脱口秀段子手)) # ④ 菜单像点菜一样选功能 --------------------------------------------- menu { 1: ( 自由聊天, chat), 2: ( 小红书文案, xiaohongshu), 3: ( 长文摘要, summary), 4: ( 英语翻译, translate), 5: ( 段子生成, joke), } print( 欢迎来到你的 AI 百宝箱 ) for k, (name, _) in menu.items(): print(k, name) # 打印 1 聊天 / 2 文案 ... while True: choice input(\n选个功能0 退出) if choice 0: print(下次见) break if choice in menu: menu[choice][1]() # 调用对应函数 else: print(没这个选项重选)方式二本地 Ollama完全免费零成本只需把配置区改成下面这样其余代码一字不改python# 本地免费版只改这两行其它全一样 API_KEY ollama # 本地不校验填啥都行 BASE_URL http://localhost:11434/v1 # Ollama 的 OpenAI 兼容地址 # 并把 ask() 里的 model 换成你本地装好的模型例如 # modelqwen2.5:7b本地前提先装好 Ollama 并拉一个模型ollama run qwen2.5:7b。跑这一章时模型要在后台开着。不会装第 20 章会手把手教。升级玩法选做加生图按钮把第 7 章的生图函数也收编进来——在menu里加一行6: ( 画张图, draw)再补一个draw()函数调用images.generate即可。云端用 DALL·E本地免费用 Stable Diffusion第 7 章讲过。✨ 炫酷效果 / 变现点一个程序顶七个桌面放一个ai_toolbox.py双击就能用朋友看了直呼你这不像小白写的。接单利器把这套菜单稍微改改比如默认人设换成淘宝详情页写手就是给网店老板用的文案百宝箱按次/按月收费都行。下一步产品化第 35 章会教你怎么把它打包成.exe发给不懂代码的人直接卖或送引流。私域钩子菜单里加个生成引流文案功能自动产出带你公众号/专栏名的短文案发到群里就是活广告。️ 练习题基础在菜单里加一个6. 中英互译切换功能——让用户输入en 你好就翻译成中文zh Hello就翻译成英文提示判断开头字母决定 system 人设。进阶给每个功能运行前后加print(⏳ 思考中…)让等待时不那么尴尬再试试用本地 Ollama 跑通整个百宝箱算算你这一章花了多少钱答案0 元。️ 配图建议一张终端运行截图菜单 15 列出来用户选 2 后吐出 10 条小红书文案直观展示一个程序顶七个。一张对比图左边是桌面上一排散乱的chat.py / translate.py右边是单个ai_toolbox.py配一个菜单气泡标题写从乐高碎片到整套装备。一张人设帽比喻图同一个 AI 小人头上依次换写手帽/翻译帽/段子手帽对应不同输出。

相关新闻

MySQL教学库samp_db导入实战:从ZIP解压到验证的完整避坑指南

MySQL教学库samp_db导入实战:从ZIP解压到验证的完整避坑指南

简介:这份资源是MySQL第五版配套的samp_db示例数据库ZIP压缩包,面向数据库初学者、高校学生及需要SQL实战练习的开发者,用于在真实表结构上理解关系型数据库的设计与查询。压缩包共0个文件(上游未提供明细)&#xff0c…

2026/10/10 1:20:36 阅读更多 →
GitReflow 开源项目教程

GitReflow 开源项目教程

GitReflow 开源项目教程 【免费下载链接】gitreflow Reflow automatically creates pull requests, ensures the code review is approved, and squash merges finished branches to master with a great commit message template. 项目地址: https://gitcode.com/gh_mirrors…

2026/10/10 1:20:36 阅读更多 →
Click 8.3.1 Python CLI 应用与命令组开发实战指南:打包、配置、测试与 Shell 补全

Click 8.3.1 Python CLI 应用与命令组开发实战指南:打包、配置、测试与 Shell 补全

【免费下载链接】context-hub 项目地址: https://gitcode.com/gh_mirrors/co/context-hub 点击查看 免费下载 本文是 Context Hub 仓库中维护者(source: maintainer)整理的 Click Python 包开发指南(对应 content/click/docs/pac…

2026/10/10 1:20:36 阅读更多 →

最新新闻

别再各自为战!MCP成AI界“USB-C接口”:一份C#开发者跨模型接入全指南(TaoToken统一Key实战)

别再各自为战!MCP成AI界“USB-C接口”:一份C#开发者跨模型接入全指南(TaoToken统一Key实战)

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/10 2:04:50 阅读更多 →
DHCP Option43 sub-option 2(华为 FIT AP 场景)

DHCP Option43 sub-option 2(华为 FIT AP 场景)

Option选项 Option43:厂商私有选项(Vendor Specific Information),RFC 定义的通用容器,子选项是华为私有扩展,用于三层场景下给 FIT AP 下发 AC 控制器 IP,让 AP 单播 CAPWAP 发现 AC,解决跨网段 AP 注册 AC 问题华为。 sub-option 2 定义 sub-option 2 = ip-address …

2026/10/10 2:04:50 阅读更多 →
Dev-C++ 手动释放堆内存(C++ new / C malloc两套写法)

Dev-C++ 手动释放堆内存(C++ new / C malloc两套写法)

文章目录一、C 风格:new ↔ delete;new[] ↔ delete[]二、C语言风格:malloc/calloc/realloc ↔ free三、释放后的规范:指针置空四、常见坑(Dev-C里高频出错点)五、什么时候需要手动释放?一、C 风…

2026/10/10 2:04:50 阅读更多 →
验证 Android GMS Security Provider 更新:MASTG-TEST-0295 静态测试指南

验证 Android GMS Security Provider 更新:MASTG-TEST-0295 静态测试指南

文档教程网络安全 【免费下载链接】mastg The OWASP Mobile Application Security Testing Guide (MASTG) is a comprehensive manual for mobile app security testing and reverse engineering. It describes technical processes for verifying the OWASP Mobile Security W…

2026/10/10 2:04:50 阅读更多 →
PCA9422+MKV44F64电源管理闭环设计:感知-决策-执行全链路实现

PCA9422+MKV44F64电源管理闭环设计:感知-决策-执行全链路实现

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/10 2:04:50 阅读更多 →
项目排障这件事AI 只能算帮手,思路得你自己有

项目排障这件事AI 只能算帮手,思路得你自己有

嵌入式排障方法论 硬件配套问题的多渠道解决思路:商家、AI、社区,还有你自己的判断 做一个嵌入式项目,你会发现问题从来不是一个一个来的,是一串一串来的。尤其是硬件和硬件的配套——两家的板子接在一起,谁也不保证…

2026/10/10 2:03:50 阅读更多 →

日新闻

卫星轨道分类全解析:从LEO到GEO的选型逻辑与工程实践

卫星轨道分类全解析:从LEO到GEO的选型逻辑与工程实践

1. 从“卫星轨道分类”这个标题说起:为什么值得花时间搞懂第一次接触“卫星轨道分类”这个概念,很多人会觉得它离自己很远——不就是天上的星星怎么转吗?但如果你正在做航天任务规划、遥感数据接收、星座设计,甚至只是准备一场航天…

2026/10/10 0:00:39 阅读更多 →
Spring AOP 核心原理与实战:从概念到日志切面落地

Spring AOP 核心原理与实战:从概念到日志切面落地

1. 从一个真实痛点说起:为什么你的代码里到处都是重复逻辑刚入行那会儿,我写过一个用户管理模块,注册、登录、改密码、注销四个接口。每个接口里都塞了几乎一样的日志打印、参数校验、事务开启和提交。当时觉得没什么,能跑就行。直…

2026/10/10 0:00:40 阅读更多 →
Python招聘数据采集与分析可视化:从采集清洗到薪资技能城市可视化全链路

Python招聘数据采集与分析可视化:从采集清洗到薪资技能城市可视化全链路

简介:这是一套面向计算机相关专业学生与项目实战学习者的Python数据采集与分析可视化完整项目,以Boss直聘岗位数据为对象,适合用作毕业设计、课程设计或期末大作业。资源包共38个文件,约246KB,以13个py源码文件为核心&…

2026/10/10 0:00:40 阅读更多 →

周新闻

KT148A语音芯片外挂8002D功放的工程实践指南

KT148A语音芯片外挂8002D功放的工程实践指南

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/8 15:26:32 阅读更多 →
LLC谐振变换器增益公式推导:从FHA等效到完整归一化表达式

LLC谐振变换器增益公式推导:从FHA等效到完整归一化表达式

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/10 1:36:08 阅读更多 →
ARM架构深度解析:从RISC设计理念到交叉编译实战

ARM架构深度解析:从RISC设计理念到交叉编译实战

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/9 10:11:06 阅读更多 →

月新闻

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/8 21:13:17 阅读更多 →
Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/9 21:32:20 阅读更多 →
黑夜航拍船只数据集训练YOLOV5模型全流程解析

黑夜航拍船只数据集训练YOLOV5模型全流程解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/9 6:17:20 阅读更多 →