| page_type | языки | продукция | урлфрагмент | имя | описание | ||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
образец |
|
| App-Templates-Java-Openai-SpringApps | Корзина по магазинам AI - шаблон приложения для приложений Java, Azure Openai и Azure Spring Apps | Образец приложения для корзины для покупок AI с Azure OpenAI и Azure Spring Apps |
Корзина по магазинам AI - это образец применения, которое наносит ваш опыт покупок с силой ИИ. Он использует приложения Azure Open и Azure Spring для создания двигателя рекомендаций, который не только масштабируется, устойчив и безопасен, но и персонализирован для ваших потребностей. Используя Azure OpenAI, приложение выполняет анализ питания на предметах в вашей корзине и генерирует 3 лучших рецепта с использованием этих ингредиентов. С помощью Azure Developer CLI (AZD) вы всего лишь несколько команд от того, чтобы это полностью функциональное применение образца работало в Azure. Начнем!
Это образец приложения вдохновляйте эту оригинальную работу: https://github.com/lopezleandro03/ai-assisted-croceries-cart
Обратитесь к шаблонам приложений Repository Readme для большего количества образцов, которые совместимы с
azd.

gpt-4 или gpt-35-turbo [Примечание] Чтобы узнать, как начать с любого шаблона, следуйте этому QuickStart. Для этого шаблона Azure-Samples/app-templates-java-openai-springapps вам необходимо выполнить несколько дополнительных шагов, как описано ниже.
Этот QuickStart покажет вам, как аутентифицировать подлинность в Azure, включить Spring Apps Feature Alpha для AZD, инициализировать использование шаблона, установить переменные среды для Azure OpenAI, предоставить инфраструктуру и развернуть код в Azure:
# Log in to azd if you haven't already
azd auth login
# Enable Azure Spring Apps alpha feature for azd
azd config set alpha.springapp on
# First-time project setup. Initialize a project in the current directory using this template
azd init --template Azure-Samples/app-templates-java-openai-springapps
# Set the environment variables for Azure OpenAI
azd env set azureOpenAiApiKey < replace-with-Azure-OpenAi-API-key >
azd env set azureOpenAiEndpoint < replace-with-Azure-OpenAi-endpoint >
azd env set azureOpenAiDeploymentId < replace-with-Azure-OpenAi-deployment-id/name >
# To use GPT-3.5 Turbo model set this environment variable to false
azd env set isAzureOpenAiGpt4Model true
# Provision and deploy to Azure
azd upПримечания
- Замените заполнители значениями из вашего ресурса Azure Openai.
- Если вы используете модель
gpt-35-turbo, вам необходимо установитьisAzureOpenAiGpt4Modelнаfalseперед предоставлением ресурса и развертывания образца приложения в Azure:azd env set isAzureOpenAiGpt4Model false
В конце развертывания вы увидите URL-адрес фронта. Откройте URL в браузере, чтобы увидеть приложение в действии.
В этом примере приложения используются следующие ресурсы Azure:
Вот диаграмма архитектуры высокого уровня, которая иллюстрирует эти компоненты. За исключением Azure Openai, все остальные ресурсы предоставляются в одной группе ресурсов, которая создается при создании ваших ресурсов с помощью azd up .

