Работа с проектами

Проекты в JARV позволяют объединять различные материалы (файлы, ссылки, базы знаний, чаты) и автоматически использовать их контекст при API запросах. Это мощный инструмент для создания специализированных ИИ-ассистентов с доступом к вашим данным.

💡 Ключевое преимущество: При указании project_id в запросе, API автоматически загружает и обрабатывает все материалы проекта, делая их доступными для модели без необходимости передавать их вручную.

Получение ID проекта

Чтобы использовать проект в API запросах, вам понадобится его уникальный идентификатор:

  1. Откройте chat.jarv.tech
  2. Перейдите в раздел "Проекты" в боковой панели
  3. Нажмите на шестеренку рядом с нужным проектом
  4. Перейдите на вкладку "API запросы"
  5. Скопируйте Project ID

Пример ID проекта:

b7d2f954-4823-47c7-a6be-4449abd9884e

Что доступно через проекты

📁
Файлы
PDF, Word, Excel, текстовые документы, изображения и другие файлы автоматически обрабатываются и добавляются в контекст
🔗
Веб-ссылки
Контент с веб-страниц, Google Docs, YouTube видео парсится и становится доступным модели
🧠
База знаний
RAG-поиск по векторной базе данных для нахождения релевантной информации
💬
История чатов
Прикрепленные чаты JARV с их полной историей сообщений
📱
Telegram чаты
Интеграция с Telegram для доступа к истории переписок
🔌
API интеграции
Webhook и внешние API для динамического получения данных

Базовый запрос с проектом

Добавьте параметр project_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": "gpt-4.1-mini",
  "user_id": "YOUR_USER_ID",
  "project_id": "b7d2f954-4823-47c7-a6be-4449abd9884e"
}'
Показать пример ответа
{
  "response": {
    "text": "В проекте содержатся следующие материалы:\n\n📁 **Файлы (5)**:\n- Презентация_Q4_2024.pdf - квартальный отчет компании\n- Техническое_задание.docx - требования к новому продукту\n- Данные_продаж.xlsx - статистика за последний год\n- Логотип.png - брендбук компании\n- Инструкция.md - документация по API\n\n🔗 **Ссылки (3)**:\n- Статья о рынке SaaS в 2024\n- YouTube видео с презентацией продукта\n- Google Doc с планом развития\n\n🧠 **База знаний**: 127 документов о продуктах компании\n\n💬 **Прикрепленные чаты**: 2 диалога с обсуждением стратегии"
  },
  "usage": { /* ... */ },
  "cost": { /* ... */ }
}

Анализ документов проекта

API автоматически извлекает текст из всех документов проекта. Вы можете задавать вопросы по их содержимому:

curl -X POST "https://chat.jarv.tech/api/v1/chat" \
-H "Content-Type: application/json" \
-H "api-key: YOUR_API_KEY" \
-d '{
  "prompt": "Какие основные KPI были достигнуты в Q4 согласно презентации? Сделай краткую выжимку",
  "model": "claude-3.5-sonnet",
  "user_id": "YOUR_USER_ID",
  "project_id": "b7d2f954-4823-47c7-a6be-4449abd9884e",
  "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",
  "user_id": "YOUR_USER_ID",
  "project_id": "b7d2f954-4823-47c7-a6be-4449abd9884e"
}'
📸 Автоматическая обработка: API автоматически определяет изображения среди файлов проекта и передает их моделям с поддержкой зрения (GPT-4V, Claude 3, Gemini Pro Vision).

Использование базы знаний с RAG

Если к проекту подключена база знаний, API использует семантический поиск для нахождения релевантной информации:

curl -X POST "https://chat.jarv.tech/api/v1/chat" \
-H "Content-Type: application/json" \
-H "api-key: YOUR_API_KEY" \
-d '{
  "prompt": "Как настроить аутентификацию OAuth 2.0 в нашем продукте?",
  "model": "claude-3.7-sonnet",
  "user_id": "YOUR_USER_ID",
  "project_id": "b7d2f954-4823-47c7-a6be-4449abd9884e"
}'

API автоматически:

Комбинированный запрос

Используйте проект вместе с базой знаний и дополнительными файлами для максимальной гибкости:

