2026年7月9日 周四晚上19:30,报名腾讯会议了解“如何构建自进化的动态知识库(Brain)”(限30人)
免费POC, 零成本试错
FDE知识库

FDE知识库

学习大模型的前沿技术与行业落地应用


收藏

我用 Claude 写周报,结果被老板骂了——后来我用 Karpathy 的 autoresearch 方法,把 skill 通过率从 50% 提到了 90%

发布日期:2026-03-23 07:47:00 浏览次数: 2494
作者:鲲鹏Talk

微信搜一搜,关注“鲲鹏Talk”

推荐语

从被AI坑到用科学方法驯服AI,一个项目经理的真实成长故事。

核心内容:
1. 盲目依赖AI写周报导致的关键失误
2. 系统记录发现的三大AI失效模式
3. 采用Karpathy方法实现90%准确率的实践路径

杨芳贤
53AI创始人/腾讯云(TVP)最具价值专家

我用 Claude 写周报,结果被老板骂了——后来我用 Karpathy 的 autoresearch 方法,把 skill 通过率从 50% 提到了 90%

编者按:这是一篇写给所有用 AI 工具但总觉得"差点意思"的朋友。不是技术教程,是一个踩过坑的人的真实经历。


一、那个周五下午,我差点被周报搞崩溃

我是John Wong,在一家互联网公司做项目管理,手底下管着五六个项目,每周五下午 4 点要交周报。

三个月前,我在 Claude 上搭了一个"周报生成器" skill。想法很简单:把本周的项目进展、风险、下周计划丢进去,让它帮我写成规范的周报格式。

第一次用的时候,效果惊艳。结构清晰、语言专业,我 5 分钟就搞定了周报,提前下班。

但问题是从第二周开始慢慢浮现的。

第二周,它把两个项目的进度搞混了。

第三周,它漏掉了一个关键风险点。

第四周,它生成的"下周计划"完全是模板套话,没有任何实质内容。

但我每次都没当回事——手动改改就发了。毕竟"大部分时候还行"。

直到那个周五。

那天我按惯例生成周报,检查了一遍,看起来没问题,就发出去了。结果周一早上,老板把我叫到办公室:

“你周报里写的’项目 A 已完成验收’,客户那边明明还在提需求变更,你知不知道?”

我懵了。回头看 skill 生成的内容,确实写了"已完成验收"。但实际情况是,项目 A 只是"初步评审通过",还有一轮客户确认没做。

skill 把"评审通过"理解成了"验收完成"。

我站在老板办公室门口,脑子嗡嗡的。不是因为被骂,是因为我突然意识到一个问题:

我根本不知道这个 skill 什么时候靠谱、什么时候在胡说。


二、我开始数,到底有多少次"我以为还行"

那件事之后,我开始有意识地记录 skill 的输出质量。

记录了两周,结果让我后背发凉:

  • • 50% 的情况下,skill 会漏掉至少一个重要细节
  • • 30% 的情况下,它会用模糊的表述掩盖不确定的信息
  • • 20% 的情况下,它会"脑补"一些我没提供的信息,看起来合理,但其实是错的

也就是说,我每发两次周报,就有一次是有问题的。

但我之前完全没意识到。为什么?

我后来想明白了,skill 失效有三种方式,而我都经历过:

第一种:温水煮青蛙式的"模糊漂移"

prompt 里没明确禁止的东西,模型会慢慢漂向"安全区"。输出越来越像模板,每次都"过得去",但每次都差一点。等你发现,根本不知道是从第几轮开始出问题的。

第二种:你看不见的"隐形崩溃"

你只记住那些"还不错"的输出——打开、用掉、关掉。那些悄悄失效的,格式跑了、关键要素漏了,你永远不知道它们有多频繁。因为你根本不会去翻历史记录。

第三种:自欺欺人的"手动修补"

偶尔发现问题,手动改一改那次输出,告诉自己"修了"。但你改的是那一次,不是 skill 本身。下次还是会在同一个地方出错。

