37 lines
1.5 KiB
JavaScript
37 lines
1.5 KiB
JavaScript
"use strict";
|
||
Object.defineProperty(exports, "__esModule", { value: true });
|
||
exports.generatePicture = exports.llm = void 0;
|
||
const gigachat_1 = require("gigachat");
|
||
const node_https_1 = require("node:https");
|
||
const httpsAgent = new node_https_1.Agent({
|
||
rejectUnauthorized: false,
|
||
});
|
||
exports.llm = new gigachat_1.GigaChat({
|
||
credentials: process.env.GIGA_AUTH,
|
||
model: 'GigaChat-2',
|
||
httpsAgent,
|
||
});
|
||
const generatePicture = async (prompt) => {
|
||
const resp = await exports.llm.chat({
|
||
messages: [
|
||
{
|
||
"role": "system",
|
||
"content": "Ты — Василий Кандинский для жильцов многоквартирного дома"
|
||
},
|
||
{
|
||
role: "user",
|
||
content: `Старайся передать атмосферу уюта и безопасности.
|
||
Нарисуй картинку подходящую для такого события: ${prompt}
|
||
В картинке не должно быть текста, только изображение.`,
|
||
},
|
||
],
|
||
function_call: 'auto',
|
||
});
|
||
// Получение изображения по идентификатору
|
||
const detectedImage = (0, gigachat_1.detectImage)(resp.choices[0]?.message.content ?? '');
|
||
const image = await exports.llm.getImage(detectedImage?.uuid ?? '');
|
||
// Возвращаем содержимое изображения
|
||
return image.content;
|
||
};
|
||
exports.generatePicture = generatePicture;
|