Поделиться через


Azure OpenAI на ваших данных (classic)

Применяется только к:Портал Foundry (классический). Эта статья недоступна для нового портала Foundry. Дополнительные сведения о новом портале.

Замечание

Ссылки в этой статье могут открывать содержимое в новой документации Майкрософт Foundry вместо классической документации Foundry, которую вы просматриваете в данный момент.

Это важно

Azure OpenAI On Your Data устарел и будет выведен из использования.

Майкрософт перестала подключить новые модели к Azure OpenAI On Your Data. Эта функция поддерживает только следующие модели:

  • GPT-4o (версии 2024-05-13, 2024-08-06 и 2024-11-20)
  • GPT-4o-mini (версия 2024-07-18)
  • GPT-4.1, GPT-4.1-mini и GPT-4.1-nano (версия 2025-04-14)

После удаления моделей GPT-4.1, все конечные точки API Azure OpenAI On Your Data и поддерживаемые коннекторы источников данных перестают функционировать.

Мы рекомендуем перенести рабочие нагрузки Azure OpenAI на ваших данных в Foundry Agent Service с Foundry IQ для получения содержимого и построения обоснованных ответов на основе ваших данных. Чтобы приступить к работе, см. статью "Подключение базы знаний IQ Foundry".

Используйте эту статью, чтобы узнать об Azure OpenAI на ваших данных, который упрощает разработчикам подключение, интеграцию и закрепление корпоративных данных для быстрого создания персонализированных копилотов (предварительная версия). Он улучшает понимание пользователей, ускоряет выполнение задач, повышает эффективность работы и помогает принимать решения.

Что такое Azure OpenAI для ваших данных

Azure OpenAI On Your Data позволяет запускать расширенные модели ИИ, такие как GPT-35-Turbo и GPT-4 на собственных корпоративных данных, не требуя обучения или точной настройки моделей. Вы можете обсуждать и анализировать свои данные с большей точностью. Вы можете указать источники для поддержки ответов на основе последних сведений, доступных в указанных источниках данных. Вы можете получить доступ к Azure OpenAI On Your Data с помощью REST API через пакет SDK или веб-интерфейс на портале Майкрософт Foundry portal. Вы также можете создать веб-приложение, которое подключается к вашим данным, чтобы обеспечить усовершенствованное решение для чата или развернуть его непосредственно в качестве помощника в Copilot Studio (предварительная версия).

Разработка с использованием Azure OpenAI на ваших данных

Схема, показывающая пример рабочего процесса.

Обычно используется следующий процесс разработки с Azure OpenAI On Your Data:

  1. Прием: отправка файлов с помощью портала Foundry или API приема. Это позволяет разбить данные на части и встроить их в экземпляр Поиск с использованием ИИ Azure, который можно использовать с моделями Azure OpenAI. Если у вас есть существующий поддерживаемый источник данных, вы также можете подключить его напрямую.

  2. Develop. После попытки Azure OpenAI On Your Data начните разработку приложения с помощью доступного REST API и пакетов SDK, доступных на нескольких языках. Он создаст запросы и намерения поиска для передачи в службу OpenAI Azure.

  3. Inference: после развертывания приложения в предпочитаемой среде он отправит запросы на Azure OpenAI, который выполнит несколько действий перед возвратом ответа:

    1. Генерация намерений: служба будет определять намерение запроса пользователя, чтобы определить правильный ответ.

    2. Извлечение. Служба извлекает соответствующие блоки доступных данных из подключенного источника данных, запрашивая его. Например, с помощью семантического или векторного поиска. Для влияния на извлечение используются такие параметры , как строгость и количество извлеченных документов.

    3. Фильтрация и повторная обработка. Результаты поиска на шаге извлечения улучшаются путем ранжирования и фильтрации данных для уточнения релевантности.

    4. Создание ответов: полученные данные отправляются вместе с другими сведениями, такими как системное сообщение в большую языковую модель (LLM) и ответ отправляется в приложение.

Чтобы приступить к работе, подключите источник данных с помощью портала Foundry и начните задавать вопросы и чаты по данным.

Система ролевого управления доступом Azure (Azure RBAC) для добавления источников данных

Чтобы полностью использовать Azure OpenAI On Your Data, необходимо задать одну или несколько Azure ролей RBAC. Дополнительные сведения см. в разделе Azure OpenAI в конфигурации данных.