我以前三种都干过。


三、转机:我看到了 Karpathy 的 autoresearch

就在我为这事头疼的时候,我看到了 Andrej Karpathy(OpenAI 联合创始人、特斯拉前 AI 负责人)发布的一套叫 autoresearch 的方法。

核心思路简单到有点离谱:


不让 AI 帮你写代码,而是让 AI 在循环里自动改进代码。

具体怎么做?

  1. 1. 让 Agent 对代码做一个小改动
  2. 2. 跑测试,看结果变好了还是变差了
  3. 3. 变好就留下,变差就撤销
  4. 4. 重复 100 次

Karpathy 最初是用在机器学习代码上的。但我看完就想:这方法能不能用来改进我的周报 skill?

答案是:能,而且效果惊人。


四、autoresearch 怎么用在 Claude skill 上?

我把 Karpathy 的思路移植到了 Claude skill 的优化上,跑了一个月,周报 skill 的通过率从 50% 涨到了 90%

全程零手动。agent 自己在那反复测试、收紧 prompt。

核心逻辑:把"好"定义成可检查的标准

想象你教一个实习生写周报。你不会说"写得好一点",而是会给出具体标准:

  • • 每个项目的状态是否明确?(进行中/已完成/有风险)
  • • 有没有遗漏我输入信息里的关键数据?
  • • 风险描述是否具体,而不是套话?
  • • 下周计划是否可执行,而不是"继续推进"这种废话?

autoresearch 需要你做的,就是把这类标准写成 3-6 个"是/否"问题。

每个问题检查输出的一个具体方面。通过或失败,就这么简单。

一个完整的优化循环长什么样?

┌─────────────────────────────────────────────────────────────┐
│  第 1 步:agent 对 skill prompt 做一个小改动                 │
│         (比如:加一条"必须核对输入数据"的规则)              │
├─────────────────────────────────────────────────────────────┤
│  第 2 步:用改动后的 skill 跑 10 个测试用例                   │
├─────────────────────────────────────────────────────────────┤
│  第 3 步:用 checklist 给每个输出打分                         │
│         (4 个检查项全过 = 100 分,3 个过 = 75 分...)        │
├─────────────────────────────────────────────────────────────┤
│  第 4 步:算平均分                                           │
│         - 比上一轮高 → 保留改动                               │
│         - 比上一轮低 → 撤销改动                               │
├─────────────────────────────────────────────────────────────┤
│  第 5 步:重复,直到连续 3 轮分数超过 90% 或你喊停            │
└─────────────────────────────────────────────────────────────┘

你唯一要做的,就是定义那 3-6 个 checklist 问题。

剩下的,agent 全自动。


五、我的周报 skill 具体发生了什么?

我跑完 autoresearch 后,agent 实际对我的 skill prompt 做了这些改动:

改动 1:针对最高频失败项,加了一条明确规则(保留)

问题:skill 经常把"评审通过"写成"验收完成",把"进行中"写成"已完成"。

加的规则

【强制】输出中的项目状态必须与输入信息中的状态描述完全一致。
禁止将"评审通过"改写为"验收完成"。
禁止将"进行中"改写为"已完成"。
如果不确定状态,必须标注"待确认",不得猜测。

改动 2:加了"输入数据核对清单"(保留)

加的规则

【强制】生成周报前,必须逐项核对输入信息:
1. 输入中提到的每个项目名称,输出中是否都有对应?
2. 输入中的数字(进度百分比、完成数量等),输出中是否准确引用?
3. 输入中的风险描述,输出中是否完整保留,没有遗漏?
核对完成后,在输出末尾添加"[已核对]"标记。

改动 3:加了一个高质量周报示例(保留)

agent 发现,skill 对"好的周报长什么样"理解模糊。于是它在 prompt 里加了一个我提供的优秀周报案例,作为参考标准。

改动 4:尝试了更严格的字数限制(撤销)

agent 试过限制每段不超过 50 字,结果导致信息过度压缩,关键内容被删减。测试分数下降,于是撤销了这个改动。


