Sdílet prostřednictvím


Víceklientská architektura a služba Azure OpenAI

Azure OpenAI poskytuje přístup k výkonným jazykovým modelům OpenAI. Tento článek popisuje klíčové funkce Azure OpenAI, které jsou přínosné pro víceklientské řešení. Projděte si doporučené zdroje informací, které vám pomůžou naplánovat přístup a používat Azure OpenAI.

Modely izolace

Pokud máte víceklientské systémy, které používají službu Azure OpenAI, musíte rozhodnout o úrovni izolace, kterou vaši tenanti vyžadují. Model izolace byste měli určit na základě následujících faktorů:

  • Kolik tenantů plánujete mít?
  • Mají vaši tenanti požadavky na dodržování předpisů, které vyžadují izolaci sítě nebo infrastruktury?
  • Vyžadují vaše tenanti modely, které jsou jemně vyladěné na jejich vlastních datech?
  • Vyžadují vaše tenanty různé verze modelu nebo životní cyklus modelu?

Následující tabulka shrnuje přístupy k nasazení, které můžete použít při použití služby Azure OpenAI v systému s více tenanty:

Situace Vyhrazená služba Azure OpenAI Sdílená služba Azure OpenAI, vyhrazené nasazení modelu na tenanta Sdílená služba Azure OpenAI, nasazení sdíleného modelu Služba Azure OpenAI poskytovaná tenantem
Izolace dat Vysoká Střední Nízká Velký zájem
Izolace výkonu Vysoká Vysoká Nízká střední hodnota v závislosti na využití tokenu za minutu (TPM) pro každého tenanta. Vysoká
Složitost nasazení Nízká střední v závislosti na počtu tenantů. Střední, musí spravovat názvy a kvóty nasazení. Nízká Nepoužitelné, spravované zákazníkem.
Provozní složitost Nízká Střední Vysoká Nízké pro poskytovatele, vyšší pro tenanta.
Ukázkový scénář Nasazení jednoho tenanta vyžadující izolaci sítě od jiných tenantů Tenanti se specifickými požadavky na životní cyklus modelu nebo vyladěním požadavků. Velká víceklientová řešení se sdílenou aplikační vrstvou Tenanti s konkrétními požadavky na dodržování předpisů nebo vyladěním.

Vyhrazená služba Azure OpenAI

Pokud jste poskytovatelem služeb, zvažte nasazení instance Azure OpenAI pro každého tenanta ve vašem předplatném Azure. Tento přístup poskytuje izolaci dat pro každého tenanta. Při zvyšování počtu tenantů vyžaduje nasazení a správu rostoucího počtu prostředků Azure OpenAI.

Tento přístup použijte, pokud máte samostatná nasazení aplikací pro každého tenanta nebo pokud potřebujete obejít omezení, například kvótu nebo žádost za minutu. Další informace najdete v tématu Kvóty a limity Azure OpenAI.

Následující diagram znázorňuje model azure OpenAI pro každého tenanta v předplatném poskytovatele.

Diagram znázorňující model Azure OpenAI pro každého tenanta v předplatném poskytovatele

Sdílená služba Azure OpenAI

Můžete se rozhodnout sdílet instanci Azure OpenAI mezi více tenanty. Prostředek Azure OpenAI se nasadí ve vašem předplatném Azure (poskytovatele služeb). Zodpovídáte za jeho správu. Toto řešení je nejjednodušší implementovat, ale poskytuje nejnižší izolaci dat a izolaci výkonu.

Sdílení prostředku Azure OpenAI neposkytuje segmentaci zabezpečení pro každé nasazení modelu. Tenant může používat model, který nemá oprávnění k použití. Z tohoto důvodu se při používání jemně vyladěných modelů vyhněte sdílení instance Azure OpenAI, protože můžete zveřejnit citlivé informace a povolit neoprávněný přístup k datům nebo prostředkům specifickým pro tenanta.

Sdílení instance Azure OpenAI mezi více tenanty může také vést k problému s hlučným sousedem . U některých tenantů to může způsobit vyšší latenci. Musíte také nastavit, aby kód aplikace byl víceklientská. Pokud například chcete zákazníkům účtovat poplatky za náklady na spotřebu sdílené instance Azure OpenAI, implementujte logiku, která bude sledovat celkový počet tokenů pro každého tenanta ve vaší aplikaci.

