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

Использование LLM из Caila

Токен доступа к Caila

Для использования сервисов и генеративных моделей из Caila в сторонних приложениях, в том числе JAICP, нужен персональный токен доступа. Чтобы выпустить токен:

  1. Перейдите в Caila.

    подсказка

    Caila и Conversational Cloud использует общую базу аккаунтов, поэтому если вы зарегистрированы в Conversational Cloud, дополнительно регистрироваться в Caila не нужно.

  2. Перейдите на страницу Мое пространствоAPI-токены.

  3. В правом верхнем углу нажмите Создать токен.

  4. Придумайте имя токена, сгенерируйте его и скопируйте в буфер обмена.

При разработке вашего бота укажите скопированный токен в сценарии.

Отправка запроса к модели

Запрос к модели LLM отправляется методом POST /api/mlpgate/account/{account}/model/{model}/predict.

В качестве параметров используются:

  • account — идентификатор аккаунта владельца сервиса из URL сервиса;
  • model — идентификатор или название сервиса из URL сервиса.

В заголовке запроса передается токен доступа к Caila — MLP-API-KEY.

Пример функции

В качестве примера рассмотрим функцию smartLimit, которая отправляет запрос к сервису openai-proxy на получение краткого содержания и возвращает ответ.

  • Переменные account, model и token содержат идентификатор аккаунта-владельца сервиса, самого сервиса и токен доступа к Caila. Переменная prompt содержит инструкцию для модели (строки 2–5).

  • В переменной headers передаются заголовки запроса, в том числе токен доступа к Caila (строки 7–10).

  • В переменной body формируется тело HTTP-запроса в формате JSON. В примере используется модель gpt‑4o, а в сообщении предается промт к модели и текст запроса от пользователя, содержащийся в параметре $.request.query (строки 12–23).

    Остальные параметры запроса можно посмотреть в документации OpenAI.

  • Отправляется запрос POST /api/mlpgate/account/{account}/model/{model}/predict с заголовками и телом запроса (строка 25).

  • В ответе возвращается объект с ответом от модели (строка 27).

function smartLimit() {
var account = "just-ai";
var model = "openai-proxy";
var token = $secrets.get("mlpToken", "Токен не найден");
var prompt = "Highlight the main idea of the user’s request in one sentence. Your answer should be on behalf of the user. Answer in Russian language. Request:"

var headers = {
"MLP-API-KEY": token,
"Content-Type": "application/json"
};

var body = {
"chat": {
"model": "gpt-4o",
"messages": [
{
"role": "user",
"content": prompt + $.request.query
}
],
"temperature": 0.5
}
};

var res = $http.post("https://caila.io/api/mlpgate/account/" + account + "/model/" + model+ "/predict", { headers: headers, body: body });
if (!res.isOk || !res.data) throw new Error("Error calling Caila API");
return res;
}

Туториал: бот с обращением к языковым моделям

Мы подготовили туториал по созданию бота, использующего языковые модели для общения. В примере используется приложение Jay Copilot с доступом к ChatGPT и сервис, который размещается в Caila. Бот сможет поддерживать беседу на любые темы через Jay Copilot и предоставлять ее краткое содержание через Caila.