Форматы данных и типы файлов

Azure OpenAI On Your Data поддерживает следующие типы файлов:

  • .txt
  • .md
  • .html
  • .docx
  • .pptx
  • .pdf

Существует ограничение отправки, и есть некоторые предостережения о структуре документов и о том, как это может повлиять на качество ответов из модели:

  • Если вы преобразуете данные из неподдерживаемого формата в поддерживаемый, оптимизируйте качество ответа модели, убедившись, что преобразование:

    • Не приводит к значительной потере данных.
    • Не добавляет неожиданные шумы в ваши данные.
  • Если файлы имеют специальное форматирование, например таблицы и столбцы, или точки маркеров, подготовьте данные с помощью скрипта подготовки данных, доступного в GitHub.

  • Для документов и наборов данных с длинными текстовыми строками следует использовать имеющийся скрипт подготовки данных. Этот скрипт разбивает данные на отдельные блоки, за счет чего ответы модели становятся более точными. Этот скрипт также поддерживает сканированные PDF-файлы и изображения.

Поддерживаемые источники данных

Для отправки данных необходимо подключиться к источнику данных. Если вы хотите использовать ваши данные для общения с моделью Azure OpenAI, данные разбиваются на части в индексе поиска, чтобы на основе запросов пользователей можно было найти соответствующую информацию.

Замечание

Данные должны быть неструктурированным текстом для получения наилучших результатов. Если у вас есть нетекстовые полуструктурированные или структурированные данные, рассмотрите возможность преобразования его в текст. Если файлы имеют специальное форматирование, например таблицы и столбцы, или точки маркеров, подготовьте данные с помощью скрипта подготовки данных, доступного в GitHub.

База данных Integrated Vector Database в Azure Cosmos DB на основе vCore для MongoDB изначально поддерживает интеграцию с Azure OpenAI On Your Data.

Для некоторых источников данных, таких как загрузка файлов с локального компьютера (предварительная версия) или данных, содержащихся в учетной записи хранения объектов BLOB (предварительная версия), используется служба Поиск с использованием ИИ Azure. При выборе следующих источников данных ваши данные будут загружены в индекс Поиск с использованием ИИ Azure.

Прием данных через Поиск с использованием ИИ Azure Description
Поиск с использованием ИИ Azure Используйте существующий индекс Поиск с использованием ИИ Azure с Azure OpenAI для ваших данных.
Отправка файлов (предварительная версия) Загрузите файлы с локального компьютера, чтобы хранить их в базе данных Хранилище BLOB-объектов Azure и передавать в Поиск с использованием ИИ Azure.
URL-адрес или веб-адрес (предварительная версия) Веб-содержимое из URL-адресов хранится в Хранилище BLOB-объектов Azure.
Хранилище BLOB-объектов Azure (предварительная версия) Отправка файлов из Хранилище BLOB-объектов Azure для приема в индекс Поиск с использованием ИИ Azure.

Схема служб индексирования векторов.

Развертывание в copilot (предварительная версия), приложение Teams (предварительная версия) или веб-приложение

После подключения Azure OpenAI к данным его можно развернуть с помощью кнопки Deploy на портале Foundry.

Снимок экрана: кнопка развертывания модели на портале Foundry.

Это дает несколько вариантов развертывания решения.

Вы можете развернуть дополнение в Copilot Studio (предварительная версия) непосредственно из портала Foundry, что позволяет использовать диалоговые возможности для различных каналов, таких как Microsoft Teams, веб-сайты, Dynamics 365 и другие каналы Azure Служба Bot. Клиент, используемый в Azure OpenAI и Copilot Studio (предварительная версия), должен совпадать. Дополнительные сведения см. в статье Подключение к Azure OpenAI On Your Data.

Замечание

Развертывание в copilot в Copilot Studio (предварительная версия) доступно только в регионах США.

Настройка доступа и сети для Azure OpenAI на ваших данных

Вы можете использовать Azure OpenAI On Your Data и защитить данные и ресурсы с помощью Microsoft Entra ID управления доступом на основе ролей, виртуальных сетей и частных конечных точек. Вы также можете ограничить документы, которые можно использовать в ответах для разных пользователей с фильтрами безопасности Поиск с использованием ИИ Azure. См. документацию Azure OpenAI по доступу к Вашим данным и настройке сети.

