From 78b72b0edcdeb89099600eb22d5c90975df86a30 Mon Sep 17 00:00:00 2001 From: RustamRu Date: Fri, 14 Mar 2025 08:34:16 +0300 Subject: [PATCH] feat: add GigaChat model retrieval for enhanced image analysis --- server/routers/dry-wash/get-token.js | 9 ++++++++- server/routers/dry-wash/order.js | 6 ++++-- 2 files changed, 12 insertions(+), 3 deletions(-) diff --git a/server/routers/dry-wash/get-token.js b/server/routers/dry-wash/get-token.js index 77e83e0..a22c3f8 100644 --- a/server/routers/dry-wash/get-token.js +++ b/server/routers/dry-wash/get-token.js @@ -10,7 +10,14 @@ const getSystemPrompt = async () => { return data.features['dry-wash-bh'].SYSTEM_PROMPT.value } +const getGigaChatModel = async () => { + const response = await fetch('https://admin.bro-js.ru/api/config/v1/dev') + const data = await response.json() + return data.features['dry-wash-bh'].GIGA_CHAT_MODEL.value +} + module.exports = { getGigaToken, - getSystemPrompt + getSystemPrompt, + getGigaChatModel } \ No newline at end of file diff --git a/server/routers/dry-wash/order.js b/server/routers/dry-wash/order.js index 31db6f0..04ce79a 100644 --- a/server/routers/dry-wash/order.js +++ b/server/routers/dry-wash/order.js @@ -5,7 +5,7 @@ const { MasterModel } = require('./model/master') const { OrderModel } = require('./model/order') const { OrderCarImgModel } = require('./model/order.car-img') const { orderStatus } = require('./model/const') -const { getGigaToken, getSystemPrompt } = require('./get-token') +const { getGigaToken, getSystemPrompt, getGigaChatModel } = require('./get-token') const isValidPhoneNumber = (value) => /^(\+)?\d{9,15}/.test(value) const isValidCarNumber = (value) => /^[авекмнорстух][0-9]{3}[авекмнорстух]{2}[0-9]{2,3}$/i.test(value) @@ -351,7 +351,7 @@ const analyzeImage = async (fileId, token) => { Authorization: `Bearer ${token}`, }, body: JSON.stringify({ - model: "GigaChat-Max", + model: (await getGigaChatModel()) ?? "GigaChat-Max", stream: false, update_interval: 0, messages: [ @@ -369,6 +369,8 @@ const analyzeImage = async (fileId, token) => { }) const data = await response.json() + console.log(data) + try { return JSON.parse(data.choices[0].message.content) } catch (error) {