六、安装和使用指南

方案一:使用 Ole Lehmann 的现成 skill(推荐)

Ole Lehmann(@itsolelehmann)已经把这套方法做成了可以直接在 Claude Code 里运行的 skill。

安装步骤:

1. 克隆仓库

# 创建 skills 目录(如果还没有)
mkdir -p ~/.claude/skills

# 克隆 autoresearch skill
cd ~/.claude/skills
git clone https://github.com/olelehmann100kMRR/autoresearch-skill.git

2. 安装依赖

cd autoresearch-skill
npm install

3. 配置环境变量

# 设置你的 Anthropic API Key
export ANTHROPIC_API_KEY="your-api-key-here"

# 或者写入 ~/.bashrc 或 ~/.zshrc,持久化配置
echo'export ANTHROPIC_API_KEY="your-api-key-here"' >> ~/.zshrc
source ~/.zshrc

4. 验证安装

# 运行测试
npm test

5. 使用方法

# 对你的 skill 运行 autoresearch
claude skill autoresearch-skill --target ./path/to/your/skill

# 或者交互式运行
claude skill autoresearch-skill
# 然后按提示输入要优化的 skill 路径

方案二:使用 Karpathy 原版 autoresearch

如果你想用 Karpathy 原版的 autoresearch(更适合代码优化),步骤如下:

1. 克隆仓库

git clone https://github.com/karpathy/autoresearch.git
cd autoresearch

2. 安装依赖

pip install -r requirements.txt

依赖包括:

  • • anthropic(Claude API)
  • • openai(GPT API,可选)
  • • 其他 Python 标准库

3. 配置 API Key

# 设置环境变量
export ANTHROPIC_API_KEY="your-api-key-here"
export OPENAI_API_KEY="your-openai-key-here"# 可选

4. 准备你的任务

创建一个 task.py 文件,定义你要优化的内容。例如:

# task.py
# 定义你的 skill 和测试用例

SKILL_PROMPT = """
你是一位专业的项目管理周报撰写助手。
请根据用户提供的项目信息,生成规范的周报。

要求:
1. 每个项目的状态必须准确
2. 必须包含具体数字和进度
3. 风险描述要具体,不能是套话
4. 下周计划要可执行
"""


TEST_CASES = [
    {
"input""项目A:进度80%,本周完成接口联调,风险:第三方API响应慢",
"expected_checks": ["状态准确""有具体数字""风险具体"]
    },
# ... 更多测试用例
]

defevaluate_output(output, test_case):
"""评估输出质量,返回分数 0-100"""
    score = 0
    checks = [
"状态描述准确"in output,
"80%"in output,  # 检查是否保留具体数字
"API响应慢"in output,  # 检查风险是否具体
    ]
returnsum(checks) / len(checks) * 100

5. 运行 autoresearch

python autoresearch.py --task task.py --iterations 50

参数说明:

  • • --iterations:迭代次数,默认 100
  • • --model:使用的模型,默认 claude-3-5-sonnet-20241022
  • • --temperature:采样温度,默认 0.7

方案三:手动实现(理解原理用)

如果你想完全理解原理,可以自己实现一个简化版:

# simple_autoresearch.py
import anthropic
import random

client = anthropic.Anthropic()

defrun_skill(prompt, input_data):
"""运行你的 skill"""
    response = client.messages.create(
        model="claude-3-5-sonnet-20241022",
        max_tokens=2000,
        system=prompt,
        messages=[{"role""user""content": input_data}]
    )
return response.content[0].text

defevaluate(output, checklist):
"""用 checklist 评估输出"""
    score = 0
for item in checklist:
# 这里简化处理,实际可以用 Claude 判断
if item["check"](output):
            score += 1
return score / len(checklist) * 100

defmutate_prompt(prompt):
"""对 prompt 做一个小改动"""
    mutations = [
lambda p: p + "\n【重要】必须核对所有数字的准确性。",
lambda p: p + "\n【禁止】使用'推进''优化'等模糊词汇。",
# ... 更多变异策略
    ]