curl -X POST "https://chat.jarv.tech/api/v1/chat" \
-H "Content-Type: application/json" \
-H "api-key: YOUR_API_KEY" \
-d '{
  "prompt": "Сравни новые данные с материалами проекта и дай рекомендации",
  "model": "gemini-2.5-pro",
  "user_id": "YOUR_USER_ID",
  "project_id": "b7d2f954-4823-47c7-a6be-4449abd9884e",
  "knowledge_base_id": "kb-12345",
  "file_urls": [
    "https://example.com/new-report-2025.pdf"
  ],
  "system_prompt": "Ты консультант по стратегии. Сравнивай данные и выявляй расхождения.",
  "messages": [
    {
      "role": "user",
      "content": "Фокус на финансовых показателях"
    },
    {
      "role": "assistant", 
      "content": "Понял, буду анализировать финансовые метрики"
    }
  ]
}'

Оптимизация для разных моделей

API автоматически оптимизирует обработку контекста в зависимости от модели:

Модели с полным контекстом (без RAG)

Для этих моделей весь контент документов передается целиком:

  • big_docs_mode - для работы с большими документами
  • code_mode - для анализа кода
  • gemini_2_5 - Gemini 2.5 с расширенным контекстом
  • data_analysis_mode - для анализа данных

Модели с RAG (семантический поиск)

Для остальных моделей используется интеллектуальный поиск релевантных фрагментов:

  • Threshold similarity: 0.3 для файлов проекта
  • Threshold similarity: 0.1 для базы знаний
  • Top-K: 15-30 фрагментов
  • Reranking для улучшения точности

Использование истории чатов

Прикрепленные к проекту чаты автоматически добавляются в контекст:

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",
  "project_id": "b7d2f954-4823-47c7-a6be-4449abd9884e"
}'

Практические сценарии

1. Создание отчета на основе данных проекта

curl -X POST "https://chat.jarv.tech/api/v1/chat" \
-H "Content-Type: application/json" \
-H "api-key: YOUR_API_KEY" \
-d '{
  "prompt": "Создай executive summary на основе всех материалов проекта. Включи: 1) Ключевые достижения 2) Проблемные зоны 3) Рекомендации",
  "model": "gpt-5",
  "user_id": "YOUR_USER_ID",
  "project_id": "b7d2f954-4823-47c7-a6be-4449abd9884e",
  "response_format_json": true
}'

2. Техподдержка с базой знаний

curl -X POST "https://chat.jarv.tech/api/v1/chat" \
-H "Content-Type: application/json" \
-H "api-key: YOUR_API_KEY" \
-d '{
  "prompt": "У клиента ошибка 'Connection timeout'. Какие шаги для решения?",
  "model": "claude-3-haiku",
  "user_id": "YOUR_USER_ID",
  "project_id": "support-knowledge-base-project",
  "system_prompt": "Ты специалист техподдержки. Давай пошаговые инструкции."
}'

3. Анализ конкурентов

curl -X POST "https://chat.jarv.tech/api/v1/chat" \
-H "Content-Type: application/json" \
-H "api-key: YOUR_API_KEY" \
-d '{
  "prompt": "Сравни наш продукт с конкурентами на основе собранных материалов. Создай SWOT-анализ.",
  "model": "gemini-2.5-flash",
  "user_id": "YOUR_USER_ID",
  "project_id": "competitive-analysis-2025"
}'

Лимиты и рекомендации

⚠️ Важные ограничения

  • Размер файлов: PDF до 10 MB, изображения до 10 MB
  • Количество файлов: До 10 PDF и 20 изображений на запрос
  • База знаний: До 100 документов и 100 ссылок
  • Контекст: Учитывайте лимиты токенов выбранной модели

💡 Рекомендации по оптимизации

  • Структурируйте проекты: Создавайте отдельные проекты для разных задач
  • Используйте базы знаний: Для больших объемов документации
  • Выбирайте правильную модель: Claude и GPT-4 для анализа, Gemini для больших контекстов
  • Кешируйте результаты: Сохраняйте ответы для повторного использования
  • Тестируйте промпты: Начните с простых запросов, затем усложняйте

Отладка и мониторинг

В ответе API содержится информация о том, какие материалы были использованы:

{
  "response": { /* ... */ },
  "usage": {
    "prompt_tokens": 15234,  // Включая контекст проекта
    "completion_tokens": 567,
    "total_tokens": 15801
  }
}

Это поможет понять, какой объем данных был обработан и оптимизировать запросы.