Můžete také nasadit několik sdílených instancí Azure OpenAI. Pokud například postupujete podle vzoru Razítka nasazení, nasaďte do každého razítka sdílenou instanci Azure OpenAI. Pokud nasadíte řešení s více oblastmi, měli byste nasadit Azure OpenAI v každé oblasti do:

  • Vyhněte se latenci provozu mezi oblastmi.
  • Podpora požadavků na rezidenci dat
  • Povolte použití regionální služby Azure OpenAI v jiných službách, které vyžadují nasazení stejné oblasti.

Pokud máte sdílenou instanci Azure OpenAI, je důležité zvážit její limity a spravovat kvótu.

Následující diagram znázorňuje sdílený model Azure OpenAI.

Diagram znázorňující sdílený model Azure OpenAI

Když nasadíte sdílenou službu Azure OpenAI, můžete se rozhodnout, jestli jsou sdílená i nasazení modelu v rámci služby, nebo jestli jsou vyhrazená konkrétním zákazníkům.

Nasazení sdíleného modelu mezi tenanty

Sdílení nasazení modelu mezi tenanty zjednodušuje provozní zátěž, protože ke správě a verzí modelů, které chcete sledovat, máte méně nasazení. Naplánujte použití nasazení sdíleného modelu, pokud je to možné, a pokud potřebujete možnosti, které nabízejí, vytvořte pouze vyhrazená nasazení modelu.

Nasazení vyhrazeného modelu na tenanta

Můžete vytvořit nasazení modelu pro každého tenanta nebo pro tenanty, kteří mají zvláštní požadavky, které není možné splnit pomocí nasazení sdíleného modelu. Mezi běžné důvody použití nasazení vyhrazeného modelu pro tenanta patří:

  • Správa kvót a nákladů: Usnadňuje přidělování čipu TPM specifické pro tenanty sledováním počtu tokenů, které každý model používá, což umožňuje přesně přidělit náklady a spravovat využití jednotlivých tenantů. Pokud používáte zřízené jednotky propustnosti (PTU), můžete je přiřadit konkrétním zákazníkům a použít jiné fakturační modely pro jiné zákazníky.

  • Zásady filtrování obsahu: Někdy může konkrétní tenant vyžadovat jedinečnou zásadu filtrování obsahu, například seznam zakázaných slov specifických pro tenanta. Zásady filtrování obsahu zadáte v oboru nasazení modelu.

  • Typy modelů a verze: Pro různé tenanty možná budete muset použít různé modely nebo verze modelu. Tenant může také vyžadovat vlastní proces správy životního cyklu modelu.

  • Vyladění specifické pro tenanta: Pokud pro každého tenanta vytvoříte jedinečné jemně vyladěné modely, musíte pro každý jemně vyladěný model vytvořit samostatné nasazení modelu.

    Mějte na paměti, že pro většinu případů použití se nevyžaduje vyladění. Obvykle je lepší model uzemnění pomocí Azure OpenAI na vašich datech nebo jiného přístupu rozšířené generace (RAG).

  • Rezidence dat: Tento přístup podporuje odlišné požadavky na rezidenci dat. Můžete například poskytnout nasazení regionálního modelu pro tenanta s přísnými potřebami rezidence dat a použít globální nasazení modelu pro ostatní tenanty bez striktních potřeb.

Každé nasazení modelu má svou vlastní odlišnou adresu URL, ale je důležité si pamatovat, že základní modely se sdílejí s ostatními zákazníky Azure. Používají také sdílenou infrastrukturu Azure.

Azure OpenAI nevynucuje řízení přístupu pro každé nasazení modelu, takže vaše aplikace potřebuje řídit, kterého tenanta může dosáhnout nasazení modelu.

Prostředek Azure OpenAI poskytnutý tenantem

V některých situacích můžou vaši tenanti vytvořit instanci Azure OpenAI ve svých vlastních předplatných Azure a udělit aplikaci přístup k ní. Tento přístup může být vhodný v následujících situacích:

  • Tenanti mají od Microsoftu konkrétní kvóty a oprávnění, například přístup k různým modelům, konkrétní zásady filtrování obsahu nebo použití zřízené propustnosti.
  • Tenant má jemně vyladěný model, který musí použít z vašeho řešení.
  • Ke zpracování a odesílání dat prostřednictvím instance Azure OpenAI spravované zákazníkem vyžadují komponentu ve svém prostředí.

