DeepSeek R1 + Claude Sonnet

我的想法是提供来自 DeepSeek 的思维链,帮助 Sonnet 表现更好。

DeepSeek R1 + Claude Sonnet

我是 Claude Sonnet 的忠实粉丝。我很惭愧地承认,它主要是基于氛围的。它更友好,并且以我喜欢的方式编写代码。模型上下文协议意味着我可以破解与本地环境的集成,它们非常有趣(最喜欢的时刻,允许 Sonnet 在我的 shell 上运行任意命令,并且它使用 wget 查找最新的足球比分 🙂)。

这让我很疑惑,我能否同时获得两者的最佳效果?但在开始之前……

1、什么是 DeepSeek R1?

DeepSeek R1 是一种具有推理能力的新模型。它很有趣,因为它的训练成本相对较低,早期的基准测试表明它与当前的 SOTA 模型具有竞争力。

它使用起来非常有趣,Simon Willison 有一篇很棒的文章可以让你开始使用它。

它的妙处在于它有一个思考阶段,其中包含它用来生成最终响应的思路链。例如,如果我问一个相对简单的问题,例如“如何在没有时钟的情况下估计时间?”我会在回答之前得到一些“思考(思路推理)”。这是“思考过程”的摘录:

Okay, so I need to figure out how to estimate time without a clock. Hmm, this sounds tricky because usually, we just check the time on our phones or clocks, but if that's not available,
how else can I tell what time it is? Let me think through different methods.

First off, I know that the sun rises and sets at roughly the same times each day, so maybe I can use the position of the sun to estimate how much time has passed. For example, if it's
noon when the sun is directly overhead, that would be 12:00 PM. But I'm not sure about the exact times for sunrise and sunset because they vary depending on the season and location.

Another thought is using shadows from objects like trees or buildings. If I can estimate the length of a shadow, maybe I can figure out how much the sun has moved since a known time.
Wait, but without knowing when that known time was, it might not help me directly unless I use some other reference points.

What about the positions of stars? Some stars are visible during certain times of the day. For example, Sirius is usually visible in the evening after sunset. If I can recognize a star
and know when it rises or sets, I could estimate how much time has passed since then. But this might require knowing when each star appears, which could be complicated.
翻译:

好的,所以我需要弄清楚如何在没有时钟的情况下估计时间。嗯,这听起来很棘手,因为通常我们只是在手机或时钟上查看时间,但如果没有这些,
我还能怎样知道现在几点了?让我想想不同的方法。

首先,我知道每天太阳升起和落下的时间大致相同,所以也许我可以利用太阳的位置来估计已经过去了多少时间。例如,如果太阳直射头顶时是中午,那就是下午 12:00。但我不确定日出和日落的确切时间,因为它们会因季节和地点而异。

另一个想法是使用树木或建筑物等物体的阴影。如果我能估计阴影的长度,也许我可以算出自已知时间以来太阳移动了多少。
等一下,但不知道那个已知时间是什么时候,除非我使用其他参考点,否则它可能无法直接帮助我。

星星的位置呢?有些星星在一天中的某些时间是可见的。例如,天狼星通常在日落后的晚上可见。如果我能识别一颗星星,并且知道它何时升起或落下,我就可以估计从那时起已经过去了多少时间。但这可能需要知道每颗星星出现的时间,这可能很复杂。

2、将两者结合起来

简单!编写一个 MCP 服务器,使 Claude 能够联系 DeepSeek。我正在运行该模型的本地版本(14B 个参数)。我的想法只是提取 <think> 位,并将其返回给 Claude。目标是提供来自 DeepSeek 的思维链,帮助 Sonnet 表现更好(例如,只需使用 DeepSeek 的思维作为 Claude 更好的提示策略)。

当你为 Claude 编写工具时,需要为其提供该工具功能的描述。我选择了这个:

Rodin is a cognition partner for both you and the user. For each user prompt, use Rodin to get additional context.
Carefully review this content and use the additional insight to give better results to the user.Is it any smarter?
翻译:

Rodin 是您和用户的认知伙伴。对于每个用户提示,使用 Rodin 获取更多上下文。

仔细查看此内容并使用额外见解为用户提供更好的结果。它更聪明吗?

所以现在我可以让 Claude 先咨询 Rodin,它会将该上下文传回 Claude。哪个可能让它更聪明?

3、它更聪明吗?

