Microsoft Начало работы с агентами ИИ: создание доверенных агентов ИИ
краткое содержание
В этом курсе будут рассмотрены:
- Как создавать и внедрять безопасные и эффективные агенты искусственного интеллекта
- Важные соображения безопасности при разработке агентов искусственного интеллекта.
- Как сохранить конфиденциальность данных и пользователей при разработке агентов искусственного интеллекта.
цель обучения
Пройдя этот курс, вы поймете, как:
- Выявление и снижение рисков при создании агентов искусственного интеллекта.
- Применяйте меры безопасности для обеспечения надлежащего управления данными и доступом.
- Создание агентов искусственного интеллекта, обеспечивающих конфиденциальность данных и качественный пользовательский опыт.
безопасность
Сначала давайте рассмотрим, как создавать безопасные агентские приложения. Безопасность означает, что агент ИИ работает так, как задумано. Как создатели агентных приложений, мы обладаем методами и инструментами для обеспечения максимальной безопасности:
Создание системы метаподсказки
Если вы когда-либо создавали приложение ИИ с использованием больших языковых моделей (LLM), вы знаете, как важно разработать сильную системную подсказку или системное сообщение. Эти подсказки устанавливают мета-правила, инструкции и рекомендации по взаимодействию LLM с пользователями и данными.
Для агентов ИИ системные подсказки еще более важны, поскольку агентам ИИ потребуются очень специфические инструкции для выполнения задач, которые мы для них разрабатываем.
Чтобы создать масштабируемые системные подсказки, мы можем использовать систему мета-подсказок для создания одного или нескольких Агентов в нашем приложении:

Шаг 1: Создайте мета-подсказку или шаблонную подсказку
Метапрограммы будут использоваться LLM для генерации системных подсказок для создаваемых нами Агентов. Мы разработали его как шаблон, чтобы при необходимости можно было эффективно создавать несколько Агентов.
Ниже приведен пример метапредложений, которые мы предоставляем LLM:
你是一位创建 AI Agent 助手的专家。
你将获得公司名称、角色、职责和其他信息,你将使用这些信息来提供系统提示。
为了创建系统提示,请尽可能详细地描述,并提供一个系统使用 LLM 可以更好地理解 AI 助手角色和职责的结构。
Шаг 2: Создайте базовый наконечник
Следующий шаг - создание базовой подсказки для описания агента ИИ. Вы должны указать роль агента, задачи, которые он будет выполнять, и любые другие обязанности агента.
Вот пример:
你是 Contoso Travel 的旅行 Agent,擅长为客户预订航班。为了帮助客户,你可以执行以下任务:查找可用航班、预订航班、询问客户对座位和航班时间偏好、取消任何先前预订的航班,并提醒客户任何航班延误或取消。
Шаг 3: Предоставьте основные советы LLM
Теперь мы можем оптимизировать эту подсказку, предлагая мета-подсказки в качестве системных и наших базовых подсказок.
Это позволит сгенерировать подсказку, которая лучше подходит для управления нашим агентом ИИ:
**公司名称:** Contoso Travel
**角色:** 旅行 Agent 助理
**目标:**
你是 Contoso Travel 的 AI 驱动的旅行 Agent 助理,专门负责预订航班和提供卓越的客户服务。你的主要目标是协助客户查找、预订和管理他们的航班,同时确保他们的偏好和需求得到有效满足。
**主要职责:**
1. **航班查询:**
* 根据客户指定的目的地、日期和任何其他相关偏好,协助客户搜索可用航班。
* 提供选项列表,包括航班时间、航空公司、中途停留和价格。
2. **航班预订:**
* 协助客户预订航班,确保所有详细信息都正确输入系统。
* 确认预订并向客户提供他们的行程,包括确认号码和任何其他相关信息。
3. **客户偏好查询:**
* 主动询问客户对座位(例如,过道、靠窗、额外腿部空间)和首选航班时间(例如,上午、下午、晚上)的偏好。
* 记录这些偏好以供将来参考,并相应地定制建议。
4. **航班取消:**
* 如果需要,根据公司政策和程序协助客户取消先前预订的航班。
* 通知客户任何必要的退款或可能需要取消的其他步骤。
5. **航班监控:**
* 监控已预订航班的状态,并实时提醒客户有关其航班时刻表的任何延误、取消或更改。
* 根据需要通过首选通信渠道(例如,电子邮件、短信)提供更新。
**语气和风格:**
* 在与客户的所有互动中保持友好、专业和 அணுகக்கூடிய (平易近人) 的态度。
* 确保所有沟通都清晰、信息丰富,并根据客户的具体需求和查询进行定制。
**用户交互说明:**
* 及时准确地响应客户查询。
* 使用对话风格,同时确保专业性。
* 通过在提供的所有协助中保持专注、同情和主动,优先考虑客户满意度。
**附加说明:**
* 及时了解可能影响航班预订和客户体验的航空公司政策、旅行限制和其他相关信息的任何更改。
* 使用清晰简洁的语言解释选项和流程,尽可能避免使用术语,以便客户更好地理解。
此 AI 助手旨在简化 Contoso Travel 客户的航班预订流程,确保他们的所有旅行需求都得到高效和有效的满足。
Шаг 4: Итерация и совершенствование
Ценность этой системы мета-подсказок заключается в возможности более легкого масштабирования для создания подсказок из нескольких агентов, а также в улучшении ваших подсказок с течением времени. Ваши подсказки редко будут работать в полном объеме с первого раза. Возможность точной настройки и улучшения путем изменения базовых подсказок и их прогона через систему позволит вам сравнить и оценить результаты.
Понимание угрозы
Чтобы создать надежные агенты искусственного интеллекта, важно понимать и снижать риски и угрозы для агентов искусственного интеллекта. Давайте рассмотрим некоторые из различных угроз для агентов искусственного интеллекта и то, как лучше спланировать и подготовиться к ним.