Лучшие практики

Используйте следующие разделы, чтобы узнать, как улучшить качество ответов, заданных моделью.

Параметр приема

При приеме данных в Поиск с использованием ИИ Azure вы можете изменить следующие дополнительные параметры либо в студии, либо через API загрузки.

Размер блока (предварительная версия)

Azure OpenAI On Your Data обрабатывает документы, разделяя их на блоки перед загрузкой. Размер блока — это максимальный размер с точки зрения количества маркеров любого блока в индексе поиска. Размер блока и количество извлеченных документов вместе контролируют количество информации (токенов) в запросе, отправляемом в модель. Как правило, размер блока, умноженный на количество извлеченных документов, — это общее количество токенов, отправляемых в модель.

Настройка размера фрагмента для вашего варианта использования

Размер блока по умолчанию — 1024 токенов. Однако, учитывая уникальность данных, вы можете найти другой размер блока (например, 256, 512 или 1536 токенов).

Настройка размера блока может повысить производительность чат-бота. При поиске оптимального размера блока потребуется метод проб и ошибок, начните с учета характера набора данных. Меньший размер блока обычно лучше подходит для наборов данных с прямыми фактами и меньшим контекстом, в то время как более крупный размер блока может оказаться полезным для более контекстной информации, хотя это может повлиять на производительность извлечения.

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

Подсказка

Имейте в виду, что изменение размера блока требует повторного приема документов, поэтому рекомендуется сначала настроить параметры среды выполнения, такие как строгость и количество извлеченных документов. Попробуйте изменить размер блока, если вы по-прежнему не получаете нужные результаты:

  • Если вы сталкиваетесь с большим количеством ответов, таких как "Я не знаю" для вопросов с ответами, которые должны находиться в ваших документах, рассмотрите возможность уменьшения размера блока до 256 или 512, чтобы повысить степень детализации.
  • Если чат-бот предоставляет некоторые правильные сведения, но отсутствуют другие, что становится очевидным в цитатах, увеличение размера блока до 1536 может помочь получить более контекстную информацию.

Параметры среды выполнения

Вы можете изменить следующие дополнительные параметры в разделе параметров данных на портале Foundry и API. При обновлении этих параметров вам не нужно повторно отправлять данные.

Имя параметра Description
Ограничьте ответы на ваши данные Этот флаг настраивает подход чат-бота к обработке запросов, которые не связаны с источником данных, или когда поиск документов недостаточен для полного ответа. Если этот параметр отключен, модель дополняет свои ответы собственными знаниями в дополнение к документам. Если этот параметр включен, модель пытается использовать только ваши документы для ответов. inScope Это параметр в API и задано значение true по умолчанию.
Извлеченные документы Этот параметр представляет собой целое число, которое можно задать для 3, 5, 10 или 20, и определяет количество блоков документов, предоставленных большой языковой модели для формирования окончательного ответа. По умолчанию это значение равно 5. Процесс поиска может быть шумным, а иногда из-за фрагментирования релевантной информации может распространяться по нескольким блокам в индексе поиска. Выбор значения top-K, например 5, гарантирует, что модель может извлечь соответствующую информацию, несмотря на ограничения поиска и разбиения на блоки. Однако слишком сильное увеличение числа может отвлекать модель от работы. Кроме того, максимальное количество документов, которые можно эффективно использовать, зависит от версии модели, так как каждая из них имеет другой размер контекста и емкость для обработки документов. Если вы обнаружите, что ответы отсутствуют в важном контексте, попробуйте увеличить этот параметр. topNDocuments Это параметр в API и имеет значение 5 по умолчанию.
Строгость Определяет агрессивность системы в фильтрации документов поиска на основе их показателей сходства. Система выполняет запросы к Azure Search или другим хранилищам документов, затем определяет, какие документы предоставить большим языковым моделям, таким как ChatGPT. Фильтрация неуместных документов может значительно повысить производительность полностью автоматизированного чат-бота. Некоторые документы исключены из результатов top-K, если они имеют низкие оценки сходства перед пересылкой их в модель. Это управляется целым значением от 1 до 5. При задании этого значения значение равно 1 означает, что система будет минимально фильтровать документы на основе сходства поиска с пользовательским запросом. И наоборот, параметр 5 указывает, что система будет агрессивно фильтровать документы, применяя очень высокий порог сходства. Если вы обнаружите, что чат-бот пропускает соответствующие сведения, уменьшите строгость фильтра (задайте значение ближе к 1), чтобы включить дополнительные документы. И наоборот, если неуместные документы отвлекают ответы, увеличьте пороговое значение (задайте значение ближе к 5). strictness Это параметр в API и задано значение 3 по умолчанию.

