Скиллы(навыки)
Научите свой ИИ решать задачи с помощью простых текстовых инструкций.
Навыки — это многократно используемые наборы инструкций на основе Markdown, которые вы прикрепляете к моделям или вызываете в чате. В отличие от инструментов (исполняемых скриптов на Python), навыки представляют собой текстовые инструкции: рекомендации по проверке кода, правила написания, руководства по устранению неполадок, рабочие процессы анализа данных. Модель считывает их и следует им.
Упомяните навык с помощью $ в чате, чтобы сразу отобразить его полный список. Или привяжите навыки к модели, чтобы они всегда были доступны и загружались по запросу, повышая эффективность работы контекстного окна.
Почему навыки?
Инструкции без кода
Пишите руководства в формате Markdown. Никакого Python, никаких вызовов API, никакого развертывания. Если вы можете написать документ, вы можете создать навык.
Загрузка контекста по запросу
Навыки, привязанные к модели, используют отложенную загрузку. По умолчанию внедряется только облегченный манифест (название + описание). Модель загружает полные инструкции только тогда, когда они ей нужны, с помощью инструмента view_skill .
Можно использовать в разных моделях
Создайте навык «Руководство по проверке кода» и прикрепите его к каждой модели написания кода. Обновите навык один раз, и все модели получат новую версию.
Можно комбинировать с другими инструментами
Объедините навык с Open Terminal или любым другим сервером инструментов. Навык учит модель как использовать инструмент (проверять коды завершения, обрабатывать ошибки, использовать потоковую передачу для длительных команд), а инструмент предоставляет возможность.
Ключевые особенности
| 📝 Содержимое Markdown | Напишите инструкции простым шрифтом Markdown |
| ⚡ $упоминание в чате | Введите $ для вставки полного описания навыка в текущее сообщение |
| 🤖 Привязка модели | Добавляйте навыки к моделям, чтобы они всегда были доступны |
| 📦 Отложенная загрузка | Навыки, привязанные к модели, внедряют только манифест; полный контент загружается по запросу |
| 📥 Импорт/экспорт | Импортируйте .md файлы с преамбулой YAML; экспортируйте в формате JSON |
| 🔒 Контроль доступа | По умолчанию закрытый доступ, возможность поделиться с пользователями или группами |
| 🔀 Переключатель «Активно/неактивно» | Отключение навыков без их удаления |
Как работают навыки
Навыки, выбранные пользователем ($ упомянуть)
Введите $ в поле ввода в чате, чтобы открыть список навыков. Выберите навык, и его полный текст будет добавлен в системное приглашение. Модель сразу получит доступ ко всем инструкциям.
Навыки, привязанные к модели
Навыки, привязанные к модели, используют отложенную загрузку:
- Внедрение манифеста — в системное приглашение добавляется только название и описание навыка.
- Загрузка по запросу — модель получает view_skill встроенный инструмент. Когда модель определяет, что ей нужны полные инструкции по навыку, она вызывает view_skill(skill_name) для их загрузки.
Это означает, что к модели можно добавить множество навыков, не занимая при этом место в контекстном окне до тех пор, пока они не понадобятся.
Создание навыка
Перейдите в Рабочее пространство> Навыки и нажмите + Новый навык.
| Поле | Описание |
|---|---|
| Имя | Удобочитаемое отображаемое имя (например, «Руководство по проверке кода») |
| Идентификатор навыка | Уникальный слаг, автоматически генерируемый на основе названия. Можно изменить при создании, после чего будет доступно только для чтения |
| Описание | Краткое описание, отображаемое в манифесте. Для навыков, связанных с моделью, модель использует это описание, чтобы решить, загружать ли полные инструкции. |
| Содержание | Полные инструкции по навыкам в Markdown |
Импорт из Markdown
Нажмите Импорт и выберите .md файл. Если файл содержит преамбулу YAML с полями name и/или description, эти значения будут заполнены автоматически:
--- name: code-review-guidelines description: Step-by-step instructions for thorough code reviews --- # Code Review Guidelines 1. Check for correctness...
Привязка навыков к Модели
- Перейдите в Рабочее пространство> Модели.
- Отредактируйте модель и перейдите к разделу Навыки.
- Отметьте навыки, к которым вы хотите, чтобы эта модель всегда имела доступ.
- Нажмите Сохранить.
Выбранные манифесты навыков внедряются автоматически, и модель может загружать полный контент по запросу через view_skill.
Управление навыками
В списке рабочих областей «Навыки» используйте меню с многоточием (...):
| Экшен | Описание |
|---|---|
| Редактировать | Изменение содержимого, названия или описания |
| Клонировать | Создайте копию, добавив -clone к идентификатору |
| Экспорт | Загрузить в формате JSON |
| Удалить | Удалить навсегда (Shift + клик для быстрого удаления) |
Массовый экспорт: нажмите кнопку Экспорт в верхней части страницы «Навыки», чтобы экспортировать все доступные навыки в виде одного файла JSON.
Переключение между активными и неактивными навыками: неактивные навыки не отображаются в манифестах и не могут быть загружены моделью, даже если они привязаны к ней или упомянуты в чате.
Контроль доступа
В навыках используется та же система контроля доступа, что и в других ресурсах рабочей области:
- По умолчанию скрыто: только создатель может видеть и редактировать новый навык.
- Поделиться с пользователями или группами: предоставьте read или write доступ с помощью кнопки Доступ.
- Доступ только для чтения: пользователи с доступом для чтения могут просматривать, но не редактировать. В редакторе отображается значок «Только для чтения».
Для прикрепленных навыков по-прежнему требуется доступ пользователя
Прикрепление навыка к модели не обходит контроль доступа. Когда пользователь общается с моделью, ФКТ ИИ проверяет, есть ли у него доступ для чтения по каждому прикрепленному навыку. Навыки, к которым у пользователя нет доступа, игнорируются.
Пример: администратор создает закрытый навык и прикрепляет его к общей модели. Обычные пользователи, общающиеся с этой моделью, не получат навык, поскольку у них нет прав на чтение.
Решение: убедитесь, что у пользователей, которым нужны навыки модели, есть доступ для чтения по каждому навыку (с помощью предоставления доступа, групповых разрешений или путем публикации навыка).
Необходимые разрешения
| Разрешение | Что он контролирует |
|---|---|
| Рабочее пространство > Доступ к навыкам | Войдите в рабочую область Skills и создайте навыки или измените их |
| Совместное использование> Обмен навыками | Делитесь навыками с отдельными пользователями или группами |
| Обмен информацией > Публичные навыки | Сделать навыки общедоступными |
Варианты использования
Стандарты проверки кода
Составьте для своей команды контрольный список для проверки навыков: соглашения об именовании, шаблоны обработки ошибок, требования к тестовому покрытию. Прикрепите его к своим моделям кодирования, чтобы все проверки проводились по одним и тем же критериям.
Руководство по стилю письма
Опишите тон, правила форматирования и терминологию, связанные с вашим навыком. Прикрепите его к моделям для написания контента. Каждый черновик будет соответствовать стилю вашего бренда.
Инструкции по устранению неполадок
Закодируйте свой сценарий действий на случай распространенных проблем: «сначала проверьте логи, убедитесь в правильности конфигурации, протестируйте подключение, обратитесь к вышестоящему руководству, если проблема не устранена». Модель выполняет те же действия по диагностике, что и ваши старшие инженеры.
Инструкции по использованию инструмента
Объедините навык с Open Terminal, чтобы научить модель как правильно его использовать. "Всегда проверяйте коды завершения. Используйте set -e в скриптах. Потоковый вывод для команд, выполнение которых занимает более 10 секунд."
Ограничения
Только обычный текст
Навыки — это инструкции, а не исполняемый код. Для действий, требующих вычислений, вызовов API или доступа к системе, используйте Инструменты.
Контекстное окно с упоминанием $
При внедрении через $ упоминание весь контент навыка отображается в системном запросе. Очень длинный навык, прикрепленный к модели с небольшим контекстным окном, может перекрывать историю диалога.
Отложенная загрузка требует вызова функции
Навыки, связанные с моделью, зависят от view_skill встроенного инструмента, для работы которого требуется вызов нативных функций. Без него модель получает только манифест и не может загрузить полные инструкции.