Pokud chcete získat přístup k instanci Azure OpenAI v předplatném vašeho tenanta, tenant musí vaší aplikaci poskytnout přístup. Vaše aplikace se musí ověřit prostřednictvím své instance Microsoft Entra. Jedním z přístupů je publikování víceklientové aplikace Microsoft Entra. Následující pracovní postup popisuje kroky tohoto přístupu:

  1. Tenant zaregistruje víceklientní aplikaci Microsoft Entra ve vlastním tenantovi Microsoft Entra.
  2. Tenant udělí víceklientské aplikaci Microsoft Entra odpovídající úroveň přístupu k prostředku Azure OpenAI. Tenant například může aplikaci přiřadit roli uživatele služeb Azure AI pomocí řízení přístupu na základě role (RBAC).
  3. Tenant poskytuje ID prostředku prostředku Azure OpenAI, který vytvoří.
  4. Kód aplikace může použít instanční objekt přidružený k víceklientské aplikaci Microsoft Entra ve vaší vlastní instanci Microsoft Entra pro přístup k instanci Azure OpenAI tenanta.

Případně můžete požádat každého tenanta, aby vytvořil instanční objekt, který má vaše služba používat, a poskytnout vám jeho přihlašovací údaje. Tento přístup vyžaduje bezpečné ukládání a správu přihlašovacích údajů pro každého tenanta, což je potenciální odpovědnost za zabezpečení.

Pokud tenanti nakonfigurují řízení přístupu k síti ve své instanci Azure OpenAI, ujistěte se, že k nim máte přístup.

Následující diagram znázorňuje model Azure OpenAI pro každého tenanta v předplatném tenanta.

Diagram znázorňující model Azure OpenAI pro každého tenanta v předplatném tenanta

Funkce služby Azure OpenAI, které podporují víceklientské prostředí

Rozhraní API asistentů

Rozhraní API asistentů přidává funkce do vaší služby Azure OpenAI, která je vhodná pro vytváření asistentů AI. Zahrnuje schopnost volat nástroje a rozhraní API a také vyhledávací soubory k základu odpovědí, které model generuje. Umožňuje správu trvalých konverzačních vláken službou a může generovat a spouštět kód v prostředí v izolovaném prostoru (sandbox). Aby rozhraní API asistentů podporovalo tyto funkce, musí ukládat nějaká data.

Při použití rozhraní API asistentů ve víceklientské řešení můžete vytvořit asistenty vyhrazené pro jednoho tenanta nebo sdílet asistenta mezi více tenanty. Je důležité zvážit izolaci tenanta ve všech uložených datech, zejména u sdílených asistentů. Měli byste například zajistit, aby se konverzační vlákna ukládala pro každého tenanta samostatně.

Rozhraní API asistentů podporuje vyvolání funkcí, které odesílá pokyny k aplikacím pro vyvolání funkcí a argumenty, které se mají zahrnout. Ujistěte se, že všechna volání funkcí, která provedete, jsou víceklientských, například zahrnutím ID tenanta do volání podřízeného systému. Ověřte ID tenanta v rámci vaší aplikace a nespoléhejte na jazykový model, abyste rozšířili ID tenanta za vás.

Azure OpenAI na vašich datech

Azure OpenAI On Your Data umožňuje rozsáhlému jazykovému modelu přímo dotazovat zdroje znalostí, jako jsou indexy a databáze, v rámci generování odpovědi z jazykového modelu.

Při vytváření požadavku můžete zadat zdroje dat, které se mají dotazovat. V víceklientské řešení zajistěte, aby vaše zdroje dat byly s víceklientské a že pro vaše požadavky můžete zadat filtry tenantů. Odpovídajícím způsobem rozšíříte ID tenanta do zdroje dat. Předpokládejme například, že dotazujete Azure AI Search. Pokud máte data pro více tenantů v jednom indexu, zadejte filtr, který omezí načtené výsledky na ID aktuálního tenanta. Nebo pokud jste pro každého tenanta vytvořili index, ujistěte se, že jste zadali správný index pro aktuálního tenanta.

Přispěvatelé

Tento článek spravuje Microsoft. Původně byla napsána následujícími přispěvateli.

Hlavní autor:

Další přispěvatelé:

Pokud chcete zobrazit neveřejné profily LinkedIn, přihlaste se na LinkedIn.