Нецитируемые источники

Возможно, что модель вернет "TYPE":"UNCITED_REFERENCE" вместо "TYPE":CONTENT в API для документов, извлеченных из источника данных, но не включенных в цитирование. Это может быть полезно для отладки, и вы можете управлять этим поведением, изменив строгость и извлеченные параметры среды выполнения документов , описанные выше.

Системное сообщение

Вы можете определить системное сообщение, чтобы управлять ответом модели при использовании Azure OpenAI On Your Data. Это сообщение позволяет настроить ваши ответы с использованием паттерна retrieval augmented generation (RAG), который использует Azure OpenAI On Your Data. Системное сообщение используется в дополнение к внутреннему базовому запросу для предоставления интерфейса. Для поддержки этого мы сокращаем системное сообщение после определённого числа маркеров, чтобы модель могла отвечать на вопросы с помощью ваших данных. Если вы определяете дополнительное поведение поверх интерфейса по умолчанию, убедитесь, что системный запрос подробно описан и объясняет точную ожидаемую настройку.

Как только вы выберете добавление вашего набора данных, можно использовать раздел системного сообщения на портале Foundry или role_informationпараметр в API.

Снимок экрана, показывающий опцию системного сообщения на портале Foundry.

Потенциальные шаблоны использования

Определение роли

Вы можете определить роль, которую требуется помощнику. Например, если вы создаете бот поддержки, вы можете добавить "Вы являетесь помощником по поддержке инцидентов эксперта, который помогает пользователям решать новые проблемы".

Определение типа извлекаемых данных

Вы также можете добавить характер данных, которые вы предоставляете помощнику.

  • Определите тему или область набора данных, например "финансовый отчет", "академический документ" или "отчет об инциденте". Например, для технической поддержки можно добавить сообщение "Вы отвечаете на запросы, используя информацию из аналогичных инцидентов в извлеченных документах".
  • Если данные имеют определенные характеристики, вы можете добавить эти сведения в системное сообщение. Например, если документы находятся на японском языке, можно добавить "Вы извлекаете японские документы, и их следует внимательно читать на японском языке и отвечать на них на японском языке".
  • Если документы включают структурированные данные, такие как таблицы из финансового отчета, вы также можете добавить этот факт в системный запрос. Например, если данные содержат таблицы, можно добавить "Вы предоставляете данные в виде таблиц, относящихся к финансовым результатам, и вы должны прочитать строку таблицы по строке, чтобы выполнить вычисления, чтобы ответить на вопросы пользователя".

Определение стиля выходных данных

Вы также можете изменить выходные данные модели, определив системное сообщение. Например, если вы хотите убедиться, что ответы помощника находятся на французском языке, можно добавить запрос, например "Вы являетесь помощником по искусственному интеллекту, который помогает пользователям, которые понимают французскую информацию о поиске информации. Вопросы пользователя могут быть на английском или французском языках. Внимательно прочитайте извлеченные документы и ответьте на них на французском языке. Пожалуйста, переводите знания из документов на французский, чтобы убедиться, что все ответы находятся на французском языке".

Подтверждение критического поведения

Azure OpenAI On Your Data работает, отправляя инструкции в большую языковую модель в виде подсказок, чтобы ответить на пользовательские запросы, используя ваши данные. Если в приложении имеется определенное поведение, можно повторить поведение в системном сообщении, чтобы повысить ее точность. Например, чтобы управлять моделью только ответами из документов, можно добавить "Пожалуйста, ответьте только с использованием извлеченных документов и без использования знаний. Создайте ссылки для получения документов для каждого утверждения в ответе. Если не удается ответить на вопрос пользователя с помощью извлеченных документов, объясните причину того, почему документы относятся к запросам пользователей. В любом случае не отвечайте на свои знания».

Замечание