return random.choice(mutations)(prompt)

defautoresearch(initial_prompt, test_cases, checklist, iterations=50):
"""主循环"""
    best_prompt = initial_prompt
    best_score = 0

for i inrange(iterations):
# 变异
        new_prompt = mutate_prompt(best_prompt)

# 测试
        scores = []
for test in test_cases:
            output = run_skill(new_prompt, test["input"])
            score = evaluate(output, checklist)
            scores.append(score)

        avg_score = sum(scores) / len(scores)

# 选择
if avg_score > best_score:
            best_prompt = new_prompt
            best_score = avg_score
print(f"✓ 迭代 {i+1}: 分数提升 {best_score:.1f}%")
else:
print(f"✗ 迭代 {i+1}: 分数 {avg_score:.1f}%,撤销改动")

return best_prompt, best_score

# 使用示例
if __name__ == "__main__":
    initial_prompt = "你是一位周报撰写助手。"

    test_cases = [
        {"input""项目X进度50%""expected""包含50%"},
    ]

    checklist = [
        {"name""包含具体数字""check"lambda o: "%"in o},
        {"name""状态准确""check"lambda o: "进度"in o},
    ]

    best_prompt, score = autoresearch(initial_prompt, test_cases, checklist)
print(f"\n最终分数: {score}%")
print(f"优化后的 prompt:\n{best_prompt}")

七、从靠运气,变成靠系统

说实话,跑完那次 autoresearch,改变最大的不是分数。

是感觉。

以前每次用 skill,心里多少有点虚:希望这次没问题。

现在不一样了——我知道它在什么情况下能工作,在什么情况下会出错,出错了怎么找到问题。

从靠运气,变成靠系统。这才是最值钱的东西。


八、任何能打分的东西,都能用这套方法

autoresearch 不只适用于 Claude skill。

网站速度:有人跑了 67 轮,把加载时间从 1100ms 优化到了 67ms。

冷邮件开发信:让 agent 跑 50 个变体,找出打开率最高的版本。

Newsletter 开篇:让 agent 在 autopilot 上帮你打磨文字。

任何你反复使用的 prompt。

能打分,就能 autoresearch。


写在最后

如果你也在用 AI 工具,但总觉得"差点意思",我强烈建议你试试 autoresearch。

不需要你是技术专家,只需要你能回答一个问题:什么叫"好"?

把答案写成 3-6 个 checklist,剩下的交给 agent。

几周后,你可能会惊讶地发现:原来那个"还行"的 skill,可以变得这么可靠。

53AI,企业落地大模型首选服务商

产品:场景落地咨询+大模型应用平台+行业解决方案

承诺:免费POC验证,效果达标后再合作。零风险落地应用大模型,已交付160+中大型企业

联系我们

售前咨询
186 6662 7370
预约演示
185 8882 0121

微信扫码

添加专属顾问

回到顶部

加载中...

扫码咨询

扫码登录
登录即表示您同意《53AI网站服务协议》
服务协议

欢迎您使用【53AI 官方网站】(以下简称“本网站”或“我们”)。本《会员服务协议》(以下简称“本协议”)是您(以下简称“会员”或“用户”)与【深圳市博思协创网络科技有限公司】之间关于注册、登录及使用本网站会员服务所订立的法律协议。

在您注册或登录前,请务必审慎阅读、充分理解各条款内容,特别是免除或限制责任的条款、知识产权条款、争议解决条款等。此类条款将以加粗形式提示您注意。 当您通过微信公众号授权、手机验证码验证或其他方式成功登录本网站时,即视为您已完全理解并同意接受本协议的全部内容。

一、 定义

本网站:指由【深圳市博思协创网络科技有限公司】运营的,域名为【53ai.com】的网站及相关移动端页面。

会员服务:指本网站向注册会员提供的知识库文章查阅、内容检索及其他相关增值服务。