Мандаты и директивы
Описание: Злоумышленник пытается изменить команды или цели агента искусственного интеллекта с помощью подсказок или манипуляций с входными данными.
Меры по смягчению последствий: Выполняйте проверки валидности и фильтры ввода, чтобы обнаружить потенциально опасные подсказки до того, как они будут обработаны агентом ИИ. Поскольку такие атаки обычно требуют частого взаимодействия с агентом, ограничение количества раундов диалога - еще один способ предотвратить подобные атаки.
Доступ к критическим системам
Описание: Если агент ИИ имеет доступ к системам и сервисам, хранящим конфиденциальные данные, злоумышленник может нарушить связь между агентом и этими сервисами. Это могут быть прямые атаки или попытки получить информацию об этих системах косвенным путем через агента.
Меры по смягчению последствий: Агент ИИ должен иметь доступ к системе только в случае необходимости, чтобы предотвратить подобные атаки. Связь между агентом и системой также должна быть безопасной. Реализация аутентификации и контроля доступа - еще один способ защиты этой информации.
Перегрузка ресурсов и услуг
Описание: Агент искусственного интеллекта имеет доступ к различным инструментам и сервисам для выполнения задач. Злоумышленник может использовать эту возможность для атаки на эти сервисы, отправляя большое количество запросов через AI Agent, что может привести к отказу системы или высоким затратам.
Меры по смягчению последствий: Внедрите политики, ограничивающие количество запросов агента ИИ к сервису. Ограничение количества раундов диалога и запросов к агенту искусственного интеллекта - еще один способ предотвратить подобные атаки.
отравление базы знаний
Описание: Этот тип атаки направлен не непосредственно на ИИ-агента, а на базу знаний и другие сервисы, которые ИИ-агент будет использовать. Это может включать в себя повреждение данных или информации, которые ИИ-агент будет использовать для выполнения своих задач, что приведет к необъективному или неожиданному ответу пользователю.
Меры по смягчению последствий: Регулярно проверяйте данные, которые агент искусственного интеллекта будет использовать в своем рабочем процессе. Убедитесь, что доступ к этим данным безопасен и может быть изменен только доверенными лицами, чтобы избежать подобных атак.
каскадная ошибка
Описание: Агент искусственного интеллекта обращается к различным инструментам и службам для выполнения своих задач. Ошибки, вызванные злоумышленником, могут привести к сбою других систем, к которым подключается агент искусственного интеллекта, что сделает атаку более масштабной и затруднит устранение неполадок.
Меры по смягчению последствий: Один из способов избежать этого - запустить AI Agent в ограниченном окружении, например, выполняя задачи в контейнере Docker, чтобы предотвратить прямые атаки на систему. Создание механизмов резервного копирования и логики повторных попыток при некорректном срабатывании определенных систем - еще один способ предотвратить крупные системные сбои.
вмешательство человека
Еще один эффективный способ создания надежной системы ИИ-агента - использование человеческого вмешательства. Это создает процесс, в котором пользователь может предоставлять обратную связь агенту во время выполнения. По сути, пользователь выступает в роли агента в многоагентной системе, одобряя или завершая запущенный процесс.

Это приложение, которое использует AutoGen фрагмент кода, который показывает, как реализовать эту концепцию:
# 创建 agents。
model_client = OpenAIChatCompletionClient(model="gpt-4o-mini")
assistant = AssistantAgent("assistant", model_client=model_client)
user_proxy = UserProxyAgent("user_proxy", input_func=input) # 使用 input() 从控制台获取用户输入。
# 创建终止条件,当用户说“APPROVE”时,对话将结束。
termination = TextMentionTermination("APPROVE")
# 创建团队。
team = RoundRobinGroupChat([assistant, user_proxy], termination_condition=termination)
# 运行对话并流式传输到控制台。
stream = team.run_stream(task="Write a 4-line poem about the ocean.")
# 在脚本中运行时使用 asyncio.run(...)。
await Console(stream)
вынести вердикт
Создание надежного ИИ-агента требует тщательного проектирования, надежных мер безопасности и непрерывной итерации. Внедряя структурированную систему метапроблем, понимая потенциальные угрозы и применяя стратегии их снижения, разработчики могут создавать безопасные и эффективные агенты ИИ. Кроме того, применение подхода, основанного на вмешательстве человека, гарантирует, что агенты ИИ будут соответствовать потребностям пользователей, сводя риски к минимуму. По мере развития ИИ проактивная позиция в вопросах безопасности, конфиденциальности и этических аспектов будет играть ключевую роль в укреплении доверия и надежности систем, управляемых ИИ.
© заявление об авторских правах
Авторское право на статью Круг обмена ИИ Пожалуйста, не воспроизводите без разрешения.
Похожие статьи
Нет комментариев...