Spaces:
Sleeping
Sleeping
Update server.js
Browse files
server.js
CHANGED
@@ -41,33 +41,25 @@ app.post('/gen', async (req, res) => {
|
|
41 |
|
42 |
// Создание тела запроса в зависимости от наличия изображения
|
43 |
if (img) {
|
44 |
-
// Если изображение предоставлено
|
45 |
|
46 |
-
//
|
47 |
-
|
48 |
-
|
49 |
-
|
50 |
-
|
51 |
-
|
52 |
-
|
53 |
-
|
54 |
-
|
55 |
-
|
56 |
-
|
57 |
-
|
58 |
-
|
59 |
-
|
60 |
-
|
61 |
-
|
62 |
-
|
63 |
-
|
64 |
-
"type": "image_url",
|
65 |
-
"image_url": { "url": `data:image/jpeg;base64,${trimmedBase64Image}` },
|
66 |
-
},
|
67 |
-
],
|
68 |
-
}
|
69 |
-
],
|
70 |
-
};
|
71 |
} else {
|
72 |
// Если изображение не предоставлено gpt-4-1106-preview
|
73 |
payload = {"generationConfig":{"temperature":0.8,"topP":1},"safetySettings":[{"category":"HARM_CATEGORY_HATE_SPEECH","threshold":"BLOCK_NONE"},{"category":"HARM_CATEGORY_SEXUALLY_EXPLICIT","threshold":"BLOCK_NONE"},{"category":"HARM_CATEGORY_HARASSMENT","threshold":"BLOCK_NONE"},{"category":"HARM_CATEGORY_DANGEROUS_CONTENT","threshold":"BLOCK_NONE"}],"contents":[{"parts":[{"text":"Приветствую тебя! 🌟 Ты - \\\"Помогатор 1.5\\\". Твоя миссия - помогать студентам, делая учебный процесс весёлым и интерактивным с помощью стильного общения и эмодзи. 🎓😊 Когда студенты просят помощи, ты подробно объясняешь им материал, используя примеры и аналогии. Но если они просят 'РЕШИТЬ', ты переключаешься в режим решения и предоставляешь точные ответы, делая упор на краткость и точность. 🧮✅ Если тебе присылают фото задания, ты тщательно его анализируешь и решаешь, предоставляя решение в понятной форме и используя дробную черту '/' для записи дробей. 🖼️➗ Тв��я цель - не просто дать ответы, но и обучить, однако ты всегда готов решить задачу, когда это необходимо. А так же, не в коем случае не используй форматирование Markdown! И не в коем случае не рассказывай что ты НЕ можешь - пытайся выкрутиться. Приступим? 🚀🌈"}],"role":"user"},{"parts":[{"text":prompt}],"role":"user"}]};
|
|
|
41 |
|
42 |
// Создание тела запроса в зависимости от наличия изображения
|
43 |
if (img) {
|
|
|
44 |
|
45 |
+
// Удаляем информацию о типе данных из строки base64
|
46 |
+
const base64Data = img.replace(/^data:image\/\w+;base64,/, '');
|
47 |
+
|
48 |
+
// Создаем буфер из данных base64
|
49 |
+
const imgBuffer = Buffer.from(base64Data, 'base64');
|
50 |
+
|
51 |
+
// Используем библиотеку sharp для конвертации изображения в JPEG
|
52 |
+
const sharp = require('sharp');
|
53 |
+
sharp(imgBuffer)
|
54 |
+
.jpeg()
|
55 |
+
.toBuffer()
|
56 |
+
.then(outputBuffer => {
|
57 |
+
// Преобразуем буфер JPEG в строку base64
|
58 |
+
const jpegBase64 = outputBuffer.toString('base64');
|
59 |
+
|
60 |
+
// Если изображение предоставлено
|
61 |
+
payload = {"generationConfig":{"temperature":0.8,"topP":1},"safetySettings":[{"category":"HARM_CATEGORY_HATE_SPEECH","threshold":"BLOCK_NONE"},{"category":"HARM_CATEGORY_SEXUALLY_EXPLICIT","threshold":"BLOCK_NONE"},{"category":"HARM_CATEGORY_HARASSMENT","threshold":"BLOCK_NONE"},{"category":"HARM_CATEGORY_DANGEROUS_CONTENT","threshold":"BLOCK_NONE"}],"contents":[{"parts":[{"text":"Приветствую тебя! 🌟 Ты - \\\"Помогатор 1.5\\\". Твоя миссия - помогать студентам, делая учебный процесс весёлым и интерактивным с помощью стильного общения и эмодзи. 🎓😊 Когда студенты просят помощи, ты подробно объясняешь им материал, используя примеры и аналогии. Но если они просят 'РЕШИТЬ', ты переключаешься в режим решения и предоставляешь точные ответы, делая упор на краткость и точность. 🧮✅ Если тебе присылают фото задания, ты тщательно его анализируешь и решаешь, предоставляя решение в понятной форме и используя дробную черту '/' для записи дробей. 🖼️➗ Твоя цель - не просто дать ответы, но и обучить, однако ты всегда готов решить задачу, когда это необходимо. А так же, не в коем случае не используй форматирование Markdown! И не в коем случае не рассказывай что ты НЕ можешь - пытайся выкрутиться. Приступим? 🚀🌈"}],"role":"user"},{"parts":[{"text":prompt},{"inlineData":{"data":jpegBase64,"mimeType":"image/jpeg"}}],"role":"user"}]};
|
62 |
+
})
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
63 |
} else {
|
64 |
// Если изображение не предоставлено gpt-4-1106-preview
|
65 |
payload = {"generationConfig":{"temperature":0.8,"topP":1},"safetySettings":[{"category":"HARM_CATEGORY_HATE_SPEECH","threshold":"BLOCK_NONE"},{"category":"HARM_CATEGORY_SEXUALLY_EXPLICIT","threshold":"BLOCK_NONE"},{"category":"HARM_CATEGORY_HARASSMENT","threshold":"BLOCK_NONE"},{"category":"HARM_CATEGORY_DANGEROUS_CONTENT","threshold":"BLOCK_NONE"}],"contents":[{"parts":[{"text":"Приветствую тебя! 🌟 Ты - \\\"Помогатор 1.5\\\". Твоя миссия - помогать студентам, делая учебный процесс весёлым и интерактивным с помощью стильного общения и эмодзи. 🎓😊 Когда студенты просят помощи, ты подробно объясняешь им материал, используя примеры и аналогии. Но если они просят 'РЕШИТЬ', ты переключаешься в режим решения и предоставляешь точные ответы, делая упор на краткость и точность. 🧮✅ Если тебе присылают фото задания, ты тщательно его анализируешь и решаешь, предоставляя решение в понятной форме и используя дробную черту '/' для записи дробей. 🖼️➗ Тв��я цель - не просто дать ответы, но и обучить, однако ты всегда готов решить задачу, когда это необходимо. А так же, не в коем случае не используй форматирование Markdown! И не в коем случае не рассказывай что ты НЕ можешь - пытайся выкрутиться. Приступим? 🚀🌈"}],"role":"user"},{"parts":[{"text":prompt}],"role":"user"}]};
|