> ## Documentation Index
> Fetch the complete documentation index at: https://docs.guild.ai/llms.txt
> Use this file to discover all available pages before exploring further.

> ## Agent Instructions
> To act on a user's behalf in Guild, use the Guild REST API at https://api.guild.ai/v1.
> The OpenAPI spec is unauthenticated: https://docs.guild.ai/openapi.json (or openapi.yaml).
> Authenticate with an account API key, sent as HTTP Basic (key id as username, secret as password) or as `Authorization: Bearer <api_key_id>:<api_key_secret>`. See https://docs.guild.ai/api-reference/introduction#authentication.
> To run one agent on demand without account-wide access, use an API trigger instead: https://docs.guild.ai/platform/api-triggers.
> To search these docs from an MCP client, connect to https://docs.guild.ai/mcp. The full page index is https://docs.guild.ai/llms.txt.

# Run DeepSeek models in Guild agents under policy

> Call DeepSeek models from Guild agents through AWS Bedrock, OpenRouter, or Fireworks AI, with model policies on every workspace and agent.

Integrations · DeepSeek

Guild agents call DeepSeek models through `task.llm`, using a credential for AWS Bedrock, OpenRouter, or Fireworks AI. Guild holds the credential server-side, checks your model policies on every call, and attributes spend to the workspace, agent, and user that made it.

> **[Book a demo](https://guild-ai.cal.com/gtm/meeting-with-guild.ai)**
>
> See how teams govern agents that use DeepSeek.

> **[Start free](https://app.guild.ai)**
>
> Connect DeepSeek and scope your first agent.

## No DeepSeek key, just a provider you already use

DeepSeek models reach Guild only through third-party inference providers. Choose the one that fits where you want calls to run: Bedrock keeps them in your own AWS account, OpenRouter serves its `deepseek/` namespace, and Fireworks AI serves `deepseek-v4.1-flash`.

## How it works

**1. Add a credential**

In **Access & setup > Models & providers**, click **Add API key** and choose AWS Bedrock, OpenRouter, or Fireworks AI. Check **DeepSeek** under **Models**.

**2. Write a model policy**

Bind the credential's DeepSeek access to the account, a workspace, or an agent, and list the models it may call, such as `deepseek-*`.

**3. Call it from task.llm**

Name `"deepseek"` in `llmPreferences`, or leave preferences out and let your policies choose. Guild resolves the credential at runtime.

## Every DeepSeek call goes through your policies

Agents never hold the key. Guild stores the credential server-side and shows only a masked value, so you can rotate it without touching agent code or the [model policies](/platform/llm-settings#model-policies) bound to it. Policies are an allowlist: a workspace, agent, or installed agent can call a DeepSeek model only if a rule allows it. Set a [daily token limit](/platform/llm-settings#daily-token-limit) to cap spend, and see each call by workspace, agent, and user in [Usage](/insights/usage).

A raw API key in an agent's environment reaches every model the key can. A policy reaches only the models you name.

## About DeepSeek models on Guild

| | |
| - | - |
| Name under **Models** in the credential form | DeepSeek |
| `provider` in `llmPreferences` | `"deepseek"` |
| Default model | `deepseek-v3.2` |
| Managed access | No. Add your own credential (BYOK). |

## Inference providers

DeepSeek models are served only through third-party inference providers, not a DeepSeek API.

| Provider | Notes |
| - | - |
| [AWS Bedrock](/platform/providers/aws-bedrock) | Serves `deepseek-v3.2` and `deepseek-r1`, except in `us-west-1`. |
| [OpenRouter](/platform/providers/openrouter) | Served under OpenRouter's `deepseek/` namespace. |
| [Fireworks AI](/platform/providers/fireworks) | Serves `deepseek-v4.1-flash` only. |

Write the canonical model name, such as `deepseek-v3.2`, everywhere in Guild. Guild maps it to each provider's own model ID.

## Models

Guild prices and recognizes these DeepSeek model IDs. A policy or preference can also name any other model your credential can reach. Third-party providers route more models than this list, and their catalogs change; see each provider's page for what it serves.

| Model | Notes |
| - | - |
| `deepseek-v3.2` | The default. |
| `deepseek-r1` | A reasoning model. |
| `deepseek-v4.1-flash` | Served by Fireworks AI. |

## Set up DeepSeek

Guild has no managed key for DeepSeek. To use DeepSeek models, add a credential for a provider that serves them. Adding your first credential switches the whole account to bring your own key (BYOK).

**1. Open Models & providers**

Click **Access & setup** in the left nav, then **Models & providers**. In an organization, only admins can open it.

**2. Add a credential**

Click **Add API key** and choose an inference provider from the table above.

**3. Enter the provider's secret**

Give the credential a **Name** and paste your provider's **API key**. [AWS Bedrock](/platform/providers/aws-bedrock) asks for an IAM role and region instead.

**4. Choose DeepSeek**

Under **Models**, check **DeepSeek**. Keep `deepseek-v3.2` as its default model or enter another from the list above. Then click **Add Key**. On [Fireworks AI](/platform/providers/fireworks), pick a model from its list, because the pre-filled default isn't available there.

To control which workspaces and agents can use DeepSeek models, add a [model policy](/platform/llm-settings#model-policies) for the credential. For example, `--models "deepseek-*"` limits a policy to matching models:

```bash theme={null}
guild llm policy create --credential <credential-id> --publisher DEEPSEEK --target-id <workspace-or-agent-id> --models "deepseek-*"
```

## Use it from an agent

Agent code never names a credential. Guild resolves the call against the workspace owner's settings. To ask for DeepSeek explicitly, put it in `llmPreferences`:

```typescript theme={null}
const result = await task.llm.generateText({
  prompt: "Summarize this text...",
  llmPreferences: [
    { provider: "deepseek", model: "deepseek-r1" },
    { provider: "deepseek" },
  ],
})
```

The first entry asks for `deepseek-r1`. The second falls back to the default model of the matching policy. Preferences are strict: if no credential or policy allows any of them, the call fails rather than using another publisher. See [LLM preferences](/guide/llms#llm-preferences).

## Frequently asked questions

> **Can I use DeepSeek with Guild's managed tokens?**
>
> No. Guild has no managed key for DeepSeek. Add a credential for a provider that serves it, which switches the account to bring your own key (BYOK).

> **Can I connect the DeepSeek API directly?**
>
> No. Guild serves DeepSeek models only through AWS Bedrock, OpenRouter, and Fireworks AI.

> **Which providers serve deepseek-r1?**
>
> AWS Bedrock, in every supported region except `us-west-1`, and OpenRouter. [Fireworks AI](/integrations/fireworks) serves only `deepseek-v4.1-flash`.

> **Why does my Fireworks AI credential fail with the default model?**
>
> The pre-filled default, `deepseek-v3.2`, isn't on Fireworks AI. Pick a model from its list before you save.

## Put a governed agent on DeepSeek this week

> **[Book a demo](https://guild-ai.cal.com/gtm/meeting-with-guild.ai)**
>
> See how teams govern agents that use DeepSeek.

> **[Start free](https://app.guild.ai)**
>
> Connect DeepSeek and scope your first agent.

## Related

**Also runs on Guild:** [Qwen](/integrations/qwen) · [Moonshot AI](/integrations/moonshot) · [AWS Bedrock](/integrations/aws-bedrock) · [Fireworks AI](/integrations/fireworks)

**Read:** Docs: [Models & providers](/platform/llm-settings) · [LLMs](/guide/llms) · [Usage](/insights/usage)
