Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Применяется только к:Портал Foundry (классический). Эта статья недоступна для нового портала Foundry.
Дополнительные сведения о новом портале.
Замечание
Ссылки в этой статье могут открывать содержимое в новой документации Microsoft Foundry вместо классической документации Foundry, которую вы просматриваете в данный момент.
Модели Microsoft Foundry предоставляют заметки, которые помогут вам понять результаты функции Guardrail (ранее фильтрации содержимого) для ваших запросов. Аннотации можно включить даже для фильтров и уровней важности, которые отключены от блокировки контента.
Стандартные аннотации ограничения доступа
Если аннотации включены, как показано в фрагментах кода ниже, следующая информация возвращается через API для категорий: ненависть и справедливость, сексуальность, насилие и самоповреждение.
- категория риска (ненависть, сексуальность, насилие, самоповреждение)
- уровень серьезности (безопасный, низкий, средний или высокий) в каждой категории содержимого
- состояние фильтрации (true или false).
Azure OpenAI в модели Foundry предоставляет заметки по фильтрации содержимого, которые помогут вам понять результаты фильтрации содержимого для запросов. Аннотации можно включить даже для фильтров и уровней важности, которые отключены от блокировки контента.
Необязательные аннотации модели
Необязательные модели можно задать для режима анотации (возвращает сведения, когда содержимое помечается, но не фильтруется) или режим фильтра (возвращает сведения, когда содержимое помечается и фильтруется).
Если заметки включены, как показано в фрагментах кода ниже, следующие сведения возвращаются API для каждой необязательной модели:
| Модель | Выходные данные |
|---|---|
| Атака подсказки пользователя | обнаруженные (true или false), отфильтрованные (true или false) |
| косвенные атаки | обнаруженные (true или false), отфильтрованные (true или false) |
| текст защищенного материала | обнаруженные (true или false), отфильтрованные (true или false) |
| защищенный код материала | Определено (истина или ложь), отфильтровано (истина или ложь), Пример цитирования общедоступного репозитория GitHub, где найден фрагмент кода, Лицензия репозитория |
| Персональные данные (PII) | обнаруженные (true или false) отфильтрованные (true или false) редактированные (true или false) |
| Groundedness | обнаружен (true или false) отфильтровано (true или false, со сведениями) (только для режима аннотирования) сведения:( completion_end_offset, completion_start_offset) |
| Соблюдение задач | Обнаружен (истина или ложь) Отфильтрован (истина или ложь) |
При отображении кода в приложении настоятельно рекомендуется также отобразить пример ссылки на заметки. Соответствие приведенной лицензии также может потребоваться для покрытия обязательств по защите авторских прав клиента.
См. следующую таблицу для доступности режима заметки в каждой версии API:
| Категория фильтра | 2024-10-01-превью | 2024-02-01 ГА | 2024-04-01-preview | 2023-10-01-preview | 2023-06-01-preview | 2025-01-01-preview |
|---|---|---|---|---|---|---|
| Hate | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| Насилие | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| Половой | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| Причинение себе вреда | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| Экран запроса для атак с запросами пользователя | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| Щит для непрямых атак | ✅ | ✅ | ||||
| Защищенный текст материала | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| Защищенный код материала | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| Персональные данные (PII) | ✅ | |||||
| Список блокировок ненормативной лексики | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ |
| Настраиваемый список блокировок | ✅ | ✅ | ✅ | ✅ | ✅ | |
| Укоренённость1 | ✅ | ✅ |
1 Недоступно в сценариях, отличных от потоковой передачи; доступно только для сценариев потоковой передачи. Следующие регионы поддерживают обнаружение заземления: центральная часть США, восточная часть США, Центральная Франция и Восточная Канада
Примеры кода
В следующих фрагментах кода показано, как просматривать заметки фильтра содержимого на разных языках программирования.
# os.getenv() for the endpoint and key assumes that you are using environment variables.
import os
from openai import AzureOpenAI
client = AzureOpenAI(
api_key=os.getenv("AZURE_OPENAI_API_KEY"),
api_version="2024-03-01-preview",
azure_endpoint = os.getenv("AZURE_OPENAI_ENDPOINT")
)
response = client.completions.create(
model="gpt-35-turbo-instruct", # model = "deployment_name".
prompt="{Example prompt where a severity level of low is detected}"
# Content that is detected at severity level medium or high is filtered,
# while content detected at severity level low isn't filtered by the content filters.
)
print(response.model_dump_json(indent=2))
Выходные данные
{
"choices": [
{
"content_filter_results": {
"hate": {
"filtered": false,
"severity": "safe"
},
"protected_material_code": {
"citation": {
"URL": " https://github.com/username/repository-name/path/to/file-example.txt",
"license": "EXAMPLE-LICENSE"
},
"detected": true,
"filtered": false
},
"protected_material_text": {
"detected": false,
"filtered": false
},
"self_harm": {
"filtered": false,
"severity": "safe"
},
"sexual": {
"filtered": false,
"severity": "safe"
},
"violence": {
"filtered": false,
"severity": "safe"
}
},
"finish_reason": "stop",
"index": 0,
"message": {
"content": "Example model response will be returned ",
"role": "assistant"
}
}
],
"created": 1699386280,
"id": "chatcmpl-8IMI4HzcmcK6I77vpOJCPt0Vcf8zJ",
"model": "gpt-35-turbo-instruct",
"object": "text.completion",
"usage": {
"completion_tokens": 40,
"prompt_tokens": 11,
"total_tokens": 417
},
"prompt_filter_results": [
{
"content_filter_results": {
"hate": {
"filtered": false,
"severity": "safe"
},
"jailbreak": {
"detected": false,
"filtered": false
},
"profanity": {
"detected": false,
"filtered": false
},
"self_harm": {
"filtered": false,
"severity": "safe"
},
"sexual": {
"filtered": false,
"severity": "safe"
},
"violence": {
"filtered": false,
"severity": "safe"
}
},
"prompt_index": 0
}
]
}
Дополнительные сведения о конечных точках REST API для инференции Azure OpenAI и способах создания чата и автодополнений см. в справочнике Azure OpenAI REST API. Заметки возвращаются для всех сценариев при использовании любой предварительной версии API, начиная с 2023-06-01-preview, а также версии API общедоступной версии 2024-02-01.