大型语言模型提供商
要在 Zed 中使用 AI,您需要至少设置一个大型语言模型提供商。
您可以通过订阅 Zed 的某个计划,或者使用您已有的受支持提供商的 API 密钥来实现。
使用您自己的密钥
如果您已经拥有 Anthropic 或 OpenAI 等现有 LLM 提供商的 API 密钥,您可以将它们添加到 Zed,并免费使用 Agent Panel 的全部功能。
要将现有 API 密钥添加到给定提供商,请转到 Agent Panel 设置 (agent: open settings),找到所需的提供商,将密钥粘贴到输入框中,然后按 Enter。
注意:API 密钥不会以纯文本形式存储在您的
settings.json中,而是存储在您的操作系统的安全凭据存储中。
支持的提供商
Zed 提供了广泛的“使用您自己的密钥”LLM 提供商列表
- Amazon Bedrock
- Anthropic
- DeepSeek
- GitHub Copilot Chat
- Google AI
- LM Studio
- Mistral
- Ollama
- OpenAI
- OpenAI API 兼容
- OpenRouter
- Vercel
- xAI
Amazon Bedrock
支持使用支持流式工具使用的模型进行工具使用。更多详细信息请参阅 Amazon Bedrock 的工具使用文档。
要使用 Amazon Bedrock 的模型,需要进行 AWS 身份验证。请确保您的凭据具有以下权限设置
bedrock:InvokeModelWithResponseStreambedrock:InvokeModel
您的 IAM 策略应类似于
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"bedrock:InvokeModel",
"bedrock:InvokeModelWithResponseStream"
],
"Resource": "*"
}
]
}
完成上述操作后,选择以下两种身份验证方法之一
通过命名配置文件进行身份验证(推荐)
- 确保您已安装 AWS CLI 并配置了命名配置文件
- 打开您的
settings.json(zed: open settings file) 并在language_models下包含bedrock密钥,并使用以下设置{ "language_models": { "bedrock": { "authentication_method": "named_profile", "region": "your-aws-region", "profile": "your-profile-name" } } }
通过静态凭据进行身份验证
虽然可以通过 Agent Panel 设置 UI 直接输入您的 AWS 访问密钥和秘密来配置,但我们建议使用命名配置文件以获得更好的安全实践。为此
- 在 IAM 控制台中创建一个您可以扮演的 IAM 用户。
- 为该用户创建安全凭据,保存并妥善保管。
- 使用 (
agent: open settings) 打开 Agent Configuration 并转到 Amazon Bedrock 部分 - 将步骤 2 中的凭据复制到相应的访问密钥 ID、秘密访问密钥和区域字段中。
跨区域推理
Zed 对 Amazon Bedrock 的实现使用 跨区域推理,适用于所有支持它的模型和区域组合。通过跨区域推理,您可以将流量分布到多个 AWS 区域,从而实现更高的吞吐量。
例如,如果您使用 us-east-1 中的 Claude Sonnet 3.7 Thinking,它可能会在美国区域进行处理,即:us-east-1、us-east-2 或 us-west-2。跨区域推理请求保留在数据最初所在的地理区域内的 AWS 区域中。例如,在美国境内发出的请求会保留在美国境内的 AWS 区域中。
尽管数据仍仅存储在源区域中,但在跨区域推理期间,您的输入提示和输出结果可能会移出您的源区域。所有数据将通过 Amazon 的安全网络进行加密传输。
我们将尽最大努力支持每个模型的跨区域推理,请参阅 跨区域推理方法代码。
有关最新支持的区域和模型,请参阅 跨区域推理支持的模型和区域。
Anthropic
您可以通过在 Agent Panel 的模型下拉菜单中选择 Anthropic 模型来使用它们。
- 注册 Anthropic 并创建 API 密钥
- 确保您的 Anthropic 帐户有信用额度
- 打开设置视图 (
agent: open settings) 并转到 Anthropic 部分 - 输入您的 Anthropic API 密钥
即使您已支付 Claude Pro 费用,您仍然需要支付额外信用额度才能通过 API 使用它。
如果定义了 ANTHROPIC_API_KEY 环境变量,Zed 也会使用它。
自定义模型
您可以通过将以下内容添加到您的 Zed settings.json 来为 Anthropic 提供商添加自定义模型
{
"language_models": {
"anthropic": {
"available_models": [
{
"name": "claude-3-5-sonnet-20240620",
"display_name": "Sonnet 2024-June",
"max_tokens": 128000,
"max_output_tokens": 2560,
"cache_configuration": {
"max_cache_anchors": 10,
"min_total_token": 10000,
"should_speculate": false
},
"tool_override": "some-model-that-supports-toolcalling"
}
]
}
}
}
自定义模型将列在 Agent Panel 的模型下拉菜单中。
您可以通过将模型配置中的模式更改为 thinking 来配置模型使用扩展思维(如果支持),例如
{
"name": "claude-sonnet-4-latest",
"display_name": "claude-sonnet-4-thinking",
"max_tokens": 200000,
"mode": {
"type": "thinking",
"budget_tokens": 4096
}
}
DeepSeek
- 访问 DeepSeek 平台并创建 API 密钥
- 打开设置视图 (
agent: open settings) 并转到 DeepSeek 部分 - 输入您的 DeepSeek API 密钥
DeepSeek API 密钥将保存在您的钥匙串中。
如果定义了 DEEPSEEK_API_KEY 环境变量,Zed 也会使用它。
自定义模型
Zed 代理预配置为使用常见模型(DeepSeek Chat、DeepSeek Reasoner)的最新版本。如果您希望使用其他模型或自定义 API 端点,可以通过将以下内容添加到您的 Zed settings.json 来实现
{
"language_models": {
"deepseek": {
"api_url": "https://api.deepseek.com",
"available_models": [
{
"name": "deepseek-chat",
"display_name": "DeepSeek Chat",
"max_tokens": 64000
},
{
"name": "deepseek-reasoner",
"display_name": "DeepSeek Reasoner",
"max_tokens": 64000,
"max_output_tokens": 4096
}
]
}
}
}
自定义模型将列在 Agent Panel 的模型下拉菜单中。您还可以根据需要修改 api_url 以使用自定义端点。
GitHub Copilot Chat
您可以通过在 Agent Panel 的模型下拉菜单中选择 GitHub Copilot Chat 来将其与 Zed 代理一起使用。
- 打开设置视图 (
agent: open settings) 并转到 GitHub Copilot Chat 部分 - 单击
Sign in to use GitHub Copilot,按照模态框中显示的步骤操作。
或者,您可以通过 GH_COPILOT_TOKEN 环境变量提供 OAuth 令牌。
注意:如果您在下拉菜单中没有看到特定的模型,您可能需要在您的 GitHub Copilot 设置中启用它们。
要将 Copilot Enterprise 与 Zed 一起使用(用于代理和补全),您必须按照配置 GitHub Copilot Enterprise 中的说明配置您的企业端点。
Google AI
您可以通过在 Agent Panel 的模型下拉菜单中选择 Gemini 模型来将其与 Zed 代理一起使用。
- 前往 Google AI Studio 网站并创建 API 密钥。
- 打开设置视图 (
agent: open settings) 并转到 Google AI 部分 - 输入您的 Google AI API 密钥并按 Enter。
Google AI API 密钥将保存在您的钥匙串中。
如果定义了 GEMINI_API_KEY 环境变量,Zed 也会使用它。有关更多信息,请参阅 Gemini 文档中的使用 Gemini API 密钥。
自定义模型
默认情况下,Zed 将使用模型的 stable 版本,但您可以使用模型的特定版本,包括实验模型。您可以通过向模型添加 mode 配置来配置模型使用思维模式(如果支持)。这对于控制推理令牌使用和响应速度非常有用。如果未指定,Gemini 将自动选择思维预算。
以下是一个您可以添加到您的 Zed settings.json 中的自定义 Google AI 模型示例
{
"language_models": {
"google": {
"available_models": [
{
"name": "gemini-2.5-flash-preview-05-20",
"display_name": "Gemini 2.5 Flash (Thinking)",
"max_tokens": 1000000,
"mode": {
"type": "thinking",
"budget_tokens": 24000
}
}
]
}
}
}
自定义模型将列在 Agent Panel 的模型下拉菜单中。
LM Studio
-
下载并安装 最新版本的 LM Studio
-
在应用程序中按
cmd/ctrl-shift-m并下载至少一个模型(例如,qwen2.5-coder-7b)。或者,您可以通过 LM Studio CLI 获取模型lms get qwen2.5-coder-7b -
通过执行以下命令确保 LM Studio API 服务器正在运行
lms server start
提示:将 LM Studio 设置为登录项以自动运行 LM Studio 服务器。
Mistral
- 访问 Mistral 平台并创建 API 密钥
- 打开配置视图 (
agent: open settings) 并导航到 Mistral 部分 - 输入您的 Mistral API 密钥
Mistral API 密钥将保存在您的钥匙串中。
如果定义了 MISTRAL_API_KEY 环境变量,Zed 也会使用它。
自定义模型
Zed 代理预配置了几个 Mistral 模型(codestral-latest、mistral-large-latest、mistral-medium-latest、mistral-small-latest、open-mistral-nemo 和 open-codestral-mamba)。所有默认模型都支持工具使用。如果您希望使用其他模型或自定义其参数,可以通过将以下内容添加到您的 Zed settings.json 来实现
{
"language_models": {
"mistral": {
"api_url": "https://api.mistral.ai/v1",
"available_models": [
{
"name": "mistral-tiny-latest",
"display_name": "Mistral Tiny",
"max_tokens": 32000,
"max_output_tokens": 4096,
"max_completion_tokens": 1024,
"supports_tools": true,
"supports_images": false
}
]
}
}
}
自定义模型将列在 Agent Panel 的模型下拉菜单中。
Ollama
从 ollama.com/download(Linux 或 macOS)下载并安装 Ollama,并确保它正在运行 ollama --version。
-
下载一个可用模型,例如
mistralollama pull mistral -
确保 Ollama 服务器正在运行。您可以通过运行 Ollama.app (macOS) 或启动它来启动它
ollama serve -
在 Agent Panel 中,使用模型下拉菜单选择一个 Ollama 模型。
Ollama 上下文长度
Zed 已预配置最大上下文长度 (max_tokens) 以匹配常见模型的功能。Zed 对 Ollama 的 API 请求将此作为 num_ctx 参数包含在内,但默认值不超过 16384,因此拥有约 16GB RAM 的用户可以开箱即用大多数模型。
有关完整的默认设置,请参阅 ollama.rs 中的 get_max_tokens。
注意:Agent Panel 中显示的令牌计数只是估算值,与模型的原生分词器会有所不同。
根据您的硬件或用例,您可能希望通过 settings.json 限制或增加特定模型的上下文长度
{
"language_models": {
"ollama": {
"api_url": "https://:11434",
"available_models": [
{
"name": "qwen2.5-coder",
"display_name": "qwen 2.5 coder 32K",
"max_tokens": 32768,
"supports_tools": true,
"supports_thinking": true,
"supports_images": true
}
]
}
}
}
如果您指定的上下文长度对于您的硬件来说太大,Ollama 将记录错误。您可以通过运行以下命令来查看这些日志:tail -f ~/.ollama/logs/ollama.log (macOS) 或 journalctl -u ollama -f (Linux)。根据您机器上可用的内存,您可能需要将上下文长度调整为较小的值。
您还可以选择为每个可用模型指定 keep_alive 值。这可以是一个整数(秒)或一个字符串持续时间,例如“5m”、“10m”、“1h”、“1d”等。例如,"keep_alive": "120s" 将允许远程服务器在 120 秒后卸载模型(释放 GPU 显存)。
supports_tools 选项控制模型是否使用附加工具。如果模型在 Ollama 目录中标记为 tools,则应提供此选项,并且可以使用内置配置文件 Ask 和 Write。如果模型在 Ollama 目录中未标记为 tools,则仍可以提供此选项并将其值设置为 true;但是,请注意,只有 Minimal 内置配置文件才能工作。
supports_thinking 选项控制模型在生成最终答案之前是否执行显式的“思考”(推理)过程。如果模型在 Ollama 目录中标记为 thinking,则设置此选项即可在 Zed 中使用它。
supports_images 选项启用模型的视觉功能,允许它处理对话上下文中包含的图像。如果模型在 Ollama 目录中标记为 vision,则设置此选项即可在 Zed 中使用它。
Ollama 身份验证
除了在您自己的硬件上运行 Ollama(通常不需要身份验证)之外,Zed 还支持连接到远程 Ollama 实例。身份验证需要 API 密钥。
其中一项服务是 [Ollama Turbo])(https://ollama.ac.cn/turbo)。要配置 Zed 以使用 Ollama turbo
- 登录您的 Ollama 帐户并订阅 Ollama Turbo
- 访问 ollama.com/settings/keys 并创建 API 密钥
- 打开设置视图 (
agent: open settings) 并转到 Ollama 部分 - 粘贴您的 API 密钥并按 Enter。
- 对于 API URL,输入
https://ollama.ac.cn
如果定义了 OLLAMA_API_KEY 环境变量,Zed 也会使用它们。
OpenAI
- 访问 OpenAI 平台并创建 API 密钥
- 确保您的 OpenAI 帐户有信用额度
- 打开设置视图 (
agent: open settings) 并转到 OpenAI 部分 - 输入您的 OpenAI API 密钥
OpenAI API 密钥将保存在您的钥匙串中。
如果定义了 OPENAI_API_KEY 环境变量,Zed 也会使用它。
自定义模型
Zed 代理预配置为使用常见模型(GPT-5、GPT-5 mini、o4-mini、GPT-4.1 等)的最新版本。要使用其他模型,可能是预览版,或者如果您希望控制请求参数,可以通过将以下内容添加到您的 Zed settings.json 来实现
{
"language_models": {
"openai": {
"available_models": [
{
"name": "gpt-5",
"display_name": "gpt-5 high",
"reasoning_effort": "high",
"max_tokens": 272000,
"max_completion_tokens": 20000
},
{
"name": "gpt-4o-2024-08-06",
"display_name": "GPT 4o Summer 2024",
"max_tokens": 128000
}
]
}
}
}
您必须在 max_tokens 参数中提供模型的上下文窗口;这可以在 OpenAI 模型文档中找到。
OpenAI o1 模型也应设置 max_completion_tokens 以避免产生高额推理令牌成本。自定义模型将列在 Agent Panel 的模型下拉菜单中。
OpenAI API 兼容
Zed 通过为 OpenAI 提供商指定自定义 api_url 和 available_models 来支持使用与 OpenAI 兼容的 API。这对于连接到其他托管服务(如 Together AI、Anyscale 等)或本地模型非常有用。
您可以通过 UI 或编辑 settings.json 添加自定义的 OpenAI 兼容模型。
要通过 UI 完成此操作,请转到 Agent Panel 设置 (agent: open settings) 并查找“LLM Providers”部分标题右侧的“Add Provider”按钮。然后,填写模态框中可用的输入字段。
要通过您的 settings.json 完成此操作,请在 language_models 下添加以下代码片段
{
"language_models": {
"openai_compatible": {
// Using Together AI as an example
"Together AI": {
"api_url": "https://api.together.xyz/v1",
"available_models": [
{
"name": "mistralai/Mixtral-8x7B-Instruct-v0.1",
"display_name": "Together Mixtral 8x7B",
"max_tokens": 32768,
"capabilities": {
"tools": true,
"images": false,
"parallel_tool_calls": false,
"prompt_cache_key": false
}
}
]
}
}
}
}
默认情况下,OpenAI 兼容模型继承以下功能
tools: true (支持工具/函数调用)images: false (不支持图像输入)parallel_tool_calls: false (不支持parallel_tool_calls参数)prompt_cache_key: false (不支持prompt_cache_key参数)
请注意,LLM API 密钥不会存储在您的设置文件中。因此,请确保您已在环境变量中设置它 (<PROVIDER_NAME>_API_KEY=<your api key>),以便您的设置可以获取它。在上面的示例中,它将是 TOGETHER_AI_API_KEY=<your api key>。
OpenRouter
OpenRouter 通过单个 API 提供对多个 AI 模型的访问。它支持兼容模型的工具使用。
- 访问 OpenRouter 并创建一个帐户
- 从您的 OpenRouter 密钥页面生成 API 密钥
- 打开设置视图 (
agent: open settings) 并转到 OpenRouter 部分 - 输入您的 OpenRouter API 密钥
OpenRouter API 密钥将保存在您的钥匙串中。
如果定义了 OPENROUTER_API_KEY 环境变量,Zed 也会使用它。
自定义模型
您可以通过将以下内容添加到您的 Zed settings.json 来为 OpenRouter 提供商添加自定义模型
{
"language_models": {
"open_router": {
"api_url": "https://openrouter.ai/api/v1",
"available_models": [
{
"name": "google/gemini-2.0-flash-thinking-exp",
"display_name": "Gemini 2.0 Flash (Thinking)",
"max_tokens": 200000,
"max_output_tokens": 8192,
"supports_tools": true,
"supports_images": true,
"mode": {
"type": "thinking",
"budget_tokens": 8000
}
}
]
}
}
}
每个模型的可用配置选项是
name(必需):OpenRouter 使用的模型标识符display_name(可选):UI 中显示的人类可读名称max_tokens(必需):模型的上下文窗口大小max_output_tokens(可选):模型可以生成的最大令牌数max_completion_tokens(可选):最大补全令牌数supports_tools(可选):模型是否支持工具/函数调用supports_images(可选):模型是否支持图像输入mode(可选):思维模型的特殊模式配置
您可以在 OpenRouter 模型页面上找到可用模型及其规范。
自定义模型将列在 Agent Panel 的模型下拉菜单中。
提供商路由
您可以通过每个模型条目上的 provider 对象,选择性地控制 OpenRouter 如何在底层上游提供商之间路由给定的自定义模型请求。
支持的字段(全部可选)
order:按顺序首先尝试的提供商标识符数组(例如["anthropic", "openai"])allow_fallbacks(默认值:true):如果首选提供商不可用,是否可以使用备用提供商require_parameters(默认值:false):仅使用支持您提供的所有参数的提供商data_collection(默认值:allow):"allow"或"disallow"(控制可能存储数据的提供商的使用)only:此请求允许的提供商标识符白名单ignore:要跳过的提供商标识符quantizations:限制为特定的量化变体(例如["int4","int8"])sort:候选提供商的排序策略(例如"price"或"throughput")
示例:为模型添加路由偏好
{
"language_models": {
"open_router": {
"api_url": "https://openrouter.ai/api/v1",
"available_models": [
{
"name": "openrouter/auto",
"display_name": "Auto Router (Tools Preferred)",
"max_tokens": 2000000,
"supports_tools": true,
"provider": {
"order": ["anthropic", "openai"],
"allow_fallbacks": true,
"require_parameters": true,
"only": ["anthropic", "openai", "google"],
"ignore": ["cohere"],
"quantizations": ["int8"],
"sort": "price",
"data_collection": "allow"
}
}
]
}
}
}
这些路由控制使您无需更改在 UI 中选择的模型名称即可微调成本、功能和可靠性权衡。
Vercel v0
Vercel v0 是一个用于生成全栈应用程序的专家模型,具有针对 Next.js 和 Vercel 等现代堆栈优化的框架感知补全功能。它支持文本和图像输入,并提供快速流式响应。
v0 模型是与 OpenAI 兼容的模型,但 Vercel 在面板的设置视图中被列为一级提供商。
要开始在 Zed 中使用它,请确保您已首先创建 v0 API 密钥。拥有密钥后,将其直接粘贴到面板设置视图中的 Vercel 提供商部分。
然后您应该在 Agent Panel 的模型下拉菜单中找到它,显示为 v0-1.5-md。
xAI
Zed 对 xAI 模型提供一流支持。您可以使用自己的 API 密钥访问 Grok 模型。
- 在 xAI 控制台中创建 API 密钥
- 打开设置视图 (
agent: open settings) 并转到 xAI 部分 - 输入您的 xAI API 密钥
xAI API 密钥将保存在您的钥匙串中。如果定义了 XAI_API_KEY 环境变量,Zed 也会使用它。
注意: 虽然 xAI API 与 OpenAI 兼容,但 Zed 作为专用提供商对其提供一流支持。为了获得最佳体验,我们建议使用专用的
x_ai提供商配置,而不是OpenAI API 兼容方法。
自定义模型
Zed 代理预配置了常见的 Grok 模型。如果您希望使用其他模型或自定义其参数,可以通过将以下内容添加到您的 Zed settings.json 来实现
{
"language_models": {
"x_ai": {
"api_url": "https://api.x.ai/v1",
"available_models": [
{
"name": "grok-1.5",
"display_name": "Grok 1.5",
"max_tokens": 131072,
"max_output_tokens": 8192
},
{
"name": "grok-1.5v",
"display_name": "Grok 1.5V (Vision)",
"max_tokens": 131072,
"max_output_tokens": 8192,
"supports_images": true
}
]
}
}
}
自定义提供商端点
您可以为不同的提供商使用自定义 API 端点,只要它与提供商的 API 结构兼容。为此,请将以下内容添加到您的 settings.json 中
{
"language_models": {
"some-provider": {
"api_url": "https://:11434"
}
}
}
目前,some-provider 可以是以下任何值:anthropic、google、ollama、openai。
这与支持例如与 OpenAI 兼容的模型的相同基础设施。