<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"><channel><title>codes.im · 博客</title><description>关于开发者工具、大模型工程实践和公开构建（build in public）的文章与实战教程。</description><link>https://codes.im/</link><language>zh-cn</language><item><title>大模型 API 成本怎么算：一个公式、一个例子和五个省钱手段</title><link>https://codes.im/zh/blog/llm-api-cost-guide/</link><guid isPermaLink="true">https://codes.im/zh/blog/llm-api-cost-guide/</guid><description>输入、输出、缓存分别怎么计费？用一个客服机器人的例子算清每月账单，再看提示缓存、换小模型、限制输出等手段各能省多少。</description><pubDate>Thu, 22 Oct 2026 00:00:00 GMT</pubDate><category>llm</category><category>cost</category><category>prompt-caching</category><category>api</category></item><item><title>让大模型稳定输出 JSON：从 Prompt 到结构化输出的 5 个层次</title><link>https://codes.im/zh/blog/reliable-json-from-llms/</link><guid isPermaLink="true">https://codes.im/zh/blog/reliable-json-from-llms/</guid><description>模型返回的 JSON 总是多一个逗号、少一个括号？按可靠性从低到高，讲清楚 prompt 约束、JSON 模式、结构化输出、Schema 校验与自动修复该怎么组合。</description><pubDate>Thu, 22 Oct 2026 00:00:00 GMT</pubDate><category>llm</category><category>json</category><category>structured-output</category></item><item><title>为什么 codes.im 的所有工具都在浏览器本地运行</title><link>https://codes.im/zh/blog/why-client-side-tools/</link><guid isPermaLink="true">https://codes.im/zh/blog/why-client-side-tools/</guid><description>开发者每天会把 token、日志、客户数据粘贴进在线工具。聊聊“数据不出浏览器”这个设计决定背后的原因、技术实现，以及它的取舍。</description><pubDate>Tue, 20 Oct 2026 00:00:00 GMT</pubDate><category>build-in-public</category><category>privacy</category><category>astro</category></item><item><title>MCP 入门：10 分钟给 Claude、Cursor 接上第一个 MCP 服务器</title><link>https://codes.im/zh/blog/mcp-quickstart/</link><guid isPermaLink="true">https://codes.im/zh/blog/mcp-quickstart/</guid><description>MCP 是什么、和 Function Calling 有什么区别、本地和远程服务器怎么配置，以及最常见的 5 个报错怎么排查。</description><pubDate>Sun, 18 Oct 2026 00:00:00 GMT</pubDate><category>mcp</category><category>claude</category><category>cursor</category><category>agent</category></item><item><title>大模型的 Token 到底是什么？为什么中文更“贵”，以及怎么估算用量</title><link>https://codes.im/zh/blog/llm-tokens-explained/</link><guid isPermaLink="true">https://codes.im/zh/blog/llm-tokens-explained/</guid><description>从分词器原理讲起：token 和字数的关系、中英文差异、上下文窗口怎么算，以及控制 token 用量的几个实用方法。</description><pubDate>Mon, 12 Oct 2026 00:00:00 GMT</pubDate><category>llm</category><category>token</category><category>tokenizer</category></item><item><title>把 curl 命令改写成 fetch 时，最容易踩的 6 个坑</title><link>https://codes.im/zh/blog/curl-to-fetch-pitfalls/</link><guid isPermaLink="true">https://codes.im/zh/blog/curl-to-fetch-pitfalls/</guid><description>接口文档里的 curl 一跑就通，改成 JavaScript fetch 却报错？逐个讲清楚请求方法、Content-Type、查询参数、认证、重定向和 CORS 的差异。</description><pubDate>Mon, 05 Oct 2026 00:00:00 GMT</pubDate><category>curl</category><category>fetch</category><category>http</category><category>javascript</category></item><item><title>RAG 文本分块实战：chunk size、overlap 和切分方式怎么选</title><link>https://codes.im/zh/blog/rag-chunking-guide/</link><guid isPermaLink="true">https://codes.im/zh/blog/rag-chunking-guide/</guid><description>分块是 RAG 效果的第一道关口。用具体例子讲清楚块大小、重叠、按结构切分和元数据，以及怎么用数据验证你的选择。</description><pubDate>Mon, 28 Sep 2026 00:00:00 GMT</pubDate><category>rag</category><category>embedding</category><category>llm</category></item><item><title>数据库主键用 UUID v4 还是 v7？一次讲清楚</title><link>https://codes.im/zh/blog/uuid-v4-vs-v7/</link><guid isPermaLink="true">https://codes.im/zh/blog/uuid-v4-vs-v7/</guid><description>自增 ID、UUID v4、UUID v7 各有什么优缺点？为什么随机 UUID 会拖慢写入，v7 又解决了什么问题，以及存储时要注意的细节。</description><pubDate>Sun, 20 Sep 2026 00:00:00 GMT</pubDate><category>database</category><category>uuid</category><category>postgresql</category><category>mysql</category></item><item><title>Cron 表达式速查：常用写法、时区陷阱和平台差异</title><link>https://codes.im/zh/blog/cron-cheatsheet/</link><guid isPermaLink="true">https://codes.im/zh/blog/cron-cheatsheet/</guid><description>5 个字段分别是什么意思、常用写法速查表、“日”和“周”同时设置的特殊规则，以及 Linux、Kubernetes、GitHub Actions、Spring 之间的差异。</description><pubDate>Sat, 12 Sep 2026 00:00:00 GMT</pubDate><category>cron</category><category>devops</category><category>linux</category></item></channel></rss>