Перейти к основному содержимому

Получить ответ в контексте

Получает очередной ответ от модели в соответствии с историей сообщений

Функция ПолучитьОтветВКонтексте(Знач URL, Знач Модель, Знач Сообщения, Знач ДопПараметры = "", Знач ДопЗаголовки = "") Экспорт

ПараметрCLI опцияТипОбяз.Назначение
URL--urlСтрокаURL сервера Ollama
Модель--modelСтрокаИмя модели
Сообщения--msgsМассив Из СтруктураИстория сообщений. См. ПолучитьСтруктуруСообщенияКонтекста
ДопПараметры--optionsСтруктура Из КлючИЗначениеДоп. параметры. См. ПолучитьСтруктуруПараметровЗапроса
ДопЗаголовки--headersСоответствие Из КлючИЗначениеДоп заголовки запроса, если необходимо

Возвращаемое значение: Соответствие Из КлючИЗначение - Результат обработки


подсказка

Метод в документации API: Generate a chat completion


Пример использования для 1С:Предприятие/OneScript
    URL   = "https://api.athenaeum.digital/ollama";
Токен = "10KO-82..."; // Авторизация - не часть API Ollama

ДопЗаголовки = Новый Соответствие;
ДопЗаголовки.Вставить("Authorization", СтрШаблон("Bearer %1", Токен));

Модель = "tinyllama";

МассивСообщений = Новый Массив;

Вопрос1 = OPI_Ollama.ПолучитьСтруктуруСообщенияКонтекста("user", "What is 1C:Enterprise?");
Вопрос2 = OPI_Ollama.ПолучитьСтруктуруСообщенияКонтекста("user", "When the first version was released?"); // Вопрос без конкретики

// Добавляем первый вопрос в контекст
МассивСообщений.Добавить(Вопрос1);

Ответ1 = OPI_Ollama.ПолучитьОтветВКонтексте(URL, Модель, МассивСообщений, , ДопЗаголовки);

МассивСообщений.Добавить(Ответ1["message"]); // Добавляем ответ на первый вопрос в контекст
МассивСообщений.Добавить(Вопрос2); // Добавляем второй вопрос в контекст

Ответ2 = OPI_Ollama.ПолучитьОтветВКонтексте(URL, Модель, МассивСообщений, , ДопЗаголовки);

МассивСообщений.Добавить(Ответ2["message"]);

// ...
    # JSON данные также могут быть переданы как путь к файлу .json

oint ollama ПолучитьОтветВКонтексте \
--url "https://api.athenaeum.digital/ollama" \
--model "tinyllama" \
--msgs "[{'role':'user','content':'What is 1C:Enterprise?'},{'role':'assistant','content':'1C:Enterprise is an ERP (enterprise resource planning) software developed by Czech-based company 1C that offers customizable and scalable solutions for manufacturing, distribution, and retail industries. It provides features such as sales, inventory management, production planning, order fulfillment, supply chain optimization, customer relationship management, financial accounting, and reporting. 1C:Enterprise is available on various platforms and supports languages like English, Spanish, German, Chinese (Simplified/Traditional), and Japanese.'},{'role':'user','content':'When the first version was released?'}]" \
--headers "{'Authorization':'***'}"
Результат
{
"model": "tinyllama",
"created_at": "2025-04-14T20:16:54.5071968Z",
"message": {
"role": "assistant",
"content": "The first version of 1C:Enterprise was released in 2001. However, the latest version (version 21) was released in 2021. The company has continued to make minor updates and upgrades to the software over time, including bug fixes and improvements."
},
"done_reason": "stop",
"done": true,
"total_duration": 21319004300,
"load_duration": 16999000,
"prompt_eval_count": 172,
"prompt_eval_duration": 11457001500,
"eval_count": 64,
"eval_duration": 9843003800
}