知识库内容:指本网站发布的包括但不限于文字、图表、数据、研究报告、行业分析等数字化内容资源。

二、 账号注册与登录

登录方式:本网站支持以下登录方式,您可根据实际情况选择:

微信公众号授权登录:您同意将您的微信OpenID信息授权给本网站,用于创建或关联会员账号。

手机验证码登录:您需提供真实有效的手机号码,并通过短信验证码完成身份验证与登录/注册。

账号安全:您的账号仅限您本人使用,禁止赠与、借用、租用、转让或售卖。因您保管不善导致的账号被盗、密码泄露等损失,由您自行承担。

实名认证:根据相关法律法规要求,我们可能要求您在特定功能下完成实名认证。如您拒绝提供,可能无法使用部分或全部服务。

未成年人保护:若您未满18周岁,请在法定监护人的陪同下阅读本协议,并在征得监护人同意后使用本服务。

三、 服务内容与规范

知识库查阅权限:会员登录后,有权按照其会员等级对应的权限范围,在线浏览、检索本网站知识库中的相关文章及内容。

服务变更:我们有权根据业务发展需要,调整、变更或终止部分服务内容,并将以网站公告、公众号消息等方式提前通知。

禁止行为:您在使用服务时不得实施以下行为:

利用技术手段批量爬取、下载、转存知识库内容;

将知识库内容用于商业目的或未经授权地向第三方传播;

干扰本网站正常运行或侵犯其他用户合法权益;

发布违法违规信息或从事违反公序良俗的活动。

四、 知识产权声明

权利归属:本网站知识库中的排版设计、软件代码等内容的知识产权均归【公司全称】或原权利人所有,受《中华人民共和国著作权法》等法律保护。

有限许可:本网站授予会员一项非独占、不可转让、不可转授权的普通许可,仅限于个人学习、研究之目的在线查阅知识库内容。

侵权追责:未经书面许可,任何单位或个人不得以任何形式复制、转载、摘编、镜像、汇编或以其他方式使用上述内容。一经发现,我们保留追究其法律责任的权利。

五、 个人信息保护

我们重视对您个人信息的保护。关于我们如何收集、使用、存储和保护您的个人信息,请单独阅读 《隐私政策》。

您通过微信公众号授权或手机号验证所提供的信息,我们将严格按照《个人信息保护法》的规定处理,仅用于身份识别、服务提供及安全验证等必要用途。

您可以随时通过网站设置或联系客服行使查阅、更正、删除个人信息及撤回授权同意的权利。

六、 免责声明

内容准确性:知识库内容仅供参考,不构成专业建议。我们不对其完整性、准确性、时效性作任何明示或暗示的保证,您应自行判断并承担使用风险。

不可抗力:因自然灾害、政策法规变化、网络故障、第三方平台接口异常(如微信接口维护、运营商短信通道故障)等不可抗力导致的服务中断或延迟,我们不承担违约责任。

第三方链接:本网站可能包含指向第三方网站的链接,该等网站的内容和服务不受我们控制,请您自行甄别风险。

七、 违约责任

如您违反本协议约定,我们有权视情节采取警告、限制功能、暂停服务、注销账号等措施,并保留要求赔偿损失的权利。

如因您的违约行为导致我们遭受行政处罚、第三方索赔或商誉损失,您应承担全部赔偿责任(包括但不限于罚款、赔偿金、律师费、公证费等)。

八、 法律适用与争议解决

本协议的订立、执行和解释均适用中华人民共和国大陆地区法律。

因本协议产生的或与本协议有关的任何争议,双方应友好协商解决;协商不成的,任何一方均可向【公司所在地】有管辖权的人民法院提起诉讼。

九、 其他

本协议构成双方就本服务达成的完整协议,取代此前任何口头或书面约定。

本协议任一条款被认定为无效或不可执行的,不影响其他条款的效力。

我们对本协议享有最终解释权,并在法律允许的范围内保留随时修改的权利。修改后的协议一经公布即生效,继续使用服务即视为同意修订内容。


已查阅