> ## 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.

# OpenAI-kompatibel API-hurtigstart: Send Chat Completions-forespørsler med CometAPI

> Bruk CometAPI som en OpenAI API-kompatibel base URL for Chat Completions-forespørsler med curl, Python, Node.js og OpenAI SDK-er.

Denne siden er en hurtigstart for CometAPI sin OpenAI-kompatible API. Den hjelper deg med å gjenbruke forespørselsformatet for Chat Completions, OpenAI SDK-er og en CometAPI base URL. Den er ikke en veiledning for å sette opp en OpenAI-konto eller en side kun for OpenAI-modeller.

## Hva du skal bygge

Du skal sende én tekstforespørsel til CometAPI sin OpenAI-kompatible `POST /v1/chat/completions`-rute, skrive ut assistentmeldingen og beholde forespørselsformatet klart for apper som allerede bruker OpenAI SDK-er.

## Når du bør bruke denne siden

Bruk denne hurtigstarten når ett av disse punktene passer prosjektet ditt:

* Du bruker allerede OpenAI SDK-er eller forespørselsformater for Chat Completions.
* Du vil bytte base URL til CometAPI.
* Du vil kalle en CometAPI model ID via en OpenAI API-kompatibel rute.

## Forutsetninger

* En CometAPI API-nøkkel lagret i `COMETAPI_KEY`
* En model ID for en tekstmodell fra [Models page](/no/overview/models)
* `curl`, Python 3.10+ eller Node.js 18+

## API-nøkkel, base URL, autentisering

Bruk CometAPI base URL med OpenAI-kompatible klienter:

```text theme={null}
https://api.cometapi.com/v1
```

Autentiser direkte HTTP-forespørsler med et Bearer-token:

```text theme={null}
Authorization: Bearer $COMETAPI_KEY
```

## Kodeeksempler

Bruk fanene nedenfor for å sende den samme Chat Completions-forespørselen med cURL, Python og Node.js.

<CodeGroup>
  ```bash cURL theme={null}
  curl https://api.cometapi.com/v1/chat/completions \
    -H "Authorization: Bearer $COMETAPI_KEY" \
    -H "Content-Type: application/json" \
    -d '{
      "model": "your-model-id",
      "messages": [
        {
          "role": "user",
          "content": "Write one sentence about CometAPI."
        }
      ]
    }'
  ```

  ```python Python theme={null}
  import os
  from openai import OpenAI

  client = OpenAI(
      api_key=os.environ["COMETAPI_KEY"],
      base_url="https://api.cometapi.com/v1",
  )

  completion = client.chat.completions.create(
      model="your-model-id",
      messages=[
          {
              "role": "user",
              "content": "Write one sentence about CometAPI.",
          }
      ],
  )

  print(completion.choices[0].message.content)
  ```

  ```javascript Node.js theme={null}
  import OpenAI from "openai";

  const client = new OpenAI({
    apiKey: process.env.COMETAPI_KEY,
    baseURL: "https://api.cometapi.com/v1",
  });

  const completion = await client.chat.completions.create({
    model: "your-model-id",
    messages: [
      {
        role: "user",
        content: "Write one sentence about CometAPI.",
      },
    ],
  });

  console.log(completion.choices[0].message.content);
  ```
</CodeGroup>

## Forklaring av flyten

OpenAI-kompatibel betyr at applikasjonen din beholder Chat Completions-endepunktet, forespørselsteksten og SDK-metodenavnene, samtidig som base URL og model ID endres til CometAPI-verdier.

Ruten er synkron som standard. API-et returnerer det fullførte responsobjektet i én HTTP-respons, og applikasjonen din leser `choices[0].message.content`.

For inkrementell utdata setter du `stream` til `true`. Responsen blir da Server-Sent Events og avsluttes med `data: [DONE]`. Bruk streaming for chatgrensesnitt og lange svar. Behold den synkrone formen for bakgrunnsjobber og enkle tester.

## Vanlige parametere

| Parameter               | Bruk                                                                                            |
| ----------------------- | ----------------------------------------------------------------------------------------------- |
| `model`                 | CometAPI model ID for en modell som støtter tekst.                                              |
| `messages`              | Samtalearrayet. Start med én `user`-melding for en minimal forespørsel.                         |
| `temperature`           | Styrer tilfeldighet. Lavere verdier gjør utdata mer deterministiske.                            |
| `max_completion_tokens` | Setter en grense for generert utdata for modellfamilier som bruker completion-token-budsjetter. |
| `stream`                | Strømmer inkrementelle responsbiter når den settes til `true`.                                  |
| `response_format`       | Ber om JSON-utdata når den valgte modellen støtter det.                                         |

## Feilsøking og vanlige spørsmål

<AccordionGroup>
  <Accordion title="Er dette OpenAI API?">
    Nei. Dette er CometAPIs OpenAI-kompatible API-rute. Du bruker en CometAPI API-nøkkel, CometAPI-base-URL-en og en CometAPI model ID.
  </Accordion>

  <Accordion title="Forespørselen returnerer 401">
    Bekreft at `COMETAPI_KEY` er satt i det samme skallet eller kjøretidsmiljøet som sender forespørselen. Ikke lim inn en ekte nøkkel i kildefiler.
  </Accordion>

  <Accordion title="Modellen blir ikke funnet">
    Bruk en CometAPI model ID som støtter tekst- eller chatforespørsler. Sjekk Models-siden før du prøver på nytt.
  </Accordion>

  <Accordion title="SDK-en kaller fortsatt OpenAI">
    Bekreft at klienten setter `base_url` i Python eller `baseURL` i Node.js til `https://api.cometapi.com/v1`.
  </Accordion>
</AccordionGroup>

## Neste steg

* Les [Chat Completions API reference](/api/text/chat).
* Konfigurer SDK-klienter i [Use CometAPI with OpenAI SDKs](/no/guides/use-cometapi-with-openai-sdk).
* List opp tilgjengelige modeller med [List available CometAPI models](/no/guides/how-to-list-available-models).
* Legg til håndtering av retry og rate limits med [Error codes and retry strategy](/no/guides/error-codes-and-retry-strategy).
