1.训练和 harness
训练和 harness 都是解决模型不知道怎么做的问题,一般的流程是先发现模型做不好,用 harness 解决,系统设计,之后反复出现模型训练方就把这个功能训练进去,最终解决方案是靠训练。
Agent 需要的能力有:长上下文一致性、准确的工具调用、复杂任务解决(拆分任务,处理超长周期任务)、安全性保证、可靠性保证
2.关于 Claudecode 的 plan
就是在 prompt 前加了一句请先做规划,之前确实没有考虑过这个问题。
3.工具的能力,一种是帮助模型解决模型本身不会做的问题,另一种是辅助模型解决模型能做的问题,我想到了是代码验证,本身可以写单元测试,模型也能分析。
语言模型工具使用能力怎么评估?需要判断模型是不是选择了合适的工具,是否参数调用正确,模型执行的准确率,需要查看模型的成本和可靠性,在失败之后会不会重试,需要判断模型的安全性,是不是能在被要求做有危害的行为时拒绝。
4.上下文管理要面对的两个问题,一个是推理效率的问题,另一个是模型能力的问题
大语言模型是平方级的时间复杂度,是两两计算相关性,如果直接计算可能开销过于大,普遍是局部计算和全局计算。
稀疏计算方法包括 a.滑动窗口注意力:固定计算当前 token 可以关注到的 token b.线性注意力
:在注意力计算的步骤中去掉 softmax 这个计算降低计算效率,代价是降低了模型的表达能力
长上下文训练的问题是对于长数据,没有足够的训练数据,一种训练方式是拼接多个短的片段,不过问题是这样得到的模型不具备理解长上下文跨段的能力,那些段仍然是独立的。
5.自回归模型可以不需要位置编码,非自回归模型一定需要位置编码,包括旋转位置,绝对位置编码等。
自回归模型因为掩码注意力机制,一个 token 只能关注他前面的 token
6.上下文压缩
常见的压缩策略不能是随意压缩,要保留几个锚点,比如保留开始和结尾的信息,对于中间的信息压缩的同时也要保留几个锚点
老师很有趣的提了一个问题"有谁看到 compacting context 会感到兴奋吗",确实,每次看到这个就想到一定是模型 token 达到上限了。
总结,课程中老师会让学生们反馈学到的东西,比如有趣的点,相信肯定会让课程进步越来越好,而且老师说哪怕你觉得很无趣,教的都是自己已经知道的东西,是某节课讲过的,也要告知然后他们改进,这个挺好的。