Системное сообщение используется для изменения ответа помощника GPT на вопрос пользователя на основе полученной документации. Это не влияет на процесс извлечения. Если вы хотите предоставить инструкции по процессу извлечения, лучше включить их в вопросы. Системное сообщение является только руководством. Модель может не следовать каждой указанной инструкции, так как она была обучена определённым моделям поведения, таким как объективность и избегание спорных заявлений. Непредвиденное поведение может произойти, если системное сообщение противоречит этим поведению.

Ограничьте ответы на ваши данные

Этот параметр поощряет модель реагировать только на данные и выбирается по умолчанию. При отмене выбора этого параметра модель может более легко применить свои внутренние знания для реагирования. Определите правильный выбор на основе варианта использования и сценария.

Взаимодействие с моделью

Используйте следующие методики для получения наилучших результатов при чате с моделью.

История беседы

  • Прежде чем начать новую беседу (или задать вопрос, который не связан с предыдущими), снимите журнал чата.
  • Получение различных ответов на один и тот же вопрос между первым и последующим высказыванием в беседе ожидаемо, так как история беседы изменяет текущее состояние модели. Если вы получаете неправильные ответы, сообщите о ней как о проблеме качества.

Ответ модели

  • Если вы не удовлетворены ответом модели для конкретного вопроса, попробуйте сделать вопрос более конкретным или более универсальным, чтобы узнать, как модель реагирует, и соответствующим образом обработать свой вопрос.

  • Метод подталкивания цепочки размышлений оказался эффективным для получения моделью необходимых выходных данных при решении сложных вопросов и задач.

Длина вопроса

Избегайте задавать длинные вопросы и разбивайте их на несколько вопросов, если это возможно. Модели GPT имеют ограничения на количество маркеров, которые они могут принимать. Учет ограничений маркеров распространяется на: вопрос пользователя, системное сообщение, извлеченные документы поиска (блоки), внутренние запросы, журнал беседы (если имеется) и ответ. Если вопрос превышает ограничение на количество токенов, он будет усечен.

Поддержка нескольких лингвистов

  • В настоящее время поиск ключевых слов и семантический поиск в Azure OpenAI On Your Data поддерживает запросы на том же языке, что и данные в индексе. Например, если данные на японском языке, то входные запросы также должны находиться на японском языке. Для получения документов при межъязыковом поиске рекомендуется создавать индекс с активированным векторным поиском.

  • Чтобы повысить качество получения информации и ответа модели, рекомендуется включить семантический поиск на следующих языках: английский, французский, испанский, португальский, итальянский, итальянский, китайский(zh), японский, корейский, русский, арабский

  • Мы рекомендуем использовать системное сообщение для информирования модели о том, что данные используются на другом языке. Рассмотрим пример.

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

  • Если у вас есть документы на нескольких языках, рекомендуется создать новый индекс для каждого языка и подключить их отдельно к Azure OpenAI.

Потоковая передача данных

Запрос потоковой передачи можно отправить с помощью stream параметра, позволяя отправлять и получать данные постепенно, не ожидая ответа всего API. Это может повысить производительность и взаимодействие с пользователем, особенно для больших или динамических данных.

{
    "stream": true,
    "data_sources": [
        {
            "type": "AzureCognitiveSearch",
            "parameters": {
                "endpoint": "'$AZURE_AI_SEARCH_ENDPOINT'",
                "key": "'$AZURE_AI_SEARCH_API_KEY'",
                "indexName": "'$AZURE_AI_SEARCH_INDEX'"
            }
        }
    ],
    "messages": [
        {
            "role": "user",
            "content": "What are the differences between Azure Machine Learning and Foundry Tools?"
        }
    ]
}

История разговоров для улучшения результатов

При общении с моделью предоставление истории чата поможет модели предоставить более качественные результаты. Вам не нужно включать context свойство сообщений помощника в запросы API для повышения качества ответа. Смотрите справочную документацию по API для примеров.

Вызов функции

Некоторые модели Azure OpenAI позволяют определять параметры tools и tool_choice для включения вызова функций. Вы можете настроить вызов функции с помощью REST API/chat/completions. Если оба toolsисточника данных находятся в запросе, применяется следующая политика.

  1. Если tool_choice это none, то инструменты игнорируются, а для создания ответа используются только источники данных.
  2. В противном случае, если tool_choice не указан или указан как auto или объект, источники данных игнорируются, а ответ будет содержать имя выбранной функции и аргументы, если таковые имеются. Даже если модель не выбирает функцию, источники данных по-прежнему игнорируются.

