Галоўная / Артыкулы

Azure OpenAI пры запуску крэдытаванні: назвы размешчэння, рэгіоны і правілы адрабаткі файла .env

Azure OpenAI для студэнтскіх крэдытав для лабораторых RAG: выберыце рэгіон, дзе ёсць мадэль, назваце імя размешчэння, а не імя модэлі, і не кладзіце ключы API ў git.

Выдавец: REACTAPP.TOP3 хв чытання677 слоў

Крыніцы: **How I Spent $1,000 of Microsoft’s Money (and Learned RAG)**

Студэнт пасляпрактычнага курсу звернуўся да Microsoft за падтрымкай для стартапаў з важлівым праектам і атрымаў 1 000 долераў у вачох Azure credits. Без зарэгістраванага бізнесу вышэйшыя рубрыкі не былі доступны, але гэтых крэдытав прыметнаўся для навучання і запуску агентаў RAG без лясців з власнага бюджэту. Бесплатны вычыслювальны рэсурс таксама зробіў Azure OpenAI болей доступным, чым толькі для карпоратыўных кліянтав.

Калі організацыя ужо выкарыстоўвае Azure, то Azure OpenAI часта ёсць явным выборам — а не складным обходнім шляхам.

Далей прыводзіцца практычны карэнт гутавання, укладаючы памылку ў называнні, якая часта змушвае марнаваць вечар.

Чаму Azure OpenAI, а не толькі публічныя API OpenAI?

Тыя ж мадэлі класу GPT, але разны прынцып работы:

  • Стан са адпаведнасцю — працуе ў межах тэнанта Azure пад існуючымі сертыфікатамі (SOC 2, HIPAA і падобныя)
  • Адаптаванне пад стандарты — Azure AD, Key Vault, App Service, які можна выкарыстоўваць без додатковых прыемнікаў
  • Ейдзінавана адследжванне віток — сумы выкарыстоўвання адзначаюцца разам з іншымі рachункамі Azure
  • Крэдыты для студэнтаў/стартапаў — рэальная можлівасць эксперыментаў
  • Для работадаўцоў, якія фокусуюцца на Azure, гэта ёстабельны варыянт.

    Настройка

    Прыямыя выкананні: падпіска на Azure, доступ да Azure OpenAI (затверджэнне не ўтвараецца мгновенна), Python 3.8+, VS Code або падобныя інструменты.

    1. Створыце рэсурс. Портал → “Azure OpenAI” → Стварыць. Выберыце падпіску, групу рэсурсаў і рэгіон.

    Спачатку пераканайцеся, чы гэты мадэль доступны ў вашам рэгіоне. Не кожны мадэль даступны ў всіх рэгіонах; адкрыць гэта пасля запуску марнуе час.

    Цэны: Standard S0 (крэдыты пакрываюць мадэль за прынцыпам pay-as-you-go).

    2. Размясціце мадэль у Azure AI Foundry. Выберыце «Размішчэння» → «Стварыць», пасля выберыце базовую мадэль (напрыклад gpt-4o) → задаце назву размішчэння.

    Назва мадэлі і назва размішчэння разныя. Назва мадэлі выбірае базовую мадэль; назва размішчэння — гэта спецыяльны пазначанне, якое неабходна выкарыстоўваць у вашам кодзе. Калі паслаць gpt-4o там, дзе кліент чакае пазначання размішчэння, гэта спрычынае памылкі 404.

    3. Клучы і канцэнтры. Выберыце «Рэсурс» → «Клучы і канцэнтры». Храніце іх у файле .env, ніколі не ў самым кодзе:

    AZURE_OPENAI_API_KEY=your-key-here
    AZURE_OPENAI_ENDPOINT=https://your-resource-name.openai.azure.com/
    AZURE_OPENAI_DEPLOYMENT_NAME=your-deployment-name-here
    AZURE_OPENAI_API_VERSION=2024-10-21
    

    Негайна дадзіце файл .env у спіс .gitignore.

    4. Інсталюйце SDK-ы

    pip install openai python-dotenv azure-identity
    

    5. Базавая функцыя завершэння чату

    import os
    from dotenv import load_dotenv
    from openai import AzureOpenAI
    
    load_dotenv()client = AzureOpenAI(
        api_key=os.getenv("AZURE_OPENAI_API_KEY"),
        azure_endpoint=os.getenv("AZURE_OPENAI_ENDPOINT"),
        api_version=os.getenv("AZURE_OPENAI_API_VERSION"),
    )response = client.chat.completions.create(
        model=os.getenv("AZURE_OPENAI_DEPLOYMENT_NAME"),  # deployment name, not model name
        messages=[
            {"role": "system", "content": "You are a helpful assistant."},
            {"role": "user", "content": "Explain RAG agents in simple terms."},
        ],
    )print(response.choices[0].message.content)
    

    6. Наступныя естэчныя крокі. Стрымінг, вызыванне функцый, апшукаўка дадзеных у Azure AI Search з можлівасцю выкарыстоўвання саеўых дадзеных, а таксама хостынг у App Service пасля таго, як шлях “hello-world” стане працэсным.

    Калькі пункты, на якія трэба зважаць

    • Несувпадэння рэгіёнаў — пераканайцеся ў наявнасці модэлю пры стварэнні рэсурса
    • Модэль проты імені развёрткі — коду патрабуецца імя развёрткі
    • Захаваныя у кодзе секрэты — толькі .env; ніколы не кэмітуйце іх
    • Змены версіі API — фіксуйце версію і пераглядзіце яе пасля апдэйтаў SDK
    • Выкарыстоўванне крэдытав — сачыце за выкарыстоўваннем токэнаў пад час працы з цыкламі RAG; включэнне дадзеных і чат таксама спрацоўваюць, нават калі ёсць “бесплатныя” крэдыты
    • Затрымкі у затверджэнні доступу — запрашайце Azure OpenAI якомога раней у хроналагічэскай структуры праекта

    За дапамою крэдытавання і правільнага назвы развяртання Azure OpenAI перэстаець выглядаць як заблокаваны корпоратыўны сховішча і стае практычным лабараторыям для эксперыментаванняў з RAG, якіе адпавядаюць способам, якія ужо вікорыстоўваюць багато компаній.

    Спрыяйце першаму успешнаму завершэнню задання як контрольным пункту, а потым негайна працаваць з маленькім цыклам RAG: заванесіце адны PDF у blob або Search, запрашаце тры фрагменты і заставіце алгорытм даўаць адпаведныя адказы, цытуючы іх. Такі парадок швэдзяўска выяўляе проблемы з рэгіонам, назвамі і правамі быстрэй, чым оптымаўванне інтэрфейса чат-бота. Установіце апавешчэнне пра выкорыстоўвання рэсурсаў у групе, каб эксперыментальныя працэсы не моглі таямна выкарыстаць усе крэдыты за ноч.