Source: https://ailoot.ai/docs/el/api/chat-completions/
Canonical: https://ailoot.ai/docs/el/api/chat-completions/
Language: el

[API](https://ailoot.ai/docs/el/) 

# Chat Completions

[Markdown](https://ailoot.ai/docs/el/api/chat-completions/index.md)

Απάντηση μοντέλου σε συνομιλία στη μορφή OpenAI. Η πιο διαδεδομένη μορφή: την υποστηρίζουν σχεδόν όλοι οι πελάτες.

POST`https://api.ailoot.ai/v1/chat/completions`

Chat Completions

```bash
curl https://api.ailoot.ai/v1/chat/completions \
  -H "Authorization: Bearer $AILOOT_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "claude-sonnet-5-5",
    "messages": [
      {"role": "user", "content": "Εξήγησε με δύο προτάσεις τι είναι το API."}
    ]
  }' 
```

```python
from openai import OpenAI
import os

client = OpenAI(max_retries=0, 
    base_url="https://api.ailoot.ai/v1",
    api_key=os.environ["AILOOT_API_KEY"],
)

resp = client.chat.completions.create(
    model="claude-sonnet-5-5",
    messages=[{"role": "user", "content": "Εξήγησε με δύο προτάσεις τι είναι το API."}],
)
print(resp.choices[0].message.content)
```

```js
import OpenAI from "openai";

const client = new OpenAI({ maxRetries: 0,
  baseURL: "https://api.ailoot.ai/v1",
  apiKey: process.env.AILOOT_API_KEY,
});

const resp = await client.chat.completions.create({
  model: "claude-sonnet-5-5",
  messages: [{ role: "user", content: "Εξήγησε με δύο προτάσεις τι είναι το API." }],
});
console.log(resp.choices[0].message.content);
```

200 OK

```json
{
  "id": "chatcmpl-8f2c…",
  "object": "chat.completion",
  "created": 1790812800,
  "model": "claude-sonnet-5-5",
  "choices": [
    {
      "index": 0,
      "message": {
        "role": "assistant",
        "content": "Το API είναι μια συμφωνία για το πώς ένα πρόγραμμα ζητά από ένα άλλο να κάνει κάτι…"
      },
      "finish_reason": "stop"
    }
  ],
  "usage": {
    "prompt_tokens": 21,
    "completion_tokens": 48,
    "total_tokens": 69
  }
}
```

## Έλεγχος ταυτότητας

| Παράμετρος | Τύπος | Απαιτείται | Περιγραφή |
| --- | --- | --- | --- |
| `Authorization` | header | υποχρεωτικό | Κλειδί στη μορφή `Bearer sk-…`. Μπορείτε επίσης να χρησιμοποιήσετε τις κεφαλίδες `x-api-key` ή `x-goog-api-key`. |

## Σώμα αιτήματος

| Παράμετρος | Τύπος | Απαιτείται | Περιγραφή |
| --- | --- | --- | --- |
| `model` | string | υποχρεωτικό | ID μοντέλου από τον [κατάλογο](https://ailoot.ai/models/el/), για παράδειγμα `claude-sonnet-5-5`. Το μοντέλο πρέπει να υποστηρίζει τη μορφή OpenAI Chat. |
| `messages` | array | υποχρεωτικό | Ιστορικό συνομιλίας: αντικείμενα με `role` (`system`, `developer`, `user`, `assistant`, `tool`) και `content` — συμβολοσειρά ή πίνακας τμημάτων (κείμενο, `image_url`). |
| `stream` | boolean | προαιρετικό | Απάντηση στη μορφή Server-Sent Events. Από προεπιλογή `false`. Το χρεώσιμο κείμενο φτάνει σε ένα ενιαίο τμήμα μετά τον υπολογισμό του κόστους, και όχι λέξη προς λέξη. |
| `stream_options` | object | προαιρετικό | `{"include_usage": true}` — αποστολή του τελικού `usage` ως τελευταίου συμβάντος της ροής. |
| `max_tokens` | integer | προαιρετικό | Μέγιστος αριθμός token απάντησης. Το νέο όνομα είναι `max_completion_tokens`. Αν δεν ορίσετε όριο, το Ailoot χρησιμοποιεί 4096 (ή λιγότερα, αν το μοντέλο έχει μικρότερο όριο απάντησης· το Grok έχει δικό του όριο). Για μεγάλες απαντήσεις, ορίστε ρητά το όριο, αλλιώς η απάντηση θα σταματήσει στα 4096 token με `finish_reason: "length"`. Το όριο συνυπολογίζεται στη δέσμευση: όσο μεγαλύτερο είναι, τόσο περισσότερο διαθέσιμο υπόλοιπο χρειάζεται. |
| `temperature` | number | προαιρετικό | Τυχαιότητα απάντησης, συνήθως από 0 έως 2. Ενδέχεται να αγνοείται από τα μοντέλα συλλογισμού. |
| `top_p` | number | προαιρετικό | Εναλλακτική του temperature: το μέρος της μάζας πιθανότητας που λαμβάνεται υπόψη κατά την επιλογή token. |
| `stop` | string \| array | προαιρετικό | Συμβολοσειρές στις οποίες σταματά η παραγωγή. |
| `tools` | array | προαιρετικό | Περιγραφές συναρτήσεων που μπορεί να καλέσει το μοντέλο. Η μορφή είναι ίδια με του OpenAI: `{"type": "function", "function": {...}}`. |
| `tool_choice` | string \| object | προαιρετικό | `auto`, `none`, `required` ή συγκεκριμένη συνάρτηση. |
| `response_format` | object | προαιρετικό | `{"type": "json_object"}` ή `{"type": "json_schema", ...}` για δομημένη απάντηση — εφόσον το υποστηρίζει το μοντέλο. |
| `reasoning_effort` | string | προαιρετικό | Βάθος συλλογισμού για τα μοντέλα συλλογισμού: `low`, `medium`, `high`. |

Οι υπόλοιπες παράμετροι OpenAI μεταβιβάζονται ως έχουν· ο δημιουργός του μοντέλου καθορίζει αν το συγκεκριμένο μοντέλο τις υποστηρίζει.

## Απάντηση

| Παράμετρος | Τύπος | Απαιτείται | Περιγραφή |
| --- | --- | --- | --- |
| `choices[].message` | object |  | Απάντηση μοντέλου: `content`, όταν καλούνται εργαλεία — `tool_calls`. |
| `choices[].finish_reason` | string |  | `stop` — η απάντηση ολοκληρώθηκε· `length` — έφτασε το όριο `max_tokens` (η απάντηση αυτή εξακολουθεί να θεωρείται πλήρης και χρεώνεται βάσει της πραγματικής χρήσης)· `tool_calls` — το μοντέλο καλεί εργαλείο. |
| `usage` | object |  | `prompt_tokens`, `completion_tokens`, `total_tokens` — βάσει αυτών υπολογίζεται η χρέωση. |

Έχετε ερωτήσεις; Στείλτε μας το Request ID και μια περιγραφή — θα σας βοηθήσουμε να βρείτε την αιτία.[Επικοινωνία με την υποστήριξη](mailto:support@ailoot.ai)

## Ailoot · Η εταιρεία και το χαρτοφυλάκιο έργων της





Η Ailoot στηρίζεται στη συσσωρευμένη λειτουργική εμπειρία, τη μεγάλη πελατειακή βάση, τη σταθερή εξυπηρέτηση και τον συνεχή έλεγχο KPI.





Η εταιρεία και το χαρτοφυλάκιο έργων της: εκατομμύρια πελάτες· μηνιαίες πωλήσεις δισεκατομμυρίων.





Η Ailoot αξιοποιεί αυτή τη λειτουργική εμπειρία για πρόσβαση μέσω API σε λειτουργίες AI στα προϊόντα, τους πράκτορες, τις εφαρμογές και τους αυτοματισμούς των πελατών.
