Полное руководство по интеграции Rus-GPT API в ваши приложения
Rus-GPT API совместим с форматами OpenAI и Anthropic. Вы можете использовать официальные SDK или делать HTTP-запросы напрямую.
https://rus-gpt.com/api/v1Authorization: Bearer YOUR_API_KEY
Для авторизации запросов используйте API-ключ. Получить ключ можно на странице API Keys.
Передайте ключ одним из способов:
Authorization: Bearer rusgpt-xxxxx... (рекомендуется)x-api-key: rusgpt-xxxxx...Основной эндпоинт для генерации текста. Совместим с OpenAI SDK.
from openai import OpenAI
client = OpenAI(
base_url="https://rus-gpt.com/api/v1",
api_key="rusgpt-YOUR_API_KEY",
)
response = client.chat.completions.create(
model="anthropic/claude-sonnet-4.5",
messages=[
{"role": "user", "content": "Напиши короткую сказку про кота"}
],
)
print(response.choices[0].message.content)
curl https://rus-gpt.com/api/v1/chat/completions \
-H "Authorization: Bearer rusgpt-YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "anthropic/claude-sonnet-4.5",
"messages": [
{"role": "user", "content": "Напиши короткую сказку про кота"}
]
}'
import OpenAI from 'openai';
const client = new OpenAI({
baseURL: 'https://rus-gpt.com/api/v1',
apiKey: 'rusgpt-YOUR_API_KEY',
});
const response = await client.chat.completions.create({
model: 'anthropic/claude-sonnet-4.5',
messages: [
{ role: 'user', content: 'Напиши короткую сказку про кота' }
],
});
console.log(response.choices[0].message.content);
package main
import (
"context"
"fmt"
"github.com/sashabaranov/go-openai"
)
func main() {
config := openai.DefaultConfig("rusgpt-YOUR_API_KEY")
config.BaseURL = "https://rus-gpt.com/api/v1"
client := openai.NewClientWithConfig(config)
resp, err := client.CreateChatCompletion(
context.Background(),
openai.ChatCompletionRequest{
Model: "anthropic/claude-sonnet-4.5",
Messages: []openai.ChatCompletionMessage{
{Role: "user", Content: "Напиши короткую сказку про кота"},
},
},
)
if err != nil {
panic(err)
}
fmt.Println(resp.Choices[0].Message.Content)
}
Для получения ответа по частям используйте параметр stream: true.
from openai import OpenAI
client = OpenAI(
base_url="https://rus-gpt.com/api/v1",
api_key="rusgpt-YOUR_API_KEY",
)
stream = client.chat.completions.create(
model="anthropic/claude-sonnet-4.5",
messages=[{"role": "user", "content": "Объясни квантовую механику"}],
stream=True,
)
for chunk in stream:
if chunk.choices[0].delta.content:
print(chunk.choices[0].delta.content, end="", flush=True)
curl https://rus-gpt.com/api/v1/chat/completions \
-H "Authorization: Bearer rusgpt-YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "anthropic/claude-sonnet-4.5",
"messages": [{"role": "user", "content": "Объясни квантовую механику"}],
"stream": true
}'
import OpenAI from 'openai';
const client = new OpenAI({
baseURL: 'https://rus-gpt.com/api/v1',
apiKey: 'rusgpt-YOUR_API_KEY',
});
const stream = await client.chat.completions.create({
model: 'anthropic/claude-sonnet-4.5',
messages: [{ role: 'user', content: 'Объясни квантовую механику' }],
stream: true,
});
for await (const chunk of stream) {
const content = chunk.choices[0]?.delta?.content || '';
process.stdout.write(content);
}
package main
import (
"context"
"fmt"
"io"
"github.com/sashabaranov/go-openai"
)
func main() {
config := openai.DefaultConfig("rusgpt-YOUR_API_KEY")
config.BaseURL = "https://rus-gpt.com/api/v1"
client := openai.NewClientWithConfig(config)
stream, err := client.CreateChatCompletionStream(
context.Background(),
openai.ChatCompletionRequest{
Model: "anthropic/claude-sonnet-4.5",
Messages: []openai.ChatCompletionMessage{
{Role: "user", Content: "Объясни квантовую механику"},
},
Stream: true,
},
)
if err != nil {
panic(err)
}
defer stream.Close()
for {
response, err := stream.Recv()
if err == io.EOF {
break
}
if err != nil {
panic(err)
}
fmt.Print(response.Choices[0].Delta.Content)
}
}
Альтернативный эндпоинт, совместимый с Anthropic SDK.
import httpx
response = httpx.post(
"https://rus-gpt.com/api/v1/messages",
headers={
"Authorization": "Bearer rusgpt-YOUR_API_KEY",
"Content-Type": "application/json",
},
json={
"model": "anthropic/claude-sonnet-4.5",
"max_tokens": 1024,
"messages": [
{"role": "user", "content": "Привет! Как дела?"}
],
},
)
data = response.json()
print(data["content"][0]["text"])
curl https://rus-gpt.com/api/v1/messages \
-H "Authorization: Bearer rusgpt-YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "anthropic/claude-sonnet-4.5",
"max_tokens": 1024,
"messages": [
{"role": "user", "content": "Привет! Как дела?"}
]
}'
const response = await fetch('https://rus-gpt.com/api/v1/messages', {
method: 'POST',
headers: {
'Authorization': 'Bearer rusgpt-YOUR_API_KEY',
'Content-Type': 'application/json',
},
body: JSON.stringify({
model: 'anthropic/claude-sonnet-4.5',
max_tokens: 1024,
messages: [
{ role: 'user', content: 'Привет! Как дела?' }
],
}),
});
const data = await response.json();
console.log(data.content[0].text);
Chat Completions в формате OpenAI
Messages API в формате Anthropic
Список доступных моделей
Полный список моделей с ценами доступен на странице Models.
Популярные модели:
anthropic/claude-sonnet-4.5 - Claude Sonnet 4.5 (быстрая и мощная)z-ai/glm-4.7 - GLM 4.7 (китайская модель)qwen/qwen3-30b-a3b-instruct-2507 - Qwen 3 30BAPI возвращает стандартные HTTP-коды ошибок:
400 - Неверный запрос (проверьте параметры)401 - Неавторизован (проверьте API-ключ)402 - Недостаточно средств на балансе404 - Модель не найдена429 - Превышен лимит запросов500 - Внутренняя ошибка сервераЕсли у вас возникли вопросы или проблемы: