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

# Use o DeepSeek Harness com a CometAPI

> Configure o DeepSeek Harness 0.1.0-rc.8 para usar a CometAPI por meio de Chat Completions, Responses, Anthropic Messages ou Google generateContent.

Use este guia para executar [DeepSeek Harness](https://github.com/deepseek-ai/deepseek-harness) com a CometAPI. O DeepSeek Harness carrega provedores de modelo personalizados de `$DSH_HOME/settings.yaml`, cujo padrão é `~/.dsh/settings.yaml`.

As configurações nesta página foram verificadas com `@deepseek-ai/dsh@0.1.0-rc.8`. Cada rota concluiu uma interação de texto com streaming e um loop de ferramenta de leitura de arquivos com um modelo representativo. Esse escopo não significa que todos os modelos da CometAPI aceitem todos os formatos de API.

<Warning>
  O DeepSeek Harness está em prévia para desenvolvedores e pode introduzir mudanças incompatíveis. Fixe a versão do pacote testada ao seguir este guia e revise as notas de versão upstream antes de atualizar.
</Warning>

Referências oficiais:

* [Repositório do DeepSeek Harness](https://github.com/deepseek-ai/deepseek-harness)
* [Código-fonte do DeepSeek Harness 0.1.0-rc.8](https://github.com/deepseek-ai/deepseek-harness/tree/dsh-v0.1.0-rc.8)
* [CLI do DeepSeek Harness](https://github.com/deepseek-ai/deepseek-harness/blob/dsh-v0.1.0-rc.8/apps/cli/README.md)
* [Guia de provedores do DeepSeek Harness](https://github.com/deepseek-ai/deepseek-harness/blob/dsh-v0.1.0-rc.8/docs/user/guide/providers.md)

## Pré-requisitos

* Node.js e npm
* Uma conta CometAPI com uma chave de API ativa do [painel](https://www.cometapi.com/console/token)
* Um ID de modelo da [página de modelos da CometAPI](/pt/overview/models) para cada formato de API que você pretende usar

## Entenda as rotas do provedor

O valor de `api` seleciona o formato de comunicação. O `baseURL` termina antes do caminho da operação que o Harness acrescenta.

| ID do provedor       | `api` valor          | `baseURL`                     | Caminho da solicitação |
| -------------------- | -------------------- | ----------------------------- | ---------------------- |
| `cometapi-chat`      | `openai-completions` | `https://api.cometapi.com/v1` | `/v1/chat/completions` |
| `cometapi-responses` | `openai-responses`   | `https://api.cometapi.com/v1` | `/v1/responses`        |
| `cometapi-messages`  | `anthropic-messages` | `https://api.cometapi.com`    | `/v1/messages`         |

<Note>
  Substitua cada valor de `your-model-id` de forma independente. Escolha um modelo que aceite o formato de API da respectiva entrada de provedor.
</Note>

## Configure os provedores

<Steps>
  <Step title="Confirme a versão testada do Harness">
    Confirme a versão fixada do pacote antes de configurar o Harness:

    ```bash theme={null}
    npx @deepseek-ai/dsh@0.1.0-rc.8 --version
    ```

    O comando deve exibir `0.1.0-rc.8`.
  </Step>

  <Step title="Defina sua chave de API do CometAPI">
    Armazene sua chave em `COMETAPI_KEY` antes de iniciar o Harness:

    ```bash theme={null}
    read -rsp "CometAPI API key: " COMETAPI_KEY
    printf '\n'
    export COMETAPI_KEY
    ```

    Defina a variável em cada sessão de shell que iniciar o Harness. Não envie chaves de API ao controle de versão.
  </Step>

  <Step title="Adicione os provedores do CometAPI">
    Crie `$DSH_HOME/settings.yaml`. Se o arquivo já tiver uma seção `llm-pi-ai`, mescle estas entradas de provedor ao mapa `providers` existente:

    ```yaml theme={null}
    llm-pi-ai:
      providers:
        cometapi-chat:
          displayName: CometAPI Chat Completions
          apiKeyEnv: COMETAPI_KEY
          api: openai-completions
          baseURL: https://api.cometapi.com/v1
          models:
            - id: your-model-id
        cometapi-responses:
          displayName: CometAPI Responses
          apiKeyEnv: COMETAPI_KEY
          api: openai-responses
          baseURL: https://api.cometapi.com/v1
          models:
            - id: your-model-id
        cometapi-messages:
          displayName: CometAPI Anthropic Messages
          apiKeyEnv: COMETAPI_KEY
          api: anthropic-messages
          baseURL: https://api.cometapi.com
          models:
            - id: your-model-id

    agent-default-model:
      provider: cometapi-responses
      model: your-model-id
    ```

    O exemplo seleciona o provedor Responses por padrão. Altere `agent-default-model.provider` e `agent-default-model.model` para selecionar outra entrada configurada.

    Se preferir a interface Web, inicie-a após exportar `COMETAPI_KEY` e use as configurações de modelo para adicionar ou editar entradas de provedor e selecionar o modelo padrão:

    ```bash theme={null}
    npx @deepseek-ai/dsh@0.1.0-rc.8 web
    ```

    O endereço local padrão é `http://127.0.0.1:3080`. O YAML continua sendo o caminho direto para corresponder aos nomes das rotas e às URLs base deste guia.
  </Step>

  <Step title="Verifique uma interação de texto">
    Execute uma tarefa pontual sem interface no diretório do projeto que ցանկանում usar com o Harness:

    ```bash theme={null}
    npx @deepseek-ai/dsh@0.1.0-rc.8 \
      --profile headless \
      "Reply exactly with: COMETAPI_DSH_OK"
    ```

    Uma execução bem-sucedida exibe `COMETAPI_DSH_OK`. Para verificar outro provedor, atualize `agent-default-model` e execute o comando novamente.
  </Step>

  <Step title="Verifique o uso da ferramenta de arquivos">
    Crie um arquivo sentinela temporário e peça ao Harness para lê-lo com uma ferramenta de arquivos:

    ```bash theme={null}
    printf 'COMETAPI_DSH_TOOL_OK\n' > /tmp/cometapi-dsh-sentinel.txt
    npx @deepseek-ai/dsh@0.1.0-rc.8 \
      --profile headless \
      "Read /tmp/cometapi-dsh-sentinel.txt with a file tool, then reply with only its contents."
    ```

    Confirme que a resposta final é `COMETAPI_DSH_TOOL_OK`. Execute o Harness somente em um espaço de trabalho no qual você aceite seu acesso a arquivos, processos e rede.
  </Step>
</Steps>

## Rota opcional

O Harness tem uma rota de provedor integrada chamada `google`. A configuração abaixo aponta essa rota para o CometAPI, substituindo o endpoint nativo do Google da rota em vez de adicionar uma segunda rota do Google.

Mescle esta entrada em `llm-pi-ai.providers` e selecione-a em `agent-default-model`:

```yaml theme={null}
llm-pi-ai:
  providers:
    google:
      displayName: CometAPI Google generateContent
      apiKeyEnv: COMETAPI_KEY
      baseURL: https://api.cometapi.com/v1beta
      models:
        - id: your-model-id

agent-default-model:
  provider: google
  model: your-model-id
```

Não adicione um campo `api` a esta entrada. A rota integrada `google` mantém seu protocolo nativo do Google e envia solicitações de Streaming para `/v1beta/models/{model}:streamGenerateContent?alt=sse` com autenticação `x-goog-api-key`.

## Solução de problemas

<AccordionGroup>
  <Accordion title="O Harness informa que a chave de API está ausente">
    Confirme que `COMETAPI_KEY` está definido no mesmo shell que inicia o Harness. Reinicie o Harness após alterar a variável de ambiente.
  </Accordion>

  <Accordion title="O Harness não mostra o modelo configurado">
    Confirme que `$DSH_HOME/settings.yaml` é um YAML válido, que o provedor está em `llm-pi-ai.providers` e que o modelo está listado em `models` desse provedor. O `DSH_HOME` padrão é `~/.dsh`.
  </Accordion>

  <Accordion title="Chat Completions ou Responses usa o caminho incorreto">
    Use `https://api.cometapi.com/v1` como `baseURL`. Não acrescente `/chat/completions` nem `/responses`; o Harness acrescenta o caminho da operação.
  </Accordion>

  <Accordion title="Anthropic Messages retorna um erro de caminho">
    Use `https://api.cometapi.com` sem `/v1` como o `baseURL` de Messages. O adaptador Anthropic acrescenta `/v1/messages`.
  </Accordion>

  <Accordion title="O Google gera um caminho v1beta duplicado">
    Use `https://api.cometapi.com/v1beta` exatamente como está. Não acrescente um caminho de modelo e não adicione um campo `api` à rota integrada `google`.
  </Accordion>

  <Accordion title="Um modelo funciona em um provedor, mas não em outro">
    A disponibilidade de modelos e os formatos de API aceitos podem ser diferentes. Escolha um modelo para cada entrada de provedor em vez de presumir que um modelo funciona em todos os quatro formatos.
  </Accordion>

  <Accordion title="A configuração deixa de funcionar após uma atualização">
    O DeepSeek Harness está em prévia para desenvolvedores. Volte para `@deepseek-ai/dsh@0.1.0-rc.8` e revise as alterações upstream antes de adaptar a configuração para outra versão.
  </Accordion>
</AccordionGroup>

## Recursos relacionados

* [Início rápido do CometAPI](/pt/overview/quick-start)
* [Página de modelos do CometAPI](/pt/overview/models)
* [Repositório do DeepSeek Harness](https://github.com/deepseek-ai/deepseek-harness)
* [Guia de provedores do DeepSeek Harness](https://github.com/deepseek-ai/deepseek-harness/blob/dsh-v0.1.0-rc.8/docs/user/guide/providers.md)

<script type="application/ld+json">
  {`
    {
    "@context": "https://schema.org",
    "@graph": [
      {
        "@type": "HowTo",
        "@id": "https://apidoc.cometapi.com/integrations/deepseek-harness#howto",
        "name": "Usar o DeepSeek Harness com o CometAPI",
        "description": "Configure o DeepSeek Harness 0.1.0-rc.8 para usar o CometAPI por meio de Chat Completions, Responses, Anthropic Messages ou Google generateContent.",
        "step": [
          {
            "@type": "HowToStep",
            "@id": "https://apidoc.cometapi.com/integrations/deepseek-harness#step-1",
            "position": 1,
            "name": "Confirme a versão testada do Harness",
            "text": "Confirme a versão fixada do pacote DeepSeek Harness 0.1.0-rc.8."
          },
          {
            "@type": "HowToStep",
            "@id": "https://apidoc.cometapi.com/integrations/deepseek-harness#step-2",
            "position": 2,
            "name": "Defina sua chave de API do CometAPI",
            "text": "Armazene a chave de API do CometAPI em COMETAPI_KEY antes de iniciar o Harness."
          },
          {
            "@type": "HowToStep",
            "@id": "https://apidoc.cometapi.com/integrations/deepseek-harness#step-3",
            "position": 3,
            "name": "Adicione os provedores do CometAPI",
            "text": "Adicione as rotas de provedores verificadas ao arquivo settings.yaml do Harness."
          },
          {
            "@type": "HowToStep",
            "@id": "https://apidoc.cometapi.com/integrations/deepseek-harness#step-4",
            "position": 4,
            "name": "Verifique uma interação de texto",
            "text": "Execute uma tarefa headless com versão fixada e confirme a resposta de texto esperada."
          },
          {
            "@type": "HowToStep",
            "@id": "https://apidoc.cometapi.com/integrations/deepseek-harness#step-5",
            "position": 5,
            "name": "Verifique o uso de ferramentas de arquivo",
            "text": "Peça ao Harness para ler um arquivo sentinela e confirme a resposta final exata."
          }
        ]
      },
      {
        "@type": "BreadcrumbList",
        "itemListElement": [
          {
            "@type": "ListItem",
            "position": 1,
            "name": "Documentação do CometAPI",
            "item": "https://apidoc.cometapi.com/"
          },
          {
            "@type": "ListItem",
            "position": 2,
            "name": "Integrações",
            "item": "https://apidoc.cometapi.com/integrations"
          },
          {
            "@type": "ListItem",
            "position": 3,
            "name": "Usar o DeepSeek Harness com o CometAPI",
            "item": "https://apidoc.cometapi.com/integrations/deepseek-harness"
          }
        ]
      }
    ]
    }
    `}
</script>
