Creează o completare de chat
Trimite o cerere de completare chat ShareAI cu o cheie API Bearer și înțelege modelul suportat, mesajele și câmpurile de flux.
Pe această pagină
https://api.shareai.now/api/v1/chat/completionsRulează o cerere de chat folosind modelul selectat.
- URL de bază
https://api.shareai.now- Autentificare
- Cheie API Bearer
Aceasta este calea implicită de integrare pentru cererile plătite și autorizate de spațiul tău de lucru cu cheie API. Restricțiile cheii pentru model și furnizor se aplică alocării, inclusiv căile de rezervă permise.
Corpul cererii#
| Câmp | Tip | Semnificație |
|---|---|---|
model | string, obligatoriu | Identificator exact al modelului disponibil. Copiază-l din Modele. |
messages | array | Mesaje de conversație care conțin rol și conținut. |
stream | boolean | false returnează un singur rezultat JSON; true solicită evenimente trimise de server. |
Utilizează conținutul mesajului text. Trimite roluri precum system, user și assistant potrivite conversației. Include istoricul conversației pe care dorești ca modelul să-l utilizeze; nu presupune că cererile împărtășesc o conversație stocată.
cURL
curl --fail-with-body --request POST \
"https://api.shareai.now/api/v1/chat/completions" \
-H "Authorization: Bearer $SHAREAI_API_KEY" \
-H "Content-Type: application/json" \
--data '{
"model": "MODEL_IDENTIFIER",
"messages": [
{
"role": "system",
"content": "Be concise and helpful."
},
{
"role": "user",
"content": "Give me three ideas for a local community event."
}
],
"stream": false
}'
Python
import json
import os
import urllib.request
headers = {"Authorization": "Bearer " + os.environ["SHAREAI_API_KEY"]}
headers["Content-Type"] = "application/json"
payload = {'model': 'MODEL_IDENTIFIER', 'messages': [{'role': 'system', 'content': 'Be concise and helpful.'}, {'role': 'user', 'content': 'Give me three ideas for a local community event.'}], 'stream': False}
data = json.dumps(payload).encode()
request = urllib.request.Request('https://api.shareai.now/api/v1/chat/completions', data=data, headers=headers, method='POST')
with urllib.request.urlopen(request, timeout=60) as response:
print(json.load(response))
TypeScript
const url = "https://api.shareai.now/api/v1/chat/completions";
const headers: Record = {
Authorization: `Bearer ${process.env.SHAREAI_API_KEY}`,
};
headers["Content-Type"] = "application/json";
const payload = {
"model": "MODEL_IDENTIFIER",
"messages": [
{
"role": "system",
"content": "Be concise and helpful."
},
{
"role": "user",
"content": "Give me three ideas for a local community event."
}
],
"stream": false
};
const response = await fetch(url, { method: "POST", headers, body: JSON.stringify(payload) });
if (!response.ok) throw new Error(`${response.status}: ${await response.text()}`);
console.log(await response.json());
Răspuns#
Un rezultat complet non-streaming setează done la true și returnează textul generat la message.content. Nivelul superior conține, de asemenea, done_reason și consumption_type. Streaming-ul utilizează un format diferit, chat-completion-chunk. Nu presupune că rezultatul non-streaming are un array de tip OpenAI-style choices.
JSON
{
"done": true,
"done_reason": "stop",
"consumption_type": "credits",
"message": {
"role": "assistant",
"content": "Here are three ideas for your community event.",
"done": true,
"done_reason": "stop"
}
}
Acesta este un rezultat complet ilustrativ; consumption_type descrie modul real de alocare. Verifică o eroare la nivel superior chiar și atunci când statusul HTTP este 200. Un rezultat fără dispozitiv utilizează în prezent error.code = no_device cu HTTP 200.
Restricții pentru model și furnizor#
O cheie poate fi limitată la modele și furnizori de execuție specifici. Dacă accesul este refuzat, inspectează informațiile cheii și actualizează cheia în Consolă doar dacă spațiul de lucru deținut intenționează să acorde acel acces.
Streaming sau autorizare client#
Transmite un răspuns în flux · Utilizează un token de acces OAuth
Ultima actualizare: 15 septembrie 2026