| Параметр | Минимум | Рекомендуемое |
|---|---|---|
| CPU | 4 ядра | 8 ядер |
| RAM | 8 GB | 16 GB |
| Диск | 50 GB SSD | 100 GB SSD |
| ОС | Linux (любой дистрибутив) | Ubuntu 22.04+ |
| Docker | 24.0+ | latest |
| Docker Compose | v2.20+ | latest |
Скачайте дистрибутив и распакуйте на сервере:
# Распаковать дистрибутив tar -xzf klar-latest.tar.gz cd klar # Настроить параметры cp .env.example .env nano .env # Запустить все сервисы docker compose up -d
| Параметр | Описание | По умолчанию |
|---|---|---|
LLM_URL | URL LLM API (DeepSeek, OpenAI-совместимый) | https://api.deepseek.com |
LLM_API_KEY | API-ключ LLM | — |
LLM_MODEL | Модель для генерации ответов | deepseek-chat |
ADMIN_PASSWORD | Пароль администратора | — |
DOCSEARCH_PORT | Порт веб-интерфейса | 8002 |
POSTGRES_PASSWORD | Пароль PostgreSQL | auto-generated |
| Контейнер | Назначение | Порт |
|---|---|---|
kb-app | Веб-приложение (FastAPI) | 8002 |
kb-db | PostgreSQL + pgvector | 5432 (внутренний) |
kb-embed | Сервер эмбеддингов (e5-large) | 9877 (внутренний) |
kb-nginx | Reverse proxy (HTTPS/SSL) | 443 |
Для работы без подключения к интернету добавьте контейнер с локальной LLM:
# В .env: LLM_URL=http://kb-llm:11434/v1/chat/completions LLM_MODEL=qwen3:14b # docker compose up добавит контейнер Ollama с моделью
https://your-server:8002 в браузереadmin и паролем из .envПри обновлении заменяется только код приложения внутри контейнеров. Все данные сохраняются:
| Что обновляется | Что сохраняется |
|---|---|
| Код приложения (Docker-образы) | База данных (Docker volume) |
| Модели и алгоритмы | Загруженные документы и эмбеддинги |
| Интерфейс | Пользователи, роли, настройки |
| Промпты, FAQ, чат-история | |
| Конфигурация (.env) |
Вариант 1: С доступом к интернету
# Остановить сервисы docker compose down # Загрузить новые образы docker compose pull # Запустить (данные на месте) docker compose up -d # Миграция БД (если требуется — указано в release notes) docker compose exec app python3 migrate.py
Вариант 2: Закрытый контур (без интернета)
# На машине с интернетом: сохранить образы в архив docker save kb-app kb-embed | gzip > klar-update.tar.gz # Перенести архив на сервер (USB, внутренняя сеть) # На сервере: загрузить образы и перезапустить docker load < klar-update.tar.gz docker compose down docker compose up -d
docker compose exec db pg_dump -U klar KnowledgeBase > backup.sqlKLAR принимает: PDF, DOCX, TXT, MD, HTML, CSV, JSON, XLSX, PPTX, XSD, XML.
FAQ-записи отвечают мгновенно, без обращения к LLM. Используйте для самых частых вопросов.
Если документ содержит структуру "## Вопрос?\nОтвет", система автоматически извлечёт пары вопрос/ответ при загрузке.
| Режим | Скорость | Качество | Когда использовать |
|---|---|---|---|
| Быстрый | 2-5 сек | Базовое | Простые вопросы, FAQ |
| Сбалансированный | 8-15 сек | Хорошее | По умолчанию |
| Качественный | 15-30 сек | Максимальное | Сложные вопросы, аналитика |
Режим "Персональный аналитик" предназначен для глубокой работы со знаниями: аналитика, мониторинг, экспертные оценки.
Настройте профили экспертов с уникальным стилем и подходом. Каждый эксперт отвечает на вопросы, комментирует идея-файлы и анализирует материалы через призму своей специализации.
Идея-файл — структурированное описание концепции, собранное из контекста диалога. ИИ анализирует ваши вопросы и ответы, выделяет ключевые идеи и формирует документ.
Автоматический поиск новостей по заданным направлениям. ИИ фильтрует результаты, учитывая ваши предпочтения (лайки/дизлайки).
Каждую ночь ИИ анализирует всю базу знаний и создаёт аналитический отчёт: паттерны, пробелы, противоречия, неочевидные связи между документами.
| Задача | Расписание | Описание |
|---|---|---|
| Линтер | 00:00 UTC | Очистка дубликатов, исправление эмбеддингов, обновление backlinks |
| Аналитик | 00:30 UTC | Генерация инсайтов для пространств с включённым мониторингом |
| Мониторинг | 05:30 UTC | Поиск новостей по заданным направлениям |
KLAR поддерживает Model Context Protocol — стандартный протокол для подключения AI-агентов (Claude Desktop, Claude Code, Cursor) к базе знаний.
pip install mcp httpx
# Через переменные окружения KLAR_API_URL=https://kb.zaltrix.org KLAR_API_KEY=sk-xxx python3 mcp_server.py # Или через аргументы python3 mcp_server.py --api-url https://kb.zaltrix.org --api-key sk-xxx
Добавьте в ~/.claude/claude_desktop_config.json:
{
"mcpServers": {
"klar": {
"command": "python3",
"args": ["/path/to/mcp_server.py"],
"env": {
"KLAR_API_URL": "https://kb.zaltrix.org",
"KLAR_API_KEY": "sk-ваш_ключ"
}
}
}
}
| Инструмент | Описание |
|---|---|
ask(query, session_id?) | Задать вопрос по базе знаний. session_id для продолжения диалога |
feedback(session_id, rating) | Оценить ответ (like/dislike) |
| Endpoint | Метод | Описание |
|---|---|---|
| /api/search | GET | Гибридный поиск (FTS + vector) с ответом LLM |
| /api/ask | POST | Вопрос-ответ (JSON: query) |
| /api/twin | POST | Вопрос эксперту (JSON: expert, query, context) |
| /api/upload-file | POST | Загрузка файла (multipart) |
| /api/ingest | POST | Загрузка текста (JSON: text, source, url) |
| /api/web-import | POST | Импорт с сайта (JSON: url) |
| /api/items | GET | Список документов/entity |
| /api/experts | GET/POST | Управление экспертами |
| /api/faq | GET/POST/DELETE | Быстрые ответы (FAQ) |
| /api/chat/sessions | GET/DELETE | Управление диалогами |
| /api/analytics | GET | Аналитика (запросы, ответы, feedback) |
| /api/monitoring/run | POST | Запуск мониторинга |
| /api/analyze | POST | Запуск анализа (инсайты) |
| /api/lint | POST | Запуск линтера |
| /api/export/idea-file | POST | Генерация идея-файла |
| /api/settings | GET/POST | Настройки системы |
| /api/prompts | GET/POST | Редактирование промптов |