<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[盗梦喆丶]]></title><description><![CDATA[人生太长，hello world 太少]]></description><link>https://blog.youkuaiyun.com/daomeng0609</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; daomeng0609]]></copyright><item><title><![CDATA[前端转 AI 100 天 Day 41：阶段复盘——10 天大模型应用，我学会了什么]]></title><link>https://blog.youkuaiyun.com/daomeng0609/article/details/170187976</link><guid>https://blog.youkuaiyun.com/daomeng0609/article/details/170187976</guid><author>daomeng0609</author><pubDate>Tue, 10 Nov 2026 16:51:17 +0800</pubDate><description><![CDATA[Day一句话记住它31LLM 调用就是 HTTP 请求，但更慢、更贵、更不确定325 种失败模式，不同策略应对：网络重试、限流退避、4xx 直接失败33SSE 让"等 5 秒"变成"0.5 秒开始输出"，感知快 10 倍34Function Calling = 模型说要调什么，我来执行，再让它组织答案35让 JSON 输出从"祈祷"到"保证"36Prompt 不是"问问题"，是"给 AI 写说明书"37"一步步思考"六个字，数学题准确率翻 4 倍38。]]></description><category></category></item><item><title><![CDATA[前端转 AI 100 天 Day 40：本地模型部署——用 Ollama 跑一个自己的大模型]]></title><link>https://blog.youkuaiyun.com/daomeng0609/article/details/170187894</link><guid>https://blog.youkuaiyun.com/daomeng0609/article/details/170187894</guid><author>daomeng0609</author><pubDate>Mon, 09 Nov 2026 14:41:19 +0800</pubDate><description><![CDATA[Ollama 是本地模型的最佳入口：一键安装、命令简单、兼容 OpenAI 格式本地模型无缝接入现有架构加一行就搞定混合模式是未来：简单任务本地、复杂任务云端，兼顾成本和效果本地模型的意义，不是"取代云端"，而是"多一个选择"。云端：强大、稳定、按量付费本地：隐私、免费、离线可用两者不是"二选一"，是"按场景选"。就像前端不会只用 CDN，也会用本地缓存一样——关键不是"哪个好"，而是"什么时候用哪个"。从今天起，你有了"云端 + 本地"双引擎。别人限流涨价的时候，你依然稳如泰山。]]></description><category></category></item><item><title><![CDATA[前端转 AI 100 天 Day 39：多模型适配——一套代码，切换所有大模型]]></title><link>https://blog.youkuaiyun.com/daomeng0609/article/details/170187657</link><guid>https://blog.youkuaiyun.com/daomeng0609/article/details/170187657</guid><author>daomeng0609</author><pubDate>Fri, 06 Nov 2026 10:13:05 +0800</pubDate><description><![CDATA[核心：定义一套"所有模型都遵守的接口"。创建"""LLM 抽象接口"""@dataclass"""一条消息"""return d@dataclass"""对话响应"""model: str@property"""LLM 客户端抽象基类所有模型适配器都必须实现这些方法。业务代码只依赖这个接口，不依赖具体实现。]]></description><category></category></item><item><title><![CDATA[前端转 AI 100 天 Day 38：Token 管理与成本优化——别让 API 账单爆炸]]></title><link>https://blog.youkuaiyun.com/daomeng0609/article/details/169451922</link><guid>https://blog.youkuaiyun.com/daomeng0609/article/details/169451922</guid><author>daomeng0609</author><pubDate>Wed, 04 Nov 2026 22:56:21 +0800</pubDate><description><![CDATA[Token 计算要精确tiktoken能用就用，估算可能差几倍四种省钱策略：Prompt 精简 + 上下文裁剪 + Prompt Cache + 模型分级成本监控是必备：记录每次调用、按用户/模型/接口统计、设预算告警AI 应用和传统应用最大的差异之一：传统应用：CPU 和内存是"成本"，但边际成本递减。AI 应用：每次调用都是"真金白银"，边际成本几乎不变。用户翻倍，成本就翻倍。这意味着"成本控制"不是"上线后优化"的事，而是"设计时就要考虑"。选对模型→ 省 90%→ 省 80%]]></description><category></category></item><item><title><![CDATA[前端转 AI 100 天 Day 37：Few-shot 与 CoT——让模型学会“推理”]]></title><link>https://blog.youkuaiyun.com/daomeng0609/article/details/169451888</link><guid>https://blog.youkuaiyun.com/daomeng0609/article/details/169451888</guid><author>daomeng0609</author><pubDate>Tue, 03 Nov 2026 14:56:50 +0800</pubDate><description><![CDATA[Zero-shot 判成"技术支持"，但实际是售前咨询。]]></description><category></category></item><item><title><![CDATA[前端转 AI 100 天 Day 36：Prompt 工程入门——从“感觉对了就行”到方法论]]></title><link>https://blog.youkuaiyun.com/daomeng0609/article/details/169451860</link><guid>https://blog.youkuaiyun.com/daomeng0609/article/details/169451860</guid><author>daomeng0609</author><pubDate>Mon, 02 Nov 2026 22:20:05 +0800</pubDate><description><![CDATA[Prompt 四要素：角色 + 任务 + 约束 + 示例，不是随便问一句System Prompt 是大杀器：放"准则"而不是"具体问题"，一次写好处处用Prompt 是可测试的工程产物：给测试用例、A/B 对比、版本管理Prompt 工程最反直觉的一点：写得越详细，效果反而越好。新手总觉得"AI 应该能懂我的意思"，结果给一个模糊的 prompt，得到一个模糊的答案。“AI 不会读心术，你必须把要求说清楚。这和带新人一模一样。带新人：写清楚的文档、给示例、说明边界写 Prompt。]]></description><category></category></item><item><title><![CDATA[前端转 AI 100 天 Day 35：结构化输出——让 LLM 稳定返回 JSON]]></title><link>https://blog.youkuaiyun.com/daomeng0609/article/details/169451819</link><guid>https://blog.youkuaiyun.com/daomeng0609/article/details/169451819</guid><author>daomeng0609</author><pubDate>Sat, 31 Oct 2026 22:56:30 +0800</pubDate><description><![CDATA["""笔记的结构化模型""""""待办事项"""content: str = Field(min_length=1, max_length=200, description="事项内容")description="优先级",description="截止日期，格式 YYYY-MM-DD，没有就不填","""结构化笔记"""title: str = Field(min_length=1, max_length=100, description="笔记标题")]]></description><category></category></item><item><title><![CDATA[前端转 AI 100 天 Day 34：Function Calling——让 AI 学会“用工具”]]></title><link>https://blog.youkuaiyun.com/daomeng0609/article/details/169451751</link><guid>https://blog.youkuaiyun.com/daomeng0609/article/details/169451751</guid><author>daomeng0609</author><pubDate>Fri, 30 Oct 2026 16:35:20 +0800</pubDate><description><![CDATA[每个工具包括：名字、描述、参数 Schema。tools = ["description": "查询指定城市的当前天气","city": {"description": "城市名称，如'北京'",},"unit": {"description": "温度单位",},},},},},含义参数是一个对象properties每个字段的定义required必填字段enum允许的值给模型看的说明极其重要——模型靠它判断"什么时候用这个工具"。同样的功能，写得好不好，效果差 10 倍。]]></description><category></category></item><item><title><![CDATA[前端转 AI 100 天 Day 33：流式输出——让 AI 像打字机一样回复]]></title><link>https://blog.youkuaiyun.com/daomeng0609/article/details/168547116</link><guid>https://blog.youkuaiyun.com/daomeng0609/article/details/168547116</guid><author>daomeng0609</author><pubDate>Wed, 28 Oct 2026 16:44:28 +0800</pubDate><description><![CDATA[Day 32 把 LLM 客户端工程化了，重试、超时、降级、限流全有了。——发一个问题，转圈等 3-5 秒，然后"唰"地一下全部出现。这个效果叫，今天把它加上。]]></description><category></category></item><item><title><![CDATA[前端转 AI 100 天 Day 32：LLM 客户端工程化——重试、超时、降级、限流]]></title><link>https://blog.youkuaiyun.com/daomeng0609/article/details/168547072</link><guid>https://blog.youkuaiyun.com/daomeng0609/article/details/168547072</guid><author>daomeng0609</author><pubDate>Tue, 27 Oct 2026 16:54:17 +0800</pubDate><description><![CDATA[LLM 调用有 5 种失败模式：网络 / 超时 / 429 / 5xx / 4xx，不同模式不同策略重试要"聪明"：区分错误类型、指数退避、读、加抖动生产级客户端要"多层防护"：并发限流 + QPS 限流 + 重试 + 降级LLM 客户端开发和"传统 HTTP 客户端"开发在本质上是同一件事**。**传统 API：超时 3s，重试 3 次，挂了切备用LLM API：超时 30s，重试 3 次，挂了切模型唯一区别：LLM 更慢、更贵、更不稳定。所以超时更长、重试更谨慎、成本要监控。]]></description><category></category></item><item><title><![CDATA[前端转 AI 100 天 Day 31：大模型入门——从 GPT 到 API，搞懂 LLM 的一切]]></title><link>https://blog.youkuaiyun.com/daomeng0609/article/details/168547040</link><guid>https://blog.youkuaiyun.com/daomeng0609/article/details/168547040</guid><author>daomeng0609</author><pubDate>Mon, 26 Oct 2026 20:15:00 +0800</pubDate><description><![CDATA[Day 30 把服务正式上线了，30 天走完 Python + 后端工程化。——它只是把输入套个模板返回，根本不是真的 AI。未来 15 天，把 Mock 换成真 LLM，让助手真正"能思考"。]]></description><category></category></item><item><title><![CDATA[前端转 AI 100 天 Day 30：正式上线——从零部署一个完整服务（含 30 天复盘）]]></title><link>https://blog.youkuaiyun.com/daomeng0609/article/details/168547001</link><guid>https://blog.youkuaiyun.com/daomeng0609/article/details/168547001</guid><author>daomeng0609</author><pubDate>Fri, 23 Oct 2026 16:12:36 +0800</pubDate><description><![CDATA[完整走通了"从代码到上线"的全流程：租服务器 → 配域名 → 装 Docker → 部署 → HTTPS → 运维上线不只是"跑起来"：还要 SSL、限流、日志、备份、监控、告警30 天从 0 到 1：从 Python 语法到能上线服务，一个人、一台电脑、每天 2 小时很多人问"学 Python 要多久才能做项目"。答案不是"学完语法后"，而是"从第一天就开始做"。Day 1 写 Hello World，Day 30 上线 HTTPS 服务。中间隔的不是"学了多少知识"，是"坚持了多少天"。]]></description><category></category></item><item><title><![CDATA[前端转 AI 100 天 Day 29：Nginx 反代 + HTTPS——让服务“能上公网“]]></title><link>https://blog.youkuaiyun.com/daomeng0609/article/details/168546957</link><guid>https://blog.youkuaiyun.com/daomeng0609/article/details/168546957</guid><author>daomeng0609</author><pubDate>Thu, 22 Oct 2026 22:50:07 +0800</pubDate><description><![CDATA[Nginx 反向代理是"生产环境的标配"：HTTPS 终止 + 转发 + 限流 + 压缩，一次搞定HTTPS 用 Let’s Encrypt 免费证书 + certbot 自动续期：0 成本上专业级 HTTPSproxy_passtry_files是 Nginx 的三大核心，必须掌握前端到生产的最后一步，就是"通过一个正式域名对外服务"。从"IP:端口"到"域名 + HTTPS"，是"个人 demo"到"线上服务"的最后一步。✅ 域名 + HTTPS✅ HTTP 自动跳转。]]></description><category></category></item><item><title><![CDATA[前端转 AI 100 天 Day 28：CI/CD——GitHub Actions 自动化部署]]></title><link>https://blog.youkuaiyun.com/daomeng0609/article/details/168546890</link><guid>https://blog.youkuaiyun.com/daomeng0609/article/details/168546890</guid><author>daomeng0609</author><pubDate>Wed, 21 Oct 2026 15:14:07 +0800</pubDate><description><![CDATA[CI/CD 是"代码事件驱动的自动化"：push 触发测试，tag 触发部署GitHub Actions 三件套：Workflow（YAML） + Job（任务） + Step（步骤）矩阵测试 + 缓存 + 健康检查是三大实用技巧：多版本兼容、加速构建、保证部署成功CI/CD 的核心价值不是"省事"，是"可靠"。手动部署 100 次，99 次成功，1 次忘了步骤就出事故自动部署 1000 次，每次都按脚本执行，可复现、可追溯、可回滚Vercel 让前端习惯了"push 即部署"]]></description><category></category></item><item><title><![CDATA[前端转 AI 100 天 Day 27：Docker 容器化——从“我电脑能跑“到“到处能跑“]]></title><link>https://blog.youkuaiyun.com/daomeng0609/article/details/167881888</link><guid>https://blog.youkuaiyun.com/daomeng0609/article/details/167881888</guid><author>daomeng0609</author><pubDate>Tue, 20 Oct 2026 17:06:01 +0800</pubDate><description><![CDATA[思路：用两个阶段——构建阶段装依赖，运行阶段只拿产物。# ============ Stage 1: 构建 ============# 装编译工具gcc \# 装依赖到虚拟环境# ============ Stage 2: 运行 ============# 只复制虚拟环境（不带编译工具）# 复制源码关键点：Stage 1 装了gcc编译工具Stage 2 只复制虚拟环境——gcc不进来最终镜像小了一半以上相当于webpack的——只把"运行时需要的东西"打进最终产物。]]></description><category></category></item><item><title><![CDATA[前端转 AI 100 天 Day 26：可观测性——日志、指标、追踪三件套]]></title><link>https://blog.youkuaiyun.com/daomeng0609/article/details/167881737</link><guid>https://blog.youkuaiyun.com/daomeng0609/article/details/167881737</guid><author>daomeng0609</author><pubDate>Mon, 19 Oct 2026 16:49:48 +0800</pubDate><description><![CDATA[概念解决的问题监控已知问题是否发生（CPU > 80%？可观测性未知问题为什么发生（这个请求为什么慢？│ 可观测性（Observability） ││ （日志） │ （指标） │ （追踪） ││ 发生了什么？│ 有多少/多快？│ 经过哪些步骤？││ 文本记录 │ 数值统计 │ 调用链 ││ 事后查 │ 实时告警 │ 性能分析 │三者的关系：Metrics 告诉你"有问题"：错误率突然升高Traces 告诉你"哪里有问题"：某个接口的某个步骤慢Logs 告诉你"为什么有问题"：具体报错信息。]]></description><category></category></item><item><title><![CDATA[前端转 AI 100 天 Day 25：API 性能优化——缓存、分页、N+1 查询]]></title><link>https://blog.youkuaiyun.com/daomeng0609/article/details/167881565</link><guid>https://blog.youkuaiyun.com/daomeng0609/article/details/167881565</guid><author>daomeng0609</author><pubDate>Sun, 18 Oct 2026 22:28:55 +0800</pubDate><description><![CDATA[列出 10 个会话，每个会话带消息数。for s in sessions: # 1 次查询拿到 10 个会话count = len(s.messages) # ← 每次访问触发一次查询！-- 1 次-- 第 1 个会话-- 第 2 个会话...-- 第 10 个会话1 + 10 = 11 次查询。100 个会话就是 101 次。这就是 N+1：1 次主查询 + N 次关联查询。慢的根源是网络往返——每次 SQL 都要走一遍网络（即使 SQLite 是本地文件，也有 IO 开销）。]]></description><category></category></item><item><title><![CDATA[前端转 AI 100 天 Day 24：API 测试——用 httpx + pytest 测 FastAPI]]></title><link>https://blog.youkuaiyun.com/daomeng0609/article/details/167881409</link><guid>https://blog.youkuaiyun.com/daomeng0609/article/details/167881409</guid><author>daomeng0609</author><pubDate>Fri, 16 Oct 2026 16:32:46 +0800</pubDate><description><![CDATA[FastAPI 测试三件套TestClient+ 临时数据库，一切可测API 测试测"契约"：状态码、响应结构、边界，不测"具体内容"认证测试要用"真认证 client"：不覆盖认证依赖，才能真正测到写业务代码时你会觉得"测试好麻烦"，但写 API 时你会发现——没有测试更麻烦。前端说"接口变了" → 你得对一遍 Postman部署后发现 500 → 你只能翻日志一个个查重构存储层 → 完全不知道有没有破坏 APIAPI 测试的价值，就是"改了任何东西，一条命令告诉你有没有搞坏。]]></description><category></category></item><item><title><![CDATA[前端转 AI 100 天 Day 23：FastAPI + 数据库深度整合——事务、迁移、连接池]]></title><link>https://blog.youkuaiyun.com/daomeng0609/article/details/167881236</link><guid>https://blog.youkuaiyun.com/daomeng0609/article/details/167881236</guid><author>daomeng0609</author><pubDate>Thu, 15 Oct 2026 16:10:19 +0800</pubDate><description><![CDATA[请求级 Session 是 FastAPI 数据库的标准姿势yield，事务边界清晰Alembic 是数据库的 Gitrevision生成、upgrade应用、downgrade回滚，改字段不用删库连接池 + WAL + 环境变量：一套配置支持 SQLite 开发和 PostgreSQL 生产"能跑"和"用对"之间隔着一条鸿沟。前者只看结果后者要考虑并发、资源、边界、回滚、可维护性Day 21 的 API 能跑，Day 23 的 API 能撑。这个差别就是"业余"和"专业"的分水岭。]]></description><category></category></item><item><title><![CDATA[前端转 AI 100 天 Day 22：FastAPI 进阶——依赖注入、中间件、认证]]></title><link>https://blog.youkuaiyun.com/daomeng0609/article/details/167880998</link><guid>https://blog.youkuaiyun.com/daomeng0609/article/details/167880998</guid><author>daomeng0609</author><pubDate>Wed, 14 Oct 2026 17:33:12 +0800</pubDate><description><![CDATA[依赖注入是 FastAPI 的核心Depends让公共逻辑（数据库、认证、分页）可以复用、可测试、可组合中间件是洋葱模型：请求前 + 请求后，做日志、计时、限流最合适异常处理器让错误格式统一：业务异常体系 + 全局处理器 = 前端处理只写一次FastAPI 的设计是"分层递进"的：第一层：接口函数本身（业务逻辑）第二层Depends依赖（公共逻辑复用）第三层：中间件（请求级横切）第四层：异常处理器（错误出口统一）每一层都能独立测试、独立替换。这就是"工程化"的样子——]]></description><category></category></item></channel></rss>