Share

外观
风格

ai-automation

2026年2月7日 · 技术

AI 能力接入规范(mom)

目标:以后写脚本和工具时,默认评估“这一步是否更适合交给模型”。

1. 何时用 AI,何时用纯逻辑

适合 AI:

  1. 文本提取(从杂乱内容里抓字段)
  2. 分类/打标签(规则难穷举)
  3. 改写/总结/翻译
  4. 异常日志归因(先给候选原因)
  5. 多源信息归纳(先合并,再产出结构化结果)

适合纯逻辑:

  1. 可严格定义的计算和校验
  2. 文件系统批处理
  3. 数据库事务与幂等写入
  4. 安全关键路径(鉴权、权限判断)
  5. 高一致性要求流程

原则:Deterministic core + AI assist

2. 统一入口(默认配置)

  • Base URL: <REDACTED_URL>
  • API Key: <REDACTED_TOKEN>
  • Fast model: <REDACTED_MODEL_NAME>
  • Balanced/Strong model: <REDACTED_MODEL_NAME>

环境变量优先级(高 -> 低):

  1. AI_*
  2. OPENAI_*
  3. 代码内默认值

3. 模型选型建议

  1. fast:提取、分类、摘要、翻译、改写
  2. balanced:常规问答、常规生成
  3. strong:复杂规划、复杂代码、复杂推理

4. 代码复用(Bun)

使用通用 client:

import { chat, chatJson } from "<REDACTED_PATH>";

示例(提取结构化信息):

const { data } = await chatJson<{ title: string; tags: string[] }>(
  [
    { role: "system", content: "提取标题和标签,返回 JSON" },
    { role: "user", content: input },
  ],
  { task: "extract", effort: "fast" }
);

5. CLI 快速用法

# 快速总结
bun <REDACTED_PATH> --task summarize --prompt "..."

# 从 stdin 提取
cat input.txt | bun <REDACTED_PATH> --task extract --stdin

# 复杂任务用强模型
bun <REDACTED_PATH> --task coding --effort strong --prompt "..."

6. 工程要求

  1. AI 输出要有兜底(解析失败时降级)
  2. AI 输出写入前做结构校验
  3. 记录模型名和关键参数,便于复盘
  4. 涉及外部动作时,先做人类确认