Если указанная выше политика не соответствует вашей необходимости, рассмотрите другие варианты, например: Prompt Flow или API Assistant.

Оценка использования токенов для Azure OpenAI на ваших данных

Azure OpenAI On Your Data Retrieval Augmented Generation (RAG) — это служба, которая использует службы поиска (например, Поиск с использованием ИИ Azure) и генерацию контента с помощью моделей Azure OpenAI, чтобы пользователи могли получать ответы на свои вопросы, опираясь на предоставленные данные.

В рамках этого конвейера RAG существует три шага на высоком уровне:

  1. Переформатировать запрос пользователя в список намерений поиска. Это делается путем вызова модели с запросом, включающим инструкции, вопрос пользователя и журнал бесед. Давайте назовем это подсказка намерения.

  2. Для каждого намерения из службы поиска извлекаются несколько блоков документов. После фильтрации неуместных блоков на основе заданного пользователем порога строгости и повторной обработки или агрегирования блоков на основе внутренней логики выбирается указанное пользователем количество блоков документов.

  3. Эти блоки документов, а также вопросы пользователя, журнал бесед, сведения о роли и инструкции отправляются в модель, чтобы создать окончательный ответ модели. Давайте назовем это генеративной командой.

В общей сложности совершено два вызова модели.

  • Для обработки намерения: оценка количества токенов в запросе намерения включает токены, относящиеся к вопросу пользователя, журналу бесед и инструкциям, отправленным в модель для генерации намерений.

  • Для создания ответа: оценка маркера для запроса на генерацию включает в себя те, которые относятся к вопросу пользователя, журналу бесед, полученному списку фрагментов документов, информации о роли и инструкциям, отправленным для генерации.

Для оценки общего количества токенов необходимо учитывать созданные моделью выходные токены (как намерения, так и ответ). Суммирование всех четырех столбцов ниже дает среднее общее количество маркеров, используемых для создания ответа.

Модель Количество токенов генерации подсказки Число токенов подсказки намерения Число токенов ответа Количество токенов намерений
gpt-35-turbo-16k 4297 1366 111 двадцать пять
gpt-4-0613 3997 1385 118 18
gpt-4-1106-preview (предварительная версия) 4538 811 119 двадцать семь
gpt-35-turbo-1106 4854 1372 110 26

Приведенные выше числа основаны на тестировании набора данных с помощью следующих компонентов:

  • 191 беседа
  • 250 вопросов
  • 10 средних токенов на вопрос
  • 4 обмена репликами в среднем на каждую беседу

И следующие параметры.

Setting Ценность
Количество извлеченных документов 5
Строгость 3
Размер блока 1024
Ограничить ответы данными, которые были обработаны? True

Эти оценки зависят от значений, заданных для указанных выше параметров. Например, если для количества извлеченных документов задано значение 10, а строгость установлена на 1, число маркеров увеличится. Если возвращенные ответы не ограничиваются поступившими данными, то в модели будет меньше инструкций, и количество токенов уменьшится.

Оценки также зависят от характера запрашиваемых документов и вопросов. Например, если вопросы открыты, ответы, скорее всего, будут длиннее. Аналогичным образом, более длинное системное сообщение будет способствовать созданию более длинного запроса, который потребляет больше токенов, и если история беседы длинная, запрос будет длиннее.

Модель Максимальные токены для системного сообщения
GPT-35-0301 400
GPT-35-0613-16K 1000
GPT-4-0613-8K 400
GPT-4-0613-32K 2000
GPT-35-turbo-0125 2000
GPT-4-turbo-0409 4000
GPT-4o 4000
GPT-4o-mini 4000