Этот шаблон обеспечивает ресурсы для подписки Azure, которую вы выберете после их обеспечения. Пожалуйста, обратитесь к калькулятору ценообразования для Microsoft Azure, и, при необходимости, обновите включенные определения ресурсов Azure, найденные в
infra/main.bicepчтобы удовлетворить ваши потребности.
В этом примере используется Azure OpenAI. Это не является частью процесса автоматического развертывания. Вам нужно будет создать ресурс Azure Openai и настроить приложение для его использования. Пожалуйста, следуйте инструкциям в документации Azure Openai, чтобы получить доступ к Azure OpenAI. Не забудьте прочитать обзор ответственных практик искусственного интеллекта для моделей Azure OpenAI, прежде чем вы начнете использовать Azure OpenAI и запросить доступ.
Текущая версия приложения «Образец» требует общедоступного ресурса Azure Openai (то есть разрешить доступ со всех сетей). Этот образец не предназначен для использования в производстве. Чтобы узнать больше о сети и безопасности для Azure Openai, пожалуйста, обратитесь к документации Azure OpenAI.
Это приложение было разработано для использования с моделью gpt-4 . Он также поддерживает gpt-35-turbo . Чтобы использовать gpt-35-turbo , вам нужно установить isAzureOpenAiGpt4Model на false (см. Quickstart). По умолчанию эта переменная параметра/среды установлена на true . Чтобы завершить настройку приложения, вам необходимо установить следующую информацию из ресурса Azure Openai:
azureOpenAiApiKey - Azure Openai API -ключazureOpenAiEndpoint - Azure Openai конечная точкаazureOpenAiDeploymentId -ID Deployment Openai идентификатор развертывания gpt-4 или gpt-3.5-turbo Ключ API и конечная точка можно найти на портале Azure. Вы можете следовать этим инструкциям: получить ключ и Enpoint. Идентификатор развертывания соответствует deployment name в этом руководстве.
Обратная техника важна для получения наилучших результатов от Azure OpenAI. Текстовые подсказки - это то, как пользователи взаимодействуют с моделями GPT. Как и во всей генеративной модели большой языка (LLM), модели GPT пытаются создать следующую серию слов, которые с наибольшей вероятностью будут следовать предыдущему тексту. Это немного похоже на спрос на модель ИИ: что первое, что приходит на ум, когда я говорю <prompt> ?
С помощью API завершения чата существуют отдельные разделы подсказки, которые отправляются в API, связанный с конкретной ролью: система, пользователь и ассиватор. Системное сообщение включено в начале подсказки и используется для предоставления первоначальных инструкций для модели: Описание Запада, признаки личности, инструкции/правила, с которыми она будет следовать и т. Д.
AI Shopping Cart Service использует клиентскую библиотеку Azure Open для Java. Эта Ливина является частью Azure SDK для Java. Он реализован как завершение чата. В службе у нас есть 2 системы системных сообщений в SystemMessageConstants.java: одно для анализа питания ИИ и одно для получения 3 лучших рецептов. За системным сообщением следует пользовательское сообщение: The basket is: <list of items in the basket separated by a comma> . Помощник сообщения - это ответ от модели. Служба использует ShoppingCartaireCommendations для взаимодействия с Azure OpenAI. В этом классе вы найдете код, который отвечает за создание подсказки и вызов Azure OpenAI API: getChatCompletion . Чтобы узнать больше о температуре и Topp, используемом в этом классе, обратитесь к документации.
Для модели gpt-35-turbo в сообщение пользователя добавляется больше контекста. Этот дополнительный контекст добавляется в конце сообщения пользователя. Он предоставляет больше информации о формате JSON, который должен вернуть модель OpenAI, и попросить модель вернуть только JSON без дополнительного текста. Этот дополнительный контекст доступен в usermessageconstants.java.
Этот шаблон структурирован для того, чтобы следовать консервациям CLI -разработчика Azure CLI. Вы можете узнать больше о архитектуре azd в официальной документации.
На этом этапе у вас есть полное приложение, развернутое на Azure.
Что касается потребностей предприятия, ища развертывание приложений PolyGlot, поддержку компонентов Tanzu и обеспечение SLA, мы рекомендуем использовать Azure Spring Apps Enterprise. Проверьте ускоритель зоны посадки Azure Spring Apps, который предоставляет архитектурные рекомендации, предназначенные для оптимизации подготовки к производству подготовки инфраструктуры и развертывания приложений Spring Boot и Spring Cloud в Azure Spring Apps. В качестве владельца рабочей нагрузки используйте архитектурные руководства, предоставленные в ускорительном ускорительном посадке, чтобы с уверенностью достичь целевого технического состояния.
Вы развернули приложение Sample с помощью CLI Azure Developer CLI, однако есть гораздо больше, что может сделать CLI разработчика Azure. Эти следующие шаги познакомит вас с дополнительными командами, которые намного облегчат создание приложений на Azure. Используя CLI Azure Developer CLI, вы можете настроить свои трубопроводы, контролировать приложение, тестирование и отладка локально.
azd down - чтобы удалить все ресурсы Azure, созданные с помощью этого шаблона
azd pipeline config - для настройки конвейера CI/CD (с использованием действий GitHub или Azure DevOps) для развертывания вашего приложения всякий раз, когда код выдвигается в основную ветвь.
AZURE_OPENAI_API_KEY : API -ключ для ресурса Azure OpenAIAZURE_OPENAI_ENDPOINT : конечная точка для Azure Openai ResourceAZURE_OPENAI_DEPLOYMENT_ID : идентификатор развертывания/имя для ресурса Azure OpenAIIS_AZURE_OPENAI_GPT4_MODEL : установите на true , если вы используете модель GPT-4 и для false если вы используете GPT-3.5 Turbo Model azd monitor - для мониторинга приложения и быстро перейти к различным мониторингам приложений (например, обзор, живые метрики, журналы)
Запуск и отладка локально - Использование кода Visual Studio и Developer Developer CLI Extension
azd CLI Azure Developer включает в себя много других команд, которые помогут с вашим опытом разработки Azure. Вы можете просмотреть эти команды на терминале, запустив azd help . Вы также можете просмотреть полный список команд на нашей командной странице CLI Developer Azure.
Это дополнительные ресурсы, которые вы можете использовать, чтобы узнать больше о приложении пример и его базовых технологиях.
Программное обеспечение может собирать информацию о вас и использование программного обеспечения и отправить ее в Microsoft. Microsoft может использовать эту информацию для предоставления услуг и улучшения наших продуктов и услуг. Вы можете отключить телеметрию, как описано в репозитории. В программном обеспечении также есть некоторые функции, которые могут позволить вам и Microsoft собирать данные от пользователей ваших приложений. Если вы используете эти функции, вы должны соблюдать применимый закон, включая предоставление соответствующих уведомлений пользователям ваших приложений вместе с копией выписки Microsoft по конфиденциальности. Наше заявление о конфиденциальности находится по адресу https://go.microsoft.com/fwlink/?linkid=521839. Вы можете узнать больше о сборе данных и использовании в справочной документации и нашем заявлении о конфиденциальности. Использование вашего программного обеспечения работает как ваше согласие на эту практику.
Коллекция телеметрии включена по умолчанию.
Чтобы отказаться, установите переменную eNableTeLemetry на false в infra/main.parameters.json или в шаблоне Bicep infra/main.bicep . Его можно установить, используя следующую команду, когда проведининг выполняется с помощью Azure Developer CLI:
azd env set enableTelemetry false Этот проект может содержать товарные знаки или логотипы для проектов, продуктов или услуг. Уполномоченное использование товарных знаков или логотипов Microsoft подлежит и должно следовать указаниям Microsoft по товарной марке и брендам. Использование товарных знаков Microsoft или логотипов в модифицированных версиях этого проекта не должно вызывать путаницу или подразумевать спонсорство Microsoft. Любое использование сторонних товарных знаков или логотипов подвержена политике сторонних сторон.