Skip to main content

大型项目的使用方法

itBuilder可用于任何规模的项目,但大型项目需要在上下文管理方面格外注意。以下是处理大型代码库的一些建议:


理解上下文限制

itBuilder使用的大型语言模型(LLM)有一个有限的“上下文窗口”。这是模型一次能处理的最大文本量(以token计)。如果上下文过大,模型可能无法理解你的请求或生成准确的响应。

上下文窗口包括:

  • 系统提示(itBuilder的指令)。
  • 对话历史。
  • 你用@提及的任何文件内容。
  • itBuilder使用的任何命令或工具的输出。

上下文管理策略

  1. 具体明确: 参考文件或代码时,使用具体的文件路径和函数名。避免像“主文件”这样的模糊引用。

  2. 有效使用上下文提及:@/path/to/file.ts包含特定文件。用@problems包含当前错误和警告。用@加commit哈希引用特定Git提交。

  3. 任务拆分: 将大型任务拆分为更小、更易管理的子任务,有助于保持上下文聚焦。

  4. 总结归纳: 如果需要引用大量代码,建议在提示中总结相关部分,而不是包含全部代码。

  5. 优先保留最近历史: itBuilder会自动截断较早的对话消息,以保持在上下文窗口内。注意这一点,如有需要可重新包含重要上下文。

  6. 使用提示缓存(如可用): 一些API提供商如Anthropic、OpenAI、OpenRouter和Requesty支持“提示缓存”。这会缓存你的提示以供后续任务使用,有助于降低请求成本和延迟。


示例:重构大型文件

假设你需要重构一个大型TypeScript文件(src/components/MyComponent.tsx)。可以这样做:

  1. 初步概览:

    @/src/components/MyComponent.tsx 列出此文件中的函数和类。
  2. 针对特定函数:

    @/src/components/MyComponent.tsx 将`processData`函数重构为使用`async/await`而非Promise。
  3. 迭代式更改: 进行小步、渐进式更改,每一步都进行审查和确认。

通过拆分任务并提供具体上下文,即使在上下文窗口有限的情况下,也能高效处理大型文件。