Руководство по запросам

Этот раздел содержит практические примеры использования основного эндпоинта POST /api/v1/chat для решения различных задач.

Конечная точка (Endpoint):

POST https://chat.jarv.tech/api/v1/chat

Базовый запрос

Самый простой способ получить ответ. Необходимо передать prompt, model и ваш user_id.

curl -X POST "https://chat.jarv.tech/api/v1/chat" \
-H "Content-Type: application/json" \
-H "api-key: YOUR_API_KEY" \
-d '{
  "prompt": "Напиши три идеи для утреннего поста в блог о продуктивности.",
  "model": "claude-3-haiku",
  "user_id": "YOUR_USER_ID"
}'
Показать пример ответа
{
  "response": {
    "text": "Конечно, вот три идеи:\n1. **Техника \"Золотого часа\"**: Расскажите, как посвятить первый час после пробуждения самой важной задаче дня, без отвлечений на телефон и почту.\n2. **Магия микро-привычек**: Пост о том, как внедрение маленьких привычек (выпить стакан воды, 5 минут медитации) создает мощный накопительный эффект.\n3. **Цифровой детокс до завтрака**: Аргументы в пользу того, почему проверка соцсетей и новостей утром убивает фокус, и как с этим бороться."
  },
  "usage": { /* ...данные об использовании... */ },
  "cost": { /* ...данные о стоимости... */ }
}

Запрос с системной инструкцией

Используйте system_prompt для задания роли или контекста. Это значительно повышает качество генерации.

curl -X POST "https://chat.jarv.tech/api/v1/chat" \
-H "Content-Type: application/json" \
-H "api-key: YOUR_API_KEY" \
-d '{
  "prompt": "Предложи слоган для новой линейки органических шампуней.",
  "model": "gpt-4.1-mini",
  "user_id": "YOUR_USER_ID",
  "system_prompt": "Ты — опытный маркетолог из компании SYNERGETIC. Твои ответы должны быть креативными и запоминающимися."
}'
Показать пример ответа
{
  "response": {
    "text": "SYNERGETIC: Природа заботится. Мы — доверяем."
  },
  "usage": { /* ... */ }, "cost": { /* ... */ }
}

Анализ изображений

Для моделей со зрением (например, claude-3.5-sonnet) передавайте URL изображений в массиве file_urls.

curl -X POST "https://chat.jarv.tech/api/v1/chat" \
-H "Content-Type: application/json" \
-H "api-key: YOUR_API_KEY" \
-d '{
  "prompt": "Что изображено на этой картинке? Опиши объекты и общую атмосферу.",
  "model": "claude-3.5-sonnet",
  "user_id": "YOUR_USER_ID",
  "file_urls": [
    "https://storage.googleapis.com/jarvis-s/screenshots/image.jpg"
  ]
}'
Показать пример ответа
{
  "response": {
    "text": "На изображении показан современный рабочий стол. На нем расположены: ноутбук с открытым кодом, чашка кофе, блокнот с ручкой и небольшое растение в горшке. Атмосфера продуктивная и спокойная, освещение мягкое."
  },
  "usage": { /* ... */ }, "cost": { /* ... */ }
}

Получение ответа в формате JSON

Используйте response_format_json: true, чтобы получить структурированный ответ для легкого парсинга.

curl -X POST "https://chat.jarv.tech/api/v1/chat" \
-H "Content-Type: application/json" \
-H "api-key: YOUR_API_KEY" \
-d '{
  "prompt": "Извлеки из текста \\"Анна купила 5 яблок по 20 рублей каждое\\" имя покупателя, товар, количество и цену за единицу.",
  "model": "claude-3-opus",
  "user_id": "YOUR_USER_ID",
  "response_format_json": true
}'
Показать пример ответа
{
  "response": {
    "text": "{\n  \"customer_name\": \"Анна\",\n  \"item\": \"яблоки\",\n  \"quantity\": 5,\n  \"price_per_item\": 20\n}"
  },
  "usage": { /* ... */ }, "cost": { /* ... */ }
}