1
0
mirror of https://github.com/Bayselonarrend/OpenIntegrations.git synced 2025-08-24 19:49:22 +02:00

Доработка тестов

This commit is contained in:
Anton Titovets
2025-04-10 21:29:26 +03:00
parent 9478f7bdc9
commit 55838457e3
3 changed files with 73 additions and 4 deletions

View File

@@ -139,7 +139,7 @@
СтруктураПолей.Вставить("images" , "<список картинок в формате Base64 (для многомодальных моделей, вроде llava)>");
Если Пустая Тогда
СтруктураНастроек = OPI_Инструменты.ОчиститьКоллекциюРекурсивно(СтруктураНастроек);
СтруктураПолей = OPI_Инструменты.ОчиститьКоллекциюРекурсивно(СтруктураПолей);
КонецЕсли;
//@skip-check constructor-function-return-section
@@ -166,7 +166,7 @@
СтруктураПолей.Вставить("tools" , "<список инструментов в формате JSON (для моделей, которые это поддерживают)>");
Если Пустая Тогда
СтруктураНастроек = OPI_Инструменты.ОчиститьКоллекциюРекурсивно(СтруктураНастроек);
СтруктураПолей = OPI_Инструменты.ОчиститьКоллекциюРекурсивно(СтруктураПолей);
КонецЕсли;
//@skip-check constructor-function-return-section
@@ -193,7 +193,7 @@
СтруктураПолей.Вставить("tool_calls", "<список инструментов в формате JSON, которые модель должна использовать>");
Если Пустая Тогда
СтруктураНастроек = OPI_Инструменты.ОчиститьКоллекциюРекурсивно(СтруктураНастроек);
СтруктураПолей = OPI_Инструменты.ОчиститьКоллекциюРекурсивно(СтруктураПолей);
КонецЕсли;
//@skip-check constructor-function-return-section

View File

@@ -2129,6 +2129,12 @@
КонецПроцедуры
Процедура Проверка_Неравенство(Знач Значение1, Знач Значение2) Экспорт
ОжидаетЧто(Значение1 = Значение2).Равно(Ложь);
КонецПроцедуры
Процедура Проверка_SQLiteУспех(Знач Результат) Экспорт
ОжидаетЧто(Результат["result"]).Равно(Истина);

View File

@@ -20489,10 +20489,38 @@
ДопЗаголовки.Вставить("Authorization", СтрШаблон("Bearer %1", Токен));
Результат = OPI_Ollama.ПолучитьОтвет(URL, Модель, Промпт, , ДопЗаголовки);
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ПолучитьОтвет", "Ollama"); // SKIP
OPI_ПолучениеДанныхТестов.Проверка_OllamaОтвет(Результат); // SKIP
// С параметрами
Промпт = "Ollama is 22 years old and is busy saving the world. Respond using JSON";
Формат = OPI_Инструменты.JSONВСтруктуру("
|{
|""type"": ""object"",
|""properties"": {
| ""age"": {
| ""type"": ""integer""
| },
| ""available"": {
| ""type"": ""boolean""
| }
|},
|""required"": [
| ""age"",
| ""available""
|]
|}");
ДопПараметры = Новый Структура("format", Формат);
Результат = OPI_Ollama.ПолучитьОтвет(URL, Модель, Промпт, ДопПараметры, ДопЗаголовки);
// END
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ПолучитьОтвет", "Ollama");
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ПолучитьОтвет (параметры)", "Ollama");
OPI_ПолучениеДанныхТестов.Проверка_OllamaОтвет(Результат);
КонецПроцедуры
@@ -20534,7 +20562,42 @@
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Ответ2, "ПолучитьОтветВКонтексте", "Ollama");
OPI_ПолучениеДанныхТестов.Проверка_OllamaСообщение(Ответ2);
МассивСообщений = Новый Массив;
Вопрос = Новый Структура("role,content", "user", "Hello!");
МассивСообщений.Добавить(Вопрос);
Опции = Новый Структура("seed,temperature", 101, 0);
ДопПараметры = Новый Структура("options", Опции);
Результат = OPI_Ollama.ПолучитьОтветВКонтексте(URL, Модель, МассивСообщений, ДопПараметры, ДопЗаголовки);
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ПолучитьОтветВКонтексте (сид, 1)", "Ollama");
OPI_ПолучениеДанныхТестов.Проверка_OllamaСообщение(Результат);
Сообщение1 = Результат["message"]["content"];
Результат = OPI_Ollama.ПолучитьОтветВКонтексте(URL, Модель, МассивСообщений, ДопПараметры, ДопЗаголовки);
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ПолучитьОтветВКонтексте (сид, 2)", "Ollama");
OPI_ПолучениеДанныхТестов.Проверка_OllamaСообщение(Результат);
Сообщение2 = Результат["message"]["content"];
Опции = Новый Структура("seed,temperature", 555, 10);
ДопПараметры = Новый Структура("options", Опции);
Результат = OPI_Ollama.ПолучитьОтветВКонтексте(URL, Модель, МассивСообщений, ДопПараметры, ДопЗаголовки);
OPI_ПолучениеДанныхТестов.ЗаписатьЛог(Результат, "ПолучитьОтветВКонтексте (сид, 3)", "Ollama");
OPI_ПолучениеДанныхТестов.Проверка_OllamaСообщение(Результат);
Сообщение3 = Результат["message"]["content"];
OPI_ПолучениеДанныхТестов.Проверка_Равенство(Сообщение1, Сообщение2);
OPI_ПолучениеДанныхТестов.Проверка_Неравенство(Сообщение1, Сообщение3);
КонецПроцедуры
Процедура Ollama_ЗагрузитьМодельВПамять(ПараметрыФункции)