确定一个模型是否比另一个模型更聪明很难。理想情况下,我想找到一类 Claude 无法解决的问题,但 Claude + DeepSeek 可以。不幸的是,这不再像问 strawberry中有多少个 r 那么简单了?😟

如果我“正确地”做到这一点,我会尝试找到一个评估数据集 (eval)。我会有一系列谜题和一些基本事实以及一个可以让我判断答案是对还是错的预言机。这听起来很简单,但实际上很难(你可能已经看到了有关最新“前沿模型”结果的争议)。

所以,让我们试着找一些 Claude 做不到的逻辑谜题。

Susan and Lisa decided to play tennis against each other. They bet $1 on each game they played. Susan won three bets and Lisa won $5. How many games did they play?
翻译:

苏珊和丽莎决定互相打网球。他们在每场比赛中下注 1 美元。苏珊赢了三次赌注,丽莎赢了 5 美元。他们打了多少场比赛?

正确答案是 11(Lisa 肯定输了三场赌注,所以她肯定赢了三场)。o1-mini 和 chat.deepseek.com 都正确回答了这个问题。

仅凭 Claude,我始终(好吧,我试了 5 次)得到以下响应(请注意,我使用的是桌面客户端,我不知道默认情况下如何配置温度等模型变量,这完全不科学)。

Let me solve this step by step: Susan won 3 bets = $3 Lisa won $5 Each game = $1 bet Lisa’s wins = $5 ÷ $1 = 5 games Total games = Susan’s wins + Lisa’s wins = 3 + 5 = 8 games They played 8 games total.
翻译:

让我一步一步解决这个问题:Susan 赢了 3 次赌注 = 3 美元 Lisa 赢了 5 美元 每场比赛 = 1 美元赌注 Lisa 的胜利 = 5 美元 ÷ 1 美元 = 5 场比赛 总比赛数 = Susan 的胜利 + Lisa 的胜利 = 3 + 5 = 8 场比赛 他们总共玩了 8 场比赛。

如果我使用 deepseek-14b 模型,我有时会得到正确答案。观察思维过程很有趣,有时可以看到:

Now, it’s also given that Lisa ended up winning $5 overall. Hmm, that seems interesting because Lisa lost three games but still managed to make a profit of $5. So, how is that possible?
翻译:

现在,还假设 Lisa 总共赢了 5 美元。嗯,这似乎很有趣,因为 Lisa 输了三场比赛,但仍然设法赚了 5 美元。那么,这怎么可能呢?

还有 claude+deepseek-14b?嗯,有时也正确。也许不仅仅是 deepseek-14b 一个人?我确实得到过这样的例子,deepseek-14b 错了,但后来 claude 捡起来并以某种方式把它弄对了。

4、一个更难的谜题

让我们再试一个问题。你有五个连续的盒子,编号从 1 到 5,里面藏着一只猫。每天晚上,他都会跳到一个相邻的盒子里,每天早上,你都有一次机会打开一个盒子找到他。你如何赢得这场捉迷藏游戏?

这是一个令人惊讶的复杂谜题——这里有一个很棒的解决方案描述

o1 花了 2 分 37 秒思考这个问题。它认为最佳策略是“来回”扫描,你选择方框 1、2、3、4、5、4、3、2、1,并且保证在 9 天内选中猫。它自信地大喊“无论你有多聪明,在最坏的情况下,你也做不到比 9 天更好的事情。如果你试图将策略压缩到少于 9 天,猫可以采取特定的“躲避”路径来避开你”。o1-mini 建议使用相同的策略,但讽刺意味较少。

deepseek 几乎立即开始响应,并且(在写了一篇 1400 字的文章后)正确地给出了六天的解决方案,模式为(2、3、4、2、3、4)。deepseek-14b 本身还不够聪明,无法解决这个问题。

不幸的是,claude 或 claude+deepseek-14b 也不够聪明。

5、结束语

Claude 和一位有思想的伙伴听起来是个有趣的想法(事实也确实如此)。如果那个有思想的伙伴是一个相对较小的模型(14b),那么它肯定不会明显更好(但有时当随机数生成器对齐时会更好)

这样做的主要结果是继续探索。我仍然喜欢 Claude 的氛围,DeepSeek R1 非常令人印象深刻。它既快又聪明!


原文链接:DeepSeek R1 + Sonnet

汇智网翻译整理,转载请标明出处