#10373·dspy

[错误] 缓存将可变结果共享给调用者,并存储无法读回的值

作者: amitxy创建于 2026年9月11日更新于 2026年9月11日
标签bug

发生了什么情况?

在缓存未命中时,request_cache 会存储由装饰函数返回的对象,并将该对象返回给调用者。因此,缓存不拥有结果的独立快照。如果调用者修改了第一个结果,则将对未来的缓存命中返回的值进行修改。如果结果无法深度拷贝,则存在相关的失败模式。第一次调用成功,结果进入内存缓存,但当缓存尝试深度拷贝存储的值时,相同的第二次调用失败。这可能发生在完成的非流式结果中,因此与 #10345 中报告的原始流式行为无关。

内容来源: stanfordnlp/dspy