В приведенной выше таблице показано максимальное количество маркеров, которые можно использовать для системного сообщения. Чтобы просмотреть максимальное количество токенов для ответа модели, см. статью о моделях. Кроме того, следующие также потребляют токены:

  • Мета-запрос: если вы ограничиваете ответы от модели на содержимое данных заземления (inScope=True в API), максимальное количество маркеров выше. В противном случае (например, если inScope=False) максимальное значение меньше. Это число изменяется в зависимости от длины токена вопроса пользователя и истории бесед. Эта оценка включает основную подсказку и перезапись запроса для извлечения.

  • Вопрос пользователя и история: переменная, но ограничена 2000 токенами.

  • Извлеченные документы (блоки): количество маркеров, используемых извлекаемыми блоками документов, зависит от нескольких факторов. Верхняя граница для этого — это количество извлеченных блоков документа, умноженное на размер блока. Однако он будет усечен на основе доступных токенов для конкретной модели после подсчета остальных полей.

    20% доступных токенов зарезервированы для ответа модели. Остальные 80% доступных маркеров включают мета-приглашение, вопрос пользователя и историю беседы, а также системное сообщение. Оставшийся бюджет токена используется фрагментами извлеченных документов.

Чтобы вычислить количество маркеров, потребляемых входными данными (например, вопросом, сведениями о системном сообщении или роли), используйте следующий пример кода.

import tiktoken

class TokenEstimator(object):

    GPT2_TOKENIZER = tiktoken.get_encoding("gpt2")

    def estimate_tokens(self, text: str) -> int:
        return len(self.GPT2_TOKENIZER.encode(text))
      
token_output = TokenEstimator.estimate_tokens(input_text)

Устранение неполадок

Чтобы устранить сбои операций, всегда ищите ошибки или предупреждения, указанные в ответе API или на портале Foundry. Ниже приведены некоторые распространенные ошибки и предупреждения:

Неудачные задания загрузки данных

Проблемы с ограничениями квот

Не удалось создать индекс с именем X в службе Y. Превышена квота индекса для этого сервиса. Сначала необходимо удалить неиспользуемые индексы, добавить задержку между запросами на создание индекса или обновить службу для более высоких ограничений.

Превышена квота стандартного индексатора X для этой службы. В настоящее время у вас есть X стандартных индексаторов. Сначала необходимо удалить неиспользуемые индексаторы, изменить индексатор executionMode или обновить службу для более высоких ограничений.

Резолюция:

Обновление до более высокой ценовой категории или удаление неиспользуемых ресурсов.

Проблемы с временем ожидания предварительной обработки

Не удалось выполнить навык, поскольку запрос к Web API завершился ошибкой

Не удалось выполнить навык, так как недействителен ответ навыка через Web API

Резолюция:

Разбиите входные документы на небольшие документы и повторите попытку.

Проблемы с разрешениями

Этот запрос не авторизован для выполнения этой операции

Резолюция:

Это означает, что учетная запись хранения недоступна с указанными учетными данными. В этом случае проверьте учетные данные учетной записи хранения, передаваемые API, и убедитесь, что учетная запись хранения не скрыта за частной конечной точкой (если частная конечная точка не настроена для этого ресурса).

Каждое сообщение пользователя может переводиться на несколько поисковых запросов, все из которых отправляются в ресурс поиска параллельно. Это может привести к ограничению производительности, если количество реплик поиска и разделов низкое. Максимальное количество запросов в секунду, которое может поддерживать одна секция и одна реплика, может быть недостаточно. В этом случае рассмотрите возможность увеличения числа реплик и разделов или добавления логики паузы и повторной попытки в вашем приложении. Дополнительные сведения см. в документации Поиск с использованием ИИ Azure.

Региональная доступность и поддержка моделей

Это важно

Azure OpenAI On Your Data устарел и будет выведен из использования.

Майкрософт перестала подключить новые модели к Azure OpenAI On Your Data. Эта функция поддерживает только следующие модели:

  • GPT-4o (версии 2024-05-13, 2024-08-06 и 2024-11-20)
  • GPT-4o-mini (версия 2024-07-18)
  • GPT-4.1, GPT-4.1-mini и GPT-4.1-nano (версия 2025-04-14)

После удаления моделей GPT-4.1, все конечные точки API Azure OpenAI On Your Data и поддерживаемые коннекторы источников данных перестают функционировать.

Мы рекомендуем перенести рабочие нагрузки Azure OpenAI на ваших данных в Foundry Agent Service с Foundry IQ для получения содержимого и построения обоснованных ответов на основе ваших данных. Чтобы приступить к работе, см. статью "Подключение базы знаний IQ Foundry".

См. сводную таблицу модели для региональной доступности.

Дальнейшие шаги