Холодний старт
Імпорт контрактів
Масовий імпорт контрактів і документів у базу знань.
Використання
npx tsx scripts/import-contracts.ts
Що робить
- Сканує каталог з файлами контрактів (PDF, DOCX, TXT)
- Створює базу знань, якщо її ще нема
- Завантажує кожен файл разом із метаданими
- Ставить ingestion-джоби у чергу для обробки
Воркфлоу
Скрипт — частина pipeline холодного старту:
import-contracts.ts → [ingestion pipeline processes files] → knowledge base ready
Після запуску відстежуйте статус документів через:
GET /api/v1/knowledge/documents?status=processing
Аналіз чатів
Аналізуйте chat-export файли, щоб витягнути intent-патерни для засіду класифікатора намірів.
Використання
npx tsx scripts/analyze-chats.ts
Що робить
- Парсить chat-exports WhatsApp або Telegram
- Кластеризує подібні повідомлення за змістом
- Виявляє повторювані патерни запитань
- Створює таксономію намірів
- Віддає JSON у форматі, придатному для
seed-intents.ts
Воркфлоу
Скрипт — перший крок pipeline холодного старту:
analyze-chats.ts → [produces intent JSON] → seed-intents.ts → intent examples ready
Вихід
Результат аналізу містить записи намірів із:
intentName— виявлений ідентифікатор наміруphrases— приклади фраз для наміруcount— частота в історії чатів
Seed intents
Масово засідіть приклади намірів із готового результату аналізу.
Використання
npx tsx scripts/seed-intents.ts --input ./analysis.json --namespace legal
Аргументи
| Прапорець | Обовʼязковий | Опис |
|---|---|---|
--input | так | Шлях до JSON-файлу з intent-записами |
--namespace | так | Імʼя цільового простору імен |
Формат вхідних даних
[
{
"intentName": "leave_policy",
"phrases": ["How many vacation days do I have?", "What is the leave policy?"]
}
]
Що робить
- Читає JSON-файл з intent-записами
- Дедуплікує по
(intentName, phrase)— пропускає вже існуючі приклади - Генерує ембединги для кожної фрази (batch size 32)
- Апсертить записи
IntentExampleразом із вкладеними векторами - Показує прогрес-бар під час обробки
Воркфлоу
Це другий крок pipeline холодного старту:
analyze-chats.ts → [produces intent JSON] → seed-intents.ts → intent classification ready
Після засіду класифікатор намірів використовує ці приклади для векторної класифікації вхідних повідомлень.