Skip to content

About

Извлечение структурированных знаний из внешних материалов через TasK API — навык для AI-агентов

Topics

Resources

Stars

1 star

Watchers

0 watching

Forks

Latest commit

 

History

87 Commits

Folders and files

Repository files navigation

Knowledge Extraction

Извлечение знаний из внешних материалов через TasK API

Зачем это нужно

Ваш агент может работать с источником любого (в рамках разумного) размера, не загружая его целиком в контекст. Задаёт вопросы, уточняет, ищет фрагменты — и получает ответы с опорой на источник.

Поддерживает статьи, YouTube-видео, видео- и аудиофайлы (Whisper-транскрибация), документы (PDF, DJVU, HTML).

Зависимости

Требует bash, curl, jq, GNU realpath и доступ к TasK API (документация). Для получения доступа — напишите команде.

Установка

Skill совместим с различными AI-агентами. Примеры ниже даны для pi — для других инструментов смотрите их документацию по установке skills.

git clone https://github.com/prikotov/knowledge-extraction.git .agents/skills/knowledge-extraction

После установки создайте в корне проекта файл .task_token.json:

{
  "access_token": "ваш-токен-доступа"
}

Разместите .task_token.json в рабочем проекте, из которого запускаете Skill. Скрипты используют текущий каталог ($PWD) как начальную точку и ищут токен в нём и родительских каталогах. Для явного выбора каталога можно задать KNOWLEDGE_EXTRACTION_WORKSPACE=/path/to/project.

Необязательный .task_config.json — конфигурация Skill. Сейчас он поддерживает переопределение адреса API:

{
  "api_url": "https://api.ai-aid.pro/v1"
}

Как работает

Skill использует методы TasK API:

  • Загрузка по URL — индексирует материал: статью, видео, документ.
  • Диалог через Chat API — вопросы и ответы с опорой на источник, цепочка уточнений.
  • Поиск по чанкам — находит фрагменты, близкие по смыслу к запросу.

Пользователь просит разобрать материал:

Разбери https://habr.com/ru/articles/1061876/

Агент загружает материал и начинает диалог с вопроса «О чём этот материал?». Дальше — цепочка уточнений:

Агент: — О чём этот материал?
TasK: — Локус контроля: 4 убеждения, которые тихо хоронят ваши амбиции. О склонности приписывать ответственность внешним обстоятельствам или собственным действиям.

Агент: — Какие убеждения разбирает автор? Приведи формулировки.
TasK: — Внешний локус контроля: вера в судьбу, удачу, других людей. Внутренний локус — способность брать ответственность за результат.

Агент: — Что автор предлагает для смены локуса?
TasK: — Сместить фокус с личности на действия, провести дебрифинг ошибок, вырабатывать стратегии на будущее.

Ответ агента пользователю:

Автор разбирает, как локус контроля влияет на амбиции: внешний локус (виню обстоятельства) хоронит их, внутренний (беру ответственность) — растит. Советует сместить фокус с личности на действия и проводить дебрифинг ошибок. Источник

Если диалог не дал нужного фрагмента — агент ищет по чанкам:

Что автор говорит про локус контроля?

Агент: — Найди фрагменты про теорию локуса контроля Роттера.
TasK: — Чанк #3: Джулиан Роттер в 1954 году предложил теорию локуса контроля… Чанк #7: люди с внутренним локусом контроля убеждены, что управляют своей жизнью…

Ответ агента пользователю:

Автор ссылается на теорию Роттера (1954) и выделяет два типа: внутренний локус — «я управляю своей жизнью», внешний — «всё решают обстоятельства».

Полученные факты и цитаты агент оформляет под задачу: саммари, дайджест-карточка, research-заметка.

Обработка YouTube-видео может занимать десятки минут — материал загружается асинхронно, статус можно проверить не дожидаясь готовности.

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

Через агента

После установки skill агент автоматически узнаёт о нём. Примеры запросов:

Разбери https://habr.com/ru/articles/1061876/
Что автор говорит про локус контроля? Найди в https://habr.com/ru/articles/1061876/

Напрямую через скрипты

Команды выполняются из корня рабочего проекта. После установки, показанной выше, путь к скриптам будет .agents/skills/knowledge-extraction/scripts/:

# Загрузить материал
.agents/skills/knowledge-extraction/scripts/ingest.sh --source-url https://habr.com/ru/articles/1061876/

# Загрузить локальный файл (PDF, видео, аудио и т. п.)
.agents/skills/knowledge-extraction/scripts/ingest.sh --source-file "/path/to/video.mp4"

# Начать диалог
.agents/skills/knowledge-extraction/scripts/chat.sh --source-url https://habr.com/ru/articles/1061876/

# Продолжить диалог
.agents/skills/knowledge-extraction/scripts/chat.sh --chat <UUID> --question "Какие убеждения разбирает автор?"

# Поиск по чанкам
.agents/skills/knowledge-extraction/scripts/search.sh --source-url https://habr.com/ru/articles/1061876/ --query "локус контроля"

# Отдельный проект под конкретный ресёрч (чтобы не смешивать источники)
.agents/skills/knowledge-extraction/scripts/ingest.sh --project-name sdd-research --source-url ...
.agents/skills/knowledge-extraction/scripts/chat.sh --project-name sdd-research

# Проверить статус обработки
.agents/skills/knowledge-extraction/scripts/ingest.sh --check

# Сохранить результат ресёрча обратно в проект (компиляция — stdin)
printf '%s' "## Выводы\n- …" | .agents/skills/knowledge-extraction/scripts/ingest.sh --project-name sdd-research --source-text --title "Выводы: SDD"

# При ошибке API chat.sh завершится с ошибкой и напечатает, например:
# HTTP 422: Need to top up balance.

Безопасность

⚠️ .task_token.json — добавить в .gitignore, никогда не коммитить. Не просить агента прописывать или читать этот файл.

Сами скрипты не содержат секретов: токен читается из .task_token.json.

Лицензия

MIT

About

Извлечение структурированных знаний из внешних материалов через TasK API — навык для AI-агентов

Topics

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages