Ескертпе
Бұл бетке кіру үшін қатынас шегін айқындау қажет. Жүйеге кіруді немесе каталогтарды өзгертуді байқап көруге болады.
Бұл бетке кіру үшін қатынас шегін айқындау қажет. Каталогтарды өзгертуді байқап көруге болады.
Microsoft Purview предоставляет возможности обеспечения безопасности данных корпоративного уровня, соответствия требованиям и управления для приложений искусственного интеллекта. Интегрируя API Purview в пакет SDK для Agent Framework, разработчики могут создавать интеллектуальные агенты, защищенные по проектированию, обеспечивая защиту конфиденциальных данных в запросах и ответах и соответствие политикам организации.
Зачем интегрировать Purview с Agent Framework?
- Предотвращение утечки конфиденциальных данных: встроенная блокировка конфиденциального содержимого на основе политик защиты от потери данных (DLP).
- Включение управления: ведение журнала взаимодействий ИИ в Purview для аудита, соответствия требованиям коммуникации, управления внутренними рисками, обнаружения электронных данных и управления жизненным циклом данных.
- Ускорение внедрения: корпоративным клиентам требуется соответствие приложениям ИИ. Интеграция Purview разблокирует развертывание.
Предпосылки
Прежде чем начать, убедитесь, что у вас есть следующее:
- Подписка на Microsoft Azure, настроенная с Microsoft Purview.
- Подписка на Microsoft 365 с лицензией E5 и моделью выставления счетов по мере использования.
- Для тестирования можно использовать клиент программы разработчика Microsoft 365. Дополнительные сведения см. в статье "Присоединение к программе разработчика Microsoft 365".
- Пакет SDK для Agent Framework. Чтобы установить пакет SDK для Agent Framework, выполните следующие действия.
- Python: выполните
pip install agent-framework. - .NET: установка из NuGet.
- Python: выполните
Интеграция Microsoft Purview с агентом
В конвейере компонентов промежуточного слоя рабочего процесса агента можно добавить компонент промежуточного слоя политики Microsoft Purview для перехвата ответов и запросов, чтобы определить, соответствуют ли они политикам, установленным в Microsoft Purview. Agent Framework SDK может перехватывать сообщения и ответы в чате между агентами или с конечным пользователем.
В следующем примере кода показано, как добавить ПО промежуточного слоя политики Microsoft Purview в код агента. Если вы не знакомы с Agent Framework, см. статью "Создание и запуск агента с помощью Agent Framework".
using Azure.AI.Projects;
using Azure.Core;
using Azure.Identity;
using Microsoft.Agents.AI;
using Microsoft.Agents.AI.Purview;
string endpoint = Environment.GetEnvironmentVariable("AZURE_OPENAI_ENDPOINT") ?? throw new InvalidOperationException("AZURE_OPENAI_ENDPOINT is not set.");
string deploymentName = Environment.GetEnvironmentVariable("AZURE_OPENAI_DEPLOYMENT_NAME") ?? "gpt-4o-mini";
string purviewClientAppId = Environment.GetEnvironmentVariable("PURVIEW_CLIENT_APP_ID") ?? throw new InvalidOperationException("PURVIEW_CLIENT_APP_ID is not set.");
TokenCredential browserCredential = new InteractiveBrowserCredential(
new InteractiveBrowserCredentialOptions
{
ClientId = purviewClientAppId
});
AIAgent agent = new AIProjectClient(
new Uri(endpoint),
new DefaultAzureCredential())
.AsAIAgent(
model: deploymentName,
instructions: "You are a secure assistant.")
.AsBuilder()
.WithPurview(browserCredential, new PurviewSettings("My Secure Agent"))
.Build();
AgentResponse response = await agent.RunAsync("Summarize zero trust in one sentence.").ConfigureAwait(false);
Console.WriteLine(response);
Предупреждение
DefaultAzureCredential удобно для разработки, но требует тщательного рассмотрения в рабочей среде. В рабочей среде рекомендуется использовать определенные учетные данные (например, ManagedIdentityCredential), чтобы избежать проблем с задержкой, непреднамеренной проверки данных аутентификации и потенциальных рисков безопасности из-за резервных механизмов.
import asyncio
import os
from agent_framework import Agent, Message, Role
from agent_framework.openai import OpenAIChatCompletionClient
from agent_framework.microsoft import PurviewPolicyMiddleware, PurviewSettings
from azure.identity import AzureCliCredential, InteractiveBrowserCredential
# Set default environment variables if not already set
os.environ.setdefault("AZURE_OPENAI_ENDPOINT", "<azureOpenAIEndpoint>")
os.environ.setdefault("AZURE_OPENAI_CHAT_COMPLETION_MODEL", "<azureOpenAIChatDeploymentName>")
async def main():
chat_client = OpenAIChatCompletionClient(
model=os.environ["AZURE_OPENAI_CHAT_COMPLETION_MODEL"],
azure_endpoint=os.environ["AZURE_OPENAI_ENDPOINT"],
api_version=os.getenv("AZURE_OPENAI_API_VERSION"),
credential=AzureCliCredential(),
)
purview_middleware = PurviewPolicyMiddleware(
credential=InteractiveBrowserCredential(
client_id="<clientId>",
),
settings=PurviewSettings(app_name="My Secure Agent")
)
agent = Agent(
client=chat_client,
instructions="You are a secure assistant.",
middleware=[purview_middleware]
)
response = await agent.run(Message(role='user', contents=["Summarize zero trust in one sentence."]))
print(response)
if __name__ == "__main__":
asyncio.run(main())
Дальнейшие шаги
Теперь, когда вы добавили приведенный выше код в агент, выполните следующие действия, чтобы проверить интеграцию Microsoft Purview с кодом:
- Регистрация Entra: Зарегистрируйте вашего агента и добавьте необходимые разрешения Microsoft Graph (ProtectionScopes.Compute.All, ContentActivity.Write, Content.Process.All) для Учетной записи службы. Дополнительные сведения см. в разделе "Регистрация приложения" в типе ресурса Microsoft Entra ID и dataSecurityAndGovernance. На следующем шаге потребуется идентификатор приложения Microsoft Entra.
- Политики Purview: Настройте политики Purview, используя идентификатор приложения Microsoft Entra для обеспечения поступления данных агентской связи в Purview. Дополнительные сведения см. в разделе "Настройка Microsoft Purview".
Ресурсы
- Nuget: Microsoft.Agents.AI.Purview
- Github: Microsoft.Agent.AI.Purview
- Пример: AgentWithPurview