Qwen 3.5
Open-source модель из семейства Qwen 3.5, разработанная компанией Alibaba. Предназначена для генерации текста, понимания естественного языка, решения задач анализа, диалога и кодинга. Доступна в Alem Plus через OpenAI-совместимый API. Поддерживает многоязычные сценарии и работает в режиме чат-модели.
Модель также поддерживает мультимодальность — может анализировать изображения и использовать их в диалоге.
Шаг 1. Откройте Qwen3 и нажмите «Получить API-ключ»
Шаг 2. Создание API-ключа
Что вы получите от Alem Plus:
- API Key
Чтобы его использовать, сделайте запрос: POST https://llm.alem.ai/v1/chat/completions
Headers: Authorization: Bearer API Key
import requests
API_KEY = "Ваш API_KEY"
URL = "https://llm.alem.ai/v1/chat/completions"
payload = {
"model": "qwen3",
"messages": [{"role": "user", "content": "Hello, world!"}],
}
def main():
resp = requests.post(
URL,
headers={
"Authorization": f"Bearer {API_KEY}",
"Content-Type": "application/json",
},
json=payload,
timeout=60,
)
resp.raise_for_status()
data = resp.json()
print(data["choices"][0]["message"]["content"])
if __name__ == "__main__":
main()
const URL = "https://llm.alem.ai/v1/chat/completions";
const API_KEY = "Ваш API_KEY";
async function main() {
const resp = await fetch(URL, {
method: "POST",
headers: {
Authorization: `Bearer ${API_KEY}`,
"Content-Type": "application/json",
},
body: JSON.stringify({
model: "qwen3",
messages: [{ role: "user", content: "Hello, world!" }],
}),
});
if (!resp.ok) {
throw new Error(`HTTP ${resp.status} ${await resp.text()}`);
}
const data = await resp.json();
console.log(data?.choices?.[0]?.message?.content ?? "");
}
main().catch((err) => {
console.error("Qwen3 Node.js example failed:", err);
process.exit(1);
});
<?php
declare(strict_types=1);
$API_KEY = 'Ваш API_KEY';
$URL = 'https://llm.alem.ai/v1/chat/completions';
$payload = [
'model' => 'qwen3',
'messages' => [['role' => 'user', 'content' => 'Hello, world!']],
];
$ch = curl_init($URL);
curl_setopt_array($ch, [
CURLOPT_POST => true,
CURLOPT_HTTPHEADER => [
'Authorization: Bearer ' . $API_KEY,
'Content-Type: application/json',
],
CURLOPT_POSTFIELDS => json_encode($payload, JSON_UNESCAPED_UNICODE | JSON_UNESCAPED_SLASHES),
CURLOPT_RETURNTRANSFER => true,
CURLOPT_TIMEOUT => 60,
]);
$raw = curl_exec($ch);
if ($raw === false) {
throw new RuntimeException('cURL error: ' . curl_error($ch));
}
$code = curl_getinfo($ch, CURLINFO_RESPONSE_CODE);
curl_close($ch);
if ($code < 200 || $code >= 300) {
throw new RuntimeException("HTTP $code: $raw");
}
$data = json_decode($raw, true);
echo $data['choices'][0]['message']['content'] ?? $raw;
Рассмотрим как получить протестировать Qwen3 с помощью POSTMAN.
Укажите метод POST и свой API-KEY
Укажите KEY и VALUE
Укажите model и input
Нажмите Send
Рассмотрим как использовать мультимодальность этой модели. Здесь представлены примеры скриптов, которые могут быть использованы для распознования и описания картинки.
import requests
URL = "https://llm.alem.ai/v1/chat/completions"
API_KEY = "Ваш API_KEY"
IMAGE_URL = "https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcRcOmqVyTywcnSFkWu0lK1vgmjoJ56DFwkLLw&s"
payload = {
"model": "qwen3",
"temperature": 0.2,
"messages": [
{
"role": "user",
"content": [
{
"type": "image_url",
"image_url": {
"url": IMAGE_URL
}
},
{
"type": "text",
"text": "Опиши, что изображено на этой картинке."
}
]
}
]
}
def main():
try:
resp = requests.post(
URL,
headers={
"Authorization": f"Bearer {API_KEY}",
"Content-Type": "application/json",
},
json=payload,
timeout=60,
)
resp.raise_for_status()
data = resp.json()
print(data["choices"][0]["message"]["content"])
except (requests.RequestException, KeyError) as e:
print(f"Request failed: {e}\nBody: {resp.text if 'resp' in locals() else ''}")
if __name__ == "__main__":
main()
const API_KEY = "Ваш API_KEY";
const URL = "https://llm.alem.ai/v1/chat/completions";
const IMAGE_URL =
"https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcRcOmqVyTywcnSFkWu0lK1vgmjoJ56DFwkLLw&s";
const payload = {
model: "qwen3",
temperature: 0.2,
messages: [
{
role: "user",
content: [
{
type: "image_url",
image_url: {
url: IMAGE_URL,
},
},
{
type: "text",
text: "Опиши, что изображено на этой картинке.",
},
],
},
],
};
async function main() {
try {
const resp = await fetch(URL, {
method: "POST",
headers: {
Authorization: `Bearer ${API_KEY}`,
"Content-Type": "application/json",
},
body: JSON.stringify(payload),
});
if (!resp.ok) {
const errorText = await resp.text();
throw new Error(`HTTP ${resp.status}: ${errorText}`);
}
const data = await resp.json();
console.log(data.choices[0].message.content);
} catch (error) {
console.error("Request failed:", error.message);
}
}
main();
<?php
$API_KEY = "YOUR_API_KEY";
$URL = "https://llm.alem.ai/v1/chat/completions";
$IMAGE_URL = "https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcRcOmqVyTywcnSFkWu0lK1vgmjoJ56DFwkLLw&s";
$payload = [
"model" => "qwen3",
"temperature" => 0.2,
"messages" => [
[
"role" => "user",
"content" => [
[
"type" => "image_url",
"image_url" => [
"url" => $IMAGE_URL
]
],
[
"type" => "text",
"text" => "Опиши, что изображено на этой картинке."
]
]
]
]
];
$ch = curl_init($URL);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, [
"Authorization: Bearer " . $API_KEY,
"Content-Type: application/json"
]);
curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($payload, JSON_UNESCAPED_UNICODE | JSON_UNESCAPED_SLASHES));
curl_setopt($ch, CURLOPT_TIMEOUT, 60);
$response = curl_exec($ch);
if ($response === false) {
echo "Request failed: " . curl_error($ch) . PHP_EOL;
curl_close($ch);
exit(1);
}
$httpCode = curl_getinfo($ch, CURLINFO_HTTP_CODE);
curl_close($ch);
if ($httpCode < 200 || $httpCode >= 300) {
echo "HTTP $httpCode: $response" . PHP_EOL;
exit(1);
}
$data = json_decode($response, true);
if (!isset($data["choices"][0]["message"]["content"])) {
echo "Unexpected response: $response" . PHP_EOL;
exit(1);
}
echo $data["choices"][0]["message"]["content"] . PHP_EOL;
Как сочетать Qwen 3 с другими сервисами
- Оркестрация/агенты: n8n