Claude Code 最佳实践

我们最近发布了 Claude Code,这是一个用于 AI 智能体编码的命令行工具。作为研究项目开发的 Claude Code 为 Anthropic 的工程师和研究人员提供了一种更原生的方式将 Claude 整合到编码工作流程中。 Claude Code 有意设计得较为底层且不带强制观点,提供接近原始模型的访问权限,而不强制特定的工作流程。这种设计理念创造了一个灵活、可定制、可编写脚本且安全的强大工具。虽然功能强大,但这种灵活性对于刚接触 AI 智能体编码工具的工程师来说存在学习曲线——至少在他们形成自己的最佳实践之前是如此。 本文概述了已被证明有效的一般模式,这些模式不仅适用于 Anthropic 的内部团队,也适用于在各种代码库、语言和环境中使用 Claude Code 的外部工程师。这份清单中的内容并非一成不变,也不普遍适用;可以将这些建议视为起点。我们鼓励你进行实验,找到最适合你的方法! 1. 自定义您的设置 Claude Code 是一个 AI 智能体编码助手,它自动将上下文整合到提示中。这种上下文收集会消耗时间和 token,但您可以通过环境调整来优化它。 a. 创建 CLAUDE.md 文件 CLAUDE.md 是一个特殊文件,当开始对话时 Claude 会自动将其加入上下文。这使其成为记录以下内容的理想场所: 常用的 bash 命令 核心文件和实用函数 代码风格指南 测试说明 代码仓库规范(例如,分支命名,合并与变基等) 开发者环境设置(例如,使用 pyenv,哪些编译器可用) 项目特有的任何意外行为或警告 您希望 Claude 记住的其他信息 CLAUDE.md 文件没有必需的格式。我们建议保持简洁并确保人类可读。例如: # Bash 命令 npm run build: 构建项目 npm run typecheck: 运行类型检查器 # 代码风格 使用 ES 模块 (import/export) 语法,而非 CommonJS (require) 尽可能解构导入 (例如 import { foo } from 'bar') # 工作流程 确保在完成一系列代码更改后进行类型检查 为了性能,优先运行单个测试,而不是整个测试套件 您可以在几个位置放置 CLAUDE.md 文件: ...

April 19, 2025 · 小茄墩

Open R1 更新3 在代码领域使用R1的教训

在过去的几周里,我们主要致力于复现 DeepSeek-R1 配方中 competitive programming(代码推理)的部分。 从 R1 轨迹训练代码模型中获得的经验教训 在创建 OlympicCoder 模型时,我们进行了大量的 SFT 实验,以了解应用于 CodeForces 数据集的各种过滤器的作用。我们发现 open-r1/codeforces-cots 的以下子集给出了最佳的整体性能: solutions:R1 根据问题陈述生成的解决方案。 solutions_w_editorials:R1 根据问题陈述和解释(解释了正确的解决方案)生成的解决方案。 请注意,我们只关注了 C++ 解决方案,但如果混合使用 Python 解决方案,可能会进一步提高性能。我们使用 LiveCodeBench 作为我们模型的试验平台,然后通过更难的 IOI 基准测试运行性能最佳的检查点。我们测试了各种超参数配置来训练我们的模型,并确定了以下配置: 模型:Qwen2.5 Coder Instruct 7B 和 32B Epochs: 10 Effective batch size: 128 Learning rate: 4e-5 Scheduler: Cosine with a decay to 10% of the peak learning rate Context size: 32,768 tokens for 7B 和 22,528 tokens for 32B 下面我们分享一些从在 R1 推理轨迹上调整 Qwen2.5 Coder 模型中获得的经验教训。 ...

March 12, 2025 · 小茄墩