Endpoints
- POSTАгент - Query
- POSTАгент - Create
- GETАгент - Get
- PATCHАгент - Update
- DELАгент - Delete
- POSTИсточник данных - Create
- GETИсточник данных - Get
- DELИсточник данных - Delete
- POSTХранилище данных - Query
- POSTХранилище данных - Create
- GETХранилище данных - Get
- PATCHХранилище данных - Update
- DELХранилище данных - Delete
- POSTХранилище данных - Upsert (⚠️ устарело)
- POSTИсточник данных - Update (⚠️ устарело)
- POSTХранилище данных - File Upload (⚠️ устарело)
Endpoints
Агент - Query
POST
/
agents
/
{id}
/
query
Copy
curl --request POST \
--url https://gptbots.chat/agents/{id}/query \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{
"query": "<string>",
"conversationId": "<string>",
"visitorId": "<string>",
"temperature": 123,
"streaming": true,
"modelName": "gpt_3_5_turbo",
"maxTokens": 123,
"presencePenalty": 123,
"frequencyPenalty": 123,
"topP": 123,
"filters": {
"custom_ids": [
"<string>"
],
"datasource_ids": [
"<string>"
]
},
"systemPrompt": "<string>",
"userPrompt": "<string>",
"promptType": "raw",
"promptTemplate": "<string>"
}'
Copy
{
"answer": "<string>",
"conversationId": "<string>",
"visitorId": "<string>",
"sources": [
{}
]
}
Потоковая передача
Когда потоковая передача включена, конечная точка будет генерировать события «ответ» (ответ модели) и «endpoint_response» (полный ответ конечной точки).
Copy
import {
EventStreamContentType,
fetchEventSource,
} from '@microsoft/fetch-event-source';
let buffer = '';
let bufferEndpointResponse = '';
const ctrl = new AbortController();
await fetchEventSource(queryAgentURL, {
method: 'POST',
headers: {
'Content-Type': 'application/json',
},
signal: ctrl.signal,
body: JSON.stringify({
streaming: true,
query,
conversationId,
visitorId,
}),
async onopen(response) {
if (response.status === 402) {
throw new ApiError(ApiErrorType.USAGE_LIMIT);
}
},
onmessage: (event) => {
if (event.data === '[DONE]') {
// End of stream
ctrl.abort();
try {
const { sources, conversationId, visitorId } = JSON.parse(
bufferEndpointResponse
) as ChatResponse;
} catch {}
} else if (event.data?.startsWith('[ERROR]')) {
// ...
} else if (event.event === "endpoint_response") {
bufferEndpointResponse += event.data;
} else if (event.event === "answer") {
buffer += event.data;
// ...
}
},
});
Authorizations
Bearer authentication header of the form Bearer <token>
, where <token>
is your auth token.
Path Parameters
Идентификатор агента
Body
application/json
Response
200
application/json
Success
The response is of type object
.
Copy
curl --request POST \
--url https://gptbots.chat/agents/{id}/query \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{
"query": "<string>",
"conversationId": "<string>",
"visitorId": "<string>",
"temperature": 123,
"streaming": true,
"modelName": "gpt_3_5_turbo",
"maxTokens": 123,
"presencePenalty": 123,
"frequencyPenalty": 123,
"topP": 123,
"filters": {
"custom_ids": [
"<string>"
],
"datasource_ids": [
"<string>"
]
},
"systemPrompt": "<string>",
"userPrompt": "<string>",
"promptType": "raw",
"promptTemplate": "<string>"
}'
Copy
{
"answer": "<string>",
"conversationId": "<string>",
"visitorId": "<string>",
"sources": [
{}
]
}
Assistant
Responses are generated using AI and may contain mistakes.