AI 模型设置

Cursor 的核心功能依赖于强大的 AI 模型来提供代码补全、生成、解释和重构功能。在设置中,您可以配置使用哪些 AI 模型以及如何使用它们。本页面详细介绍 Cursor 中的模型设置选项,帮助您根据自己的需求和偏好选择最合适的配置。

访问模型设置

要访问 Cursor 的 AI 模型设置:

  1. 打开 Cursor 设置(使用 Cmd+,Ctrl+,
  2. 在左侧边栏中选择 "AI" 分类
  3. 在显示的选项中查找模型相关设置
Cursor AI 模型设置界面

Cursor AI 模型设置界面

模型选择

Cursor 提供了多种 AI 模型选项,每种模型都有其优势和适用场景。

ai.model(主模型选择)

此设置控制 Cursor 默认使用的 AI 模型。可用选项包括:

  • GPT-4o - OpenAI 的最新旗舰模型,提供最高质量的补全和对话能力。此模型在代码理解、生成和解释方面表现出色,但可能会稍慢一些。
  • GPT-4 Turbo - OpenAI GPT-4 的优化版本,在性能和速度之间取得良好平衡。适合大多数编码任务。
  • GPT-3.5 Turbo - 更快速但能力稍弱的模型,适合简单任务和快速迭代。对于免费用户,这是默认选项。
  • 本地模型 - 通过 Ollama 使用本地托管的模型,如 CodeLlama、Llama 3 等。适合需要离线工作或处理敏感数据的情况。

在 JSON 中设置示例:

"ai.model": "gpt-4o"

Pro 订阅与模型可用性

请注意,某些高级模型(如 GPT-4o 和 GPT-4 Turbo)仅对 Cursor Pro 订阅用户可用。免费用户可以使用 GPT-3.5 Turbo 或本地模型。

上下文设置

这些设置控制 AI 模型如何使用和处理代码库上下文。

ai.contextEngine(上下文引擎)

控制 Cursor 如何为 AI 模型收集和提供代码上下文信息。选项包括:

  • semantic(语义) - 使用语义理解来收集相关代码,提供更智能的上下文。推荐用于大多数项目。
  • neighboring(相邻) - 仅包含当前文件和相邻文件作为上下文。适用于较小的项目或性能有限的环境。
  • none(无) - 不提供额外上下文,仅使用当前编辑的内容。适用于非常简单的任务或需要极低延迟的情况。

在 JSON 中设置示例:

"ai.contextEngine": "semantic"

ai.contextDepth(上下文深度)

设置 AI 模型在生成代码或回答问题时考虑的上下文深度。数值越大,模型看到的代码库信息越多,但也可能会增加处理时间和消耗更多令牌。

  • - 仅包含最直接相关的代码。适合简单任务和快速响应。
  • - 平衡的上下文范围,适合大多数日常任务。
  • - 提供深入的代码库上下文,适合复杂项目和深度架构理解。

在 JSON 中设置示例:

"ai.contextDepth": "medium"

ai.includeCodebaseContext(包含代码库上下文)

控制是否自动包含整个代码库的索引信息作为上下文。启用此选项可以帮助 AI 更好地理解项目结构,但可能会增加延迟。

在 JSON 中设置示例:

"ai.includeCodebaseContext": true

API 密钥设置

Cursor 允许您使用自己的 API 密钥来访问 AI 服务,这提供了更多灵活性和控制。

ai.openaiApiKey(OpenAI API 密钥)

设置您自己的 OpenAI API 密钥,用于访问 GPT-4o、GPT-4 Turbo 和 GPT-3.5 Turbo 等模型。

在 JSON 中设置示例:

"ai.openaiApiKey": "sk-your-openai-api-key"

查看详细的 API 密钥设置指南 →

ai.anthropicApiKey(Anthropic API 密钥)

设置您自己的 Anthropic API 密钥,用于访问 Claude 系列模型。

在 JSON 中设置示例:

"ai.anthropicApiKey": "sk-ant-your-anthropic-api-key"

ai.useOllamaForLocalModels(使用 Ollama 处理本地模型)

启用此选项以使用 Ollama 运行本地模型。Ollama 是一个本地模型管理工具,允许您在自己的计算机上运行 AI 模型。

在 JSON 中设置示例:

"ai.useOllamaForLocalModels": true

ai.ollamaModel(Ollama 模型名称)

指定要使用的 Ollama 本地模型名称。常见选项包括 "codellama"、"llama3"、"mistral" 等。

在 JSON 中设置示例:

"ai.ollamaModel": "codellama"

使用自定义 API 密钥的注意事项

当使用自己的 API 密钥时,所有 API 调用费用将直接计入您的 OpenAI 或 Anthropic 账户。请确保设置适当的使用限制和预算,避免意外费用。

功能特定模型

Cursor 允许您为不同功能配置不同的模型,优化每项功能的性能和成本。

ai.tabModel(Tab 补全模型)

设置用于 Tab 补全功能的模型。这是最频繁使用的功能,通常建议使用较快的模型以保持流畅的编码体验。

在 JSON 中设置示例:

"ai.tabModel": "gpt-3.5-turbo"

ai.chatModel(聊天模型)

设置用于聊天面板的模型。由于聊天通常涉及更复杂的讨论和解释,您可能希望在这里使用更强大的模型。

在 JSON 中设置示例:

"ai.chatModel": "gpt-4o"

ai.composerModel(Composer 模型)

设置用于 Composer 功能的模型。Composer 用于生成和转换代码块,可能需要较强的理解能力。

在 JSON 中设置示例:

"ai.composerModel": "gpt-4-turbo"

ai.editModel(编辑模型)

设置用于通过命令面板或快捷键触发的编辑功能的模型。这些功能通常用于重构或改进现有代码。

在 JSON 中设置示例:

"ai.editModel": "gpt-4o"

高级模型设置

这些设置允许您调整模型的行为和性能特性。

ai.temperature(温度)

控制模型生成输出的随机性。较低的值(如 0.2)使模型更加确定性和一致,适合代码生成;较高的值(如 0.8)鼓励更多创造性,可能适合头脑风暴或探索性任务。

在 JSON 中设置示例:

"ai.temperature": 0.2

ai.maxTokens(最大令牌数)

设置模型响应的最大长度。较大的值允许更长的回答,但也可能增加延迟和成本。

在 JSON 中设置示例:

"ai.maxTokens": 4096

ai.contextStrategy(上下文策略)

控制 Cursor 如何选择和优先处理上下文信息。选项包括:

  • balanced(平衡) - 平衡考虑当前文件和相关文件,适合大多数情况。
  • localFocus(本地专注) - 优先考虑当前文件,适合独立组件或模块。
  • deepContext(深度上下文) - 尽可能提供最大上下文深度,适合复杂项目结构。

在 JSON 中设置示例:

"ai.contextStrategy": "balanced"

模型推荐配置

根据不同需求和场景,这里提供一些推荐的模型配置:

性能优先配置

适合需要快速响应的场景

{
  "ai.model": "gpt-3.5-turbo",
  "ai.tabModel": "gpt-3.5-turbo",
  "ai.temperature": 0.1,
  "ai.contextEngine": "neighboring",
  "ai.contextDepth": "low"
}

质量优先配置

适合复杂代码生成和架构设计

{
  "ai.model": "gpt-4o",
  "ai.chatModel": "gpt-4o",
  "ai.editModel": "gpt-4o",
  "ai.temperature": 0.3,
  "ai.contextEngine": "semantic",
  "ai.contextDepth": "high"
}

平衡配置

适合大多数日常开发任务

{
  "ai.model": "gpt-4-turbo",
  "ai.tabModel": "gpt-3.5-turbo",
  "ai.chatModel": "gpt-4-turbo",
  "ai.temperature": 0.2,
  "ai.contextEngine": "semantic",
  "ai.contextDepth": "medium"
}

离线/隐私优先配置

适合处理敏感项目或离线工作

{
  "ai.model": "ollama",
  "ai.useOllamaForLocalModels": true,
  "ai.ollamaModel": "codellama",
  "ai.temperature": 0.2,
  "ai.contextEngine": "neighboring"
}

项目特定设置

为特定项目设置不同的模型配置可以更好地满足不同项目的需求。例如,开源项目可能需要更强大的上下文理解,而小型个人项目可能更注重速度。

创建项目特定的模型设置

  1. 在项目根目录中创建 .cursor 目录
  2. 在该目录中创建 settings.json 文件
  3. 添加特定的模型设置

项目特定设置示例:

{
  "ai.model": "gpt-4-turbo",
  "ai.contextEngine": "semantic",
  "ai.contextDepth": "high",
  "ai.includeCodebaseContext": true
}

提示

对于团队项目,将 .cursor/settings.json 添加到版本控制中可以确保所有团队成员使用相同的 AI 模型配置,保持一致的开发体验。

模型设置故障排除

模型响应太慢

如果您发现 AI 模型响应时间较长,可以尝试以下设置调整:

  • 切换到更快的模型(如从 GPT-4o 切换到 GPT-3.5 Turbo)
  • 降低上下文深度(ai.contextDepth
  • 将上下文引擎(ai.contextEngine)设置为 "neighboring" 或 "none"
  • 减少最大令牌数(ai.maxTokens

模型不理解我的代码库

如果 AI 模型似乎对您的代码库理解不足,可以尝试:

  • 切换到更强大的模型(如 GPT-4o)
  • 将上下文引擎(ai.contextEngine)设置为 "semantic"
  • 增加上下文深度(ai.contextDepth
  • 启用代码库上下文(ai.includeCodebaseContext
  • 确保您的代码库已被正确索引

无法连接到本地模型

如果您使用 Ollama 但无法连接到本地模型,请检查:

  • 确保 Ollama 已安装并正在运行
  • 验证您指定的模型名称是否已下载(使用 ollama list 命令)
  • 检查 Ollama 服务器地址设置(默认为 http://localhost:11434)
  • 确保没有防火墙阻止连接

下一步

现在您已经了解了如何配置 Cursor 的 AI 模型设置,您可能还想探索以下相关主题: