Добавь ИИ в своё приложение

OpenAI-совместимый API через LiteLLM. Если у тебя уже есть код под OpenAI — переключишь одной строкой.

Что такое LiteLLM API?

LiteLLM — прокси-сервер, который принимает запросы в формате OpenAI и маршрутизирует их к нужной модели (Qwen, Gemini, Claude, GPT, Whisper). Для тебя это выглядит как обычный OpenAI API — только бесплатный и с другими моделями.

Как получить API-ключ

1
Напиши нам

В личку @ManyuninPA или в Telegram-группу

2
Получи ключ

Выдадим API-ключ и лимиты токенов

3
Подключай

Base URL: https://api.mpa.ru.net/v1

✅ Плюсы

  • ✅ Бесплатно
  • ✅ OpenAI-совместимый формат
  • ✅ Много моделей — один ключ
  • ✅ Не нужно менять код — только base_url

⚠️ Ограничения

  • ⚠️ Лимиты токенов в месяц
  • ⚠️ Не для продакшена с высокой нагрузкой
  • ⚠️ Нужно написать для получения ключа

Доступные модели через API

Передавай имя модели в поле model запроса.

💬 Чат
POST /v1/chat/completions
deepseek-v4-flash-tw DeepSeek V4 Flash — универсальная быстрая, по умолчанию claude-opus-4.7 Claude Opus 4.7 — самая мощная Anthropic, доступ по запросу claude-sonnet-4.6 Claude Sonnet 4.6 — премиум-модель, контекст 1M токенов claude-haiku-4.5 Claude Haiku 4.5 — быстрый ассистент, понимает картинки gpt-5.2 GPT-5.2 — флагман OpenAI, альтернатива Claude Sonnet gpt-5.4-mini GPT-5.4 Mini — компактная OpenAI для повседневных задач grok-4-fast 📚 Grok 4 Fast — 2M контекст, для книг и больших документов deepseek-v4-pro DeepSeek V4 Pro — рассуждения, 1M контекст, MoE 1.6T sonar 🌐 Sonar — Perplexity, быстрый поиск в интернете со ссылками sonar-pro 🌐 Sonar Pro — развёрнутый поиск с множеством источников sonar-reasoning-pro 🌐 Sonar Reasoning Pro — поиск + пошаговое рассуждение
🎤 Транскрипция
POST /v1/audio/transcriptions

whisper-large-v3-turbo — голос в текст

Принимает аудио как multipart/form-data. Поддерживает русский, английский и ещё 50+ языков — определяет сам.

🔊 Синтез речи
POST /v1/audio/speech

tts-1 — текст в голос

OpenAI-совместимый TTS. Голоса: alloy, echo, fable, onyx, nova, shimmer. Возвращает MP3-поток.

📐 Эмбеддинги
POST /v1/embeddings

text-embedding-3-small — вектор для RAG и поиска

Размерность 1536, совместимо с OpenAI. Подходит для семантического поиска, кластеризации и memory-сервисов.

Список может обновляться — точный перечень зависит от выданного ключа.

PHP-примеры

php — простой запрос
<?php
$apiKey  = 'YOUR_API_KEY';
$baseUrl = 'https://api.mpa.ru.net/v1';

$data = [
    'model'    => 'deepseek-v4-flash-tw',
    'messages' => [
        ['role' => 'user', 'content' => 'Привет! Что такое нейросеть?']
    ],
];

$ch = curl_init($baseUrl . '/chat/completions');
curl_setopt_array($ch, [
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_POST           => true,
    CURLOPT_POSTFIELDS     => json_encode($data),
    CURLOPT_HTTPHEADER     => [
        'Content-Type: application/json',
        'Authorization: Bearer ' . $apiKey,
    ],
]);

$response = json_decode(curl_exec($ch), true);
curl_close($ch);

echo $response['choices'][0]['message']['content'];
php — чат с историей сообщений
<?php
function chat(array $messages, string $apiKey): string {
    $data = [
        'model'    => 'deepseek-v4-flash-tw',
        'messages' => $messages,
    ];

    $ch = curl_init('https://api.mpa.ru.net/v1/chat/completions');
    curl_setopt_array($ch, [
        CURLOPT_RETURNTRANSFER => true,
        CURLOPT_POST           => true,
        CURLOPT_POSTFIELDS     => json_encode($data),
        CURLOPT_HTTPHEADER     => [
            'Content-Type: application/json',
            'Authorization: Bearer ' . $apiKey,
        ],
    ]);

    $response = json_decode(curl_exec($ch), true);
    curl_close($ch);

    return $response['choices'][0]['message']['content'];
}

$history = [
    ['role' => 'system',    'content' => 'Ты помощник программиста.'],
    ['role' => 'user',      'content' => 'Как написать цикл for в PHP?'],
];

$answer   = chat($history, 'YOUR_API_KEY');
$history[] = ['role' => 'assistant', 'content' => $answer];
$history[] = ['role' => 'user',      'content' => 'А while?'];
$answer2  = chat($history, 'YOUR_API_KEY');

echo $answer2;
php — потоковая передача (stream)
<?php
$apiKey = 'YOUR_API_KEY';

$data = [
    'model'    => 'deepseek-v4-flash-tw',
    'stream'   => true,
    'messages' => [
        ['role' => 'user', 'content' => 'Напиши короткое стихотворение про PHP']
    ],
];

header('Content-Type: text/event-stream');
header('X-Accel-Buffering: no');

$ch = curl_init('https://api.mpa.ru.net/v1/chat/completions');
curl_setopt_array($ch, [
    CURLOPT_POST           => true,
    CURLOPT_POSTFIELDS     => json_encode($data),
    CURLOPT_HTTPHEADER     => [
        'Content-Type: application/json',
        'Authorization: Bearer ' . $apiKey,
    ],
    CURLOPT_WRITEFUNCTION  => function ($ch, $chunk) {
        $lines = explode("\n", $chunk);
        foreach ($lines as $line) {
            if (str_starts_with($line, 'data: ')) {
                $json = substr($line, 6);
                if ($json === '[DONE]') break;
                $data  = json_decode($json, true);
                $token = $data['choices'][0]['delta']['content'] ?? '';
                echo $token;
                ob_flush(); flush();
            }
        }
        return strlen($chunk);
    },
]);

curl_exec($ch);
curl_close($ch);

Python-примеры

Официальный OpenAI SDK — pip install openai

python — простой запрос
from openai import OpenAI

client = OpenAI(
    api_key="YOUR_API_KEY",
    base_url="https://api.mpa.ru.net/v1",
)

response = client.chat.completions.create(
    model="deepseek-v4-flash-tw",
    messages=[
        {"role": "user", "content": "Привет! Что такое нейросеть?"}
    ],
)

print(response.choices[0].message.content)
python — чат с историей сообщений
from openai import OpenAI

client = OpenAI(
    api_key="YOUR_API_KEY",
    base_url="https://api.mpa.ru.net/v1",
)

def ask(messages: list) -> str:
    resp = client.chat.completions.create(
        model="deepseek-v4-flash-tw",
        messages=messages,
    )
    return resp.choices[0].message.content

history = [
    {"role": "system", "content": "Ты помощник программиста."},
    {"role": "user",   "content": "Как написать цикл for в Python?"},
]
answer = ask(history)
history.append({"role": "assistant", "content": answer})
history.append({"role": "user",      "content": "А while?"})
answer2 = ask(history)

print(answer2)
python — потоковая передача (stream)
from openai import OpenAI

client = OpenAI(
    api_key="YOUR_API_KEY",
    base_url="https://api.mpa.ru.net/v1",
)

stream = client.chat.completions.create(
    model="deepseek-v4-flash-tw",
    messages=[
        {"role": "user", "content": "Напиши короткое стихотворение про Python"}
    ],
    stream=True,
)

for chunk in stream:
    token = chunk.choices[0].delta.content or ""
    print(token, end="", flush=True)
python — транскрипция аудио (whisper)
from openai import OpenAI

client = OpenAI(
    api_key="YOUR_API_KEY",
    base_url="https://api.mpa.ru.net/v1",
)

with open("voice.m4a", "rb") as audio:
    transcription = client.audio.transcriptions.create(
        model="whisper-large-v3-turbo",
        file=audio,
    )

print(transcription.text)
python — эмбеддинги для RAG и поиска
from openai import OpenAI

client = OpenAI(
    api_key="YOUR_API_KEY",
    base_url="https://api.mpa.ru.net/v1",
)

resp = client.embeddings.create(
    model="text-embedding-3-small",
    input=["Первый текст для векторизации", "Второй текст"],
)

for item in resp.data:
    print(f"Вектор {item.index}: {len(item.embedding)}-мерный")
    # item.embedding — list[float] длиной 1536