Datová platforma pro úlohy AI v Azure
Datová platforma je integrovaná sada technologií, které jsou navržené pro správu požadavků na úlohy ingestováním zdrojových dat a následným filtrováním, agregací a přípravou na spotřebu.
Data mají odlišné charakteristiky založené na zamýšleném použití. Důrazně doporučujeme, abyste pochopili principy dobrého návrhu datových kanálů, než prozkoumáte technologické schopnosti, které tento článek popisuje. Další informace najdete v tématu Návrh trénovacích dat a návrh podkladových dat.
Platforma také splňuje požadavky na úložiště, když jsou data uložená v určitých bodech kanálu. Pokud je úloha složitá a zpracovává rozsáhlá data, můžete distribuovat úlohy kanálu mezi různé komponenty. V případě jednodušších případů použití vyhodnoťte, jestli můžete použít zdrojová data v úložišti, které nabízí tyto kombinované možnosti.
Položte si následující otázky, abyste se vyhnuli návrhu příliš složité architektury pro datovou platformu. Vždy je nejlepší udržovat věci jednoduché, když budete moct.
- Může mít vaše aplikace očekávaný prediktivní výkon tím, že ingestuje data z jednoho zdroje?
- Podporuje vaše počáteční volba úložiště dat možnosti datových skladů?
- Jsou zdrojová data už optimalizovaná pro vyhledávání umělé inteligence?
Pokud na tyto otázky odpovíte ano, můžete architekturu zjednodušit tím, že aplikaci umožníte přímý přístup ke zdroji dat. Tento přístup eliminuje potřebu komponent architektury velkých objemů dat, jako je příjem dat, integrace analytického úložiště a externí zpracování dat. Pokud zdrojová databáze dokáže zpracovat požadovaná hledání, může být praktickou možností integrace indexu vyhledávání přímo do zdrojové databáze. Ujistěte se, že zdroj může nákladově efektivně škálovat, aby splňoval nové požadavky.
Azure Cosmos DB například podporuje vektorové vyhledávání, takže možná nebudete potřebovat další index. Dalším případem použití je použití replik pro čtení jako koncových bodů pro operace vyhledávání. U databází SQL, které mají repliky pro čtení, můžou přímé vyhledávání na tyto repliky optimalizovat výkon. Využijte integrované funkce databáze a zjednodušte architekturu co nejvíce.
Architektura datové platformy pro rozsáhlé úlohy je složitější.
Ingestování dat z více zdrojů dat a orchestrace hledání na různých platformách se může stát složitým a neefektivním. Navíc stále potřebujete nějaké extrakce, transformace a načítání (ETL); extrakce, načítání a transformace (ELT); nebo extrahujte a načtěte procesy (EL) pro změnu tvaru dat v úložišti dat. Scénář je složitější, protože data vyžadují více zpracování. Abyste mohli zpracovat kompletní kanál od příjmu dat až po obsluhu dotazů, musíte do architektury přidat mnoho komponent. Mnoho technologií pro velké objemy dat je vysoce specializované a sestavené pro efektivní zpracování těchto úloh zpracování.
Jednou z takových technologií je vyhledávací index. Hlavní výhodou přidání samostatného indexu je jeho schopnost efektivně spravovat dotazy a zpracovávat velké objemy dat s vysokou propustností. Tato funkce přesměruje funkce AI z původního zdroje dat, aby se index mohl soustředit na hlavní funkci a obsluhovat dotazy.
Zvolte platformu na základě konkrétních funkcí a účelu a zvažte své funkční a technické požadavky. Pokud se vaše architektura vyvíjí tak, aby zpracovávala složité případy použití, zaměřte se na následující části týkající se agregovaných úložišť dat, zpracování kanálů a indexů vyhledávání.
Doporučení
Tady je souhrn doporučení uvedených v tomto článku.
Doporučení | Popis |
---|---|
Vytvářejte zabezpečená, výkonná a nákladově efektivní úložiště dat. | Klíčovou součástí datové platformy je úložiště dat, které agreguje data z více zdrojů a umožňuje integraci s různými úlohami integrace. To pomáhá vaší úloze provádět ve velkém měřítku. Nezapomeňte zkontrolovat různé funkční a nefunkční požadavky vašeho úložiště dat, abyste zajistili nákladově efektivní nasazení. ▪ Důležité informace o ukládání agregovaných dat |
Dodržujte osvědčené postupy pro příjem a zpracování dat. | Vysoce kvalitní data pomáhají zlepšit spolehlivost vašich úloh a prostředí koncového uživatele. Zvažte požadavky vaší úlohy a také klíčové osvědčené postupy pro vytváření efektivních procesů příjmu dat a přechodu dat, které pomáhají udržovat vysoce kvalitní panel. ▪ Důležité informace o zpracování dat |
Návrh spolehlivých a relevantních vyhledávacích indexů | Snažte se dosáhnout vysoce výkonného úložiště dat jen jednou pro čtení, které efektivně zpracovává improvizované a přibližné dotazy a poskytuje relevantní výsledky do uživatelské základny, a to i v případě, že dotazy nejsou přesné. ▪ Důležité informace o indexu vyhledávání |
Zajistěte, aby funkční úložiště dat fungovala ve velkém měřítku. | V závislosti na funkčních požadavcích vaší úlohy možná budete muset vytvořit funkční úložiště dat, například pro odvozování offline. Je důležité, abyste vytvořili úložiště dat s ohledem na jejich určenou funkci a použili osvědčené postupy pro tuto funkci. ▪ Důležité informace o úložišti funkcí ▪ Důležité informace o offline odvozování úložiště dat |
Důležité informace o ukládání agregovaných dat
V úlohách AI se data procházejí různými fázemi úložiště a zpracování pomocí kanálů, které orchestrují pracovní postupy mezi těmito fázemi. Jednou z klíčových fází je úložiště dat, které obsahuje data, která se ingestují a agregují z více zdrojů. Toto úložiště potřebujete ke zpracování, dokud data nedosáhne vhodného stavu pro trénování nebo indexování. Primárním cílem je zajistit, aby data přesně odrážela svůj zdroj.
Poznámka:
Alternativním přístupem je přímý přístup ke zdrojům dat. Tento přístup ale může vést k problémům s výkonem, protože může přetížit zdrojové systémy funkcemi AI. Můžou se také vyskytovat problémy s přístupem k datům. Pokud se chcete těmto problémům vyhnout, doporučujeme zkopírovat data do tohoto úložiště.
Datová platforma pro toto úložiště by měla splňovat standardy zabezpečení použité ve zdrojích dat, být nákladově efektivní a podporovat integraci s úlohami zpracování ETL, ELT a EL. Možnosti se liší od základního úložiště po technologie pro velké objemy dat na základě objemu dat. Zvolte úsporné úložiště, které vám pomůže dosáhnout dostatečné spolehlivosti a výkonu.
Následující část obsahuje pokyny k možnostem, které je potřeba vzít v úvahu při výběru technologie úložiště dat. Další informace najdete v tématu Kanály zpracování dat.
Požadavky na funkce
Dokáže platforma zpracovávat různé formáty dat?
Úložiště dat by mělo být schopné ukládat různé formáty dat a v případě potřeby je transformovat do jiných formátů.
Předpokládejme, že kanál příjmu dat získává data z relační databáze a souboru Parquet, takže podporuje strukturovaná i částečně strukturovaná data. Relační data chcete převést na formát Parquet v souladu s definicemi schématu. Datová platforma by měla mít integrované funkce pro tuto transformaci, aniž byste museli psát vlastní kód.
Očekáváte, že uložíte více verzí dat?
Hodnoty dat a schémata se můžou v průběhu času měnit a správa více verzí dat je důležitá.
Zdrojové systémy obvykle ukládají jenom aktuální data, nikoli historická data. Pokud je důležité uchovávat historická data, budete možná muset duplikovat velké datové sady ze zdrojových systémů. V tomto případě může správa verzí znejistit aktuální data z historických dat.
V některých případech může být potřeba uchovávat kopie dat pro různé případy použití. Pro podporu tohoto scénáře možná budete muset forkovat data. Každý fork může nezávisle ztlumit, aby se zlepšila jeho kvalita a použitelnost. Vaše datová platforma by měla mít možnost udržovat správnou verzi těchto forků.
Vaše datová platforma by měla být schopná ukládat verze dat v průběhu času, aby poskytovala historický kontext. Tato contetxt je užitečná pro zpracování a trénování modelů AI, protože nabízí více pozorování, nikoli jen jeden bod v čase.
Má platforma integrované možnosti správy životního cyklu dat?
Správa životního cyklu dat (DLM) je proces správy dat od jejího vytvoření až po jeho odstranění s fázemi, jako je shromažďování dat, úložiště, využití, archivace a likvidace.
Bez DLM se data můžou nekontrolovatelně, což často vede k několika kopiím při procházení úrovní kvality. Datová platforma by měla mít funkce DLM, aby se zabránilo nárůstu nevázaných dat.
Zvažte tento scénář. Předzpracovací krok se musí opakovat, aby bylo možné upřesnit data, dokud nedosáhne přijatelné kvality pro účely trénování. Vaše datová platforma by měla být schopná odstranit přechodné kopie dat.
V některých případech může být potřeba uchovávat data pro regulační audity. Datová platforma by měla mít možnosti studeného úložiště pro zřídka přístupná data, abyste je mohli archivovat za nižší cenu.
Podporuje platforma funkce zásad správného řízení dat?
Auditovatelnost je důležitým aspektem úloh umělé inteligence. Úložiště dat by mělo udržovat záznamy auditu, které můžou sledovat přístup k datům, zajistit ochranu osobních údajů a pochopit původy dat.
Pomocí funkce datového slovníku můžete spravovat metadata, datové typy, účely a rodokmen. Tato funkce je obzvláště důležitá, když se data ingestují z více zdrojů.
Plánujete trénování s produkčními daty?
Existují dva přístupy k nasazením, nasazení modelu a nasazení kódu. V nasazení modelu se produkční data používají při vývoji, což vyžaduje přísné bezpečnostní opatření. V nasazení kódu model neuvidí produkční data, dokud nebude v produkčním prostředí. I když nasazení kódu zjednodušuje obavy zabezpečení ve vývojovém prostředí, může zvýšit náklady na výpočetní prostředky. Bez ohledu na to, jaký přístup zvolíte, by vaše datová platforma měla podporovat samostatná prostředí pro vývoj a produkci.
Upřednostňujete funkce pohodlí před klíčovými funkčními funkcemi?
Když zvolíte datovou platformu pro AI nebo strojové učení, nespoléhejte jenom na její možnosti poznámkového bloku. I když jsou poznámkové bloky užitečné pro průzkumnou analýzu dat, neměly by být rozhodujícím faktorem. Výpočetní prostředky pro poznámkové bloky jsou obvykle mimo rozsah úložiště agregačních dat. Obvykle se integrují s dalšími prostředky, jako je Azure Machine Learning.
Nefunkční požadavky
Kolik dat očekáváte, že se budou ukládat?
Úlohy AI generují velké množství dat. Svazek se může výrazně zvýšit kvůli více verzím a dalším metadatem.
Škálovatelnost úložiště a propustnosti je důležitá. Datová platforma musí efektivně využívat data z kanálu příjmu dat, zatímco zpracovává objem dat, spravuje souběžné zápisy a zajišťuje výkon jednotlivých zápisů bez snížení výkonu. Tato kritéria platí také pro kanál zpracování, který čte, zpracovává a dokonce zapisuje zpět do úložiště.
Při rozhodování zvažte celý proces, protože k příjmu a zpracování často dochází současně. Návrh musí být schopný spravovat časté přesuny a zpracování dat. Datová platforma by měla nabízet vysokou úroveň paralelismu pro efektivní zpracování dat.
Technologie platformy by měla generovat telemetrii, která poskytuje smysluplný přehled o propustnosti a výkonu operací čtení a zápisu.
Je toto úložiště dat důležitou komponentou, která přispívá k cíli spolehlivosti úlohy?
Zvolte úložiště dat, které vylepšuje spolehlivost a škálovatelnost pomocí více instancí. Úložiště velkých objemů dat často mají integrovaný kontroler, který orchestruje zpracování dat napříč instancemi. Pokud selže jedna kopie, můžete použít jinou.
Mějte na paměti, že data neslouží ke svému účelu, pokud nejsou správná nebo přístupná. Datová platforma by měla zaručit odolnost a zajistit, aby data zůstala nedotčená. Ujistěte se, že rozhraní API, která se dotazují na data, jsou přístupná. Kromě toho zvažte úložiště dat, která mají funkce zálohování.
Obecně platí, že tato data nemusíte zálohovat. Pokud jsou ale náklady na agregaci dat pokaždé, když jsou od začátku výrazně vysoké, můžete zvážit dosazování dat ze zálohy.
Máte nějaká omezení nákladů?
Pokud jsou dostatečná spolehlivost a výkon dat, zvažte dopad nákladů.
Systém by měl být optimalizovaný pro zápis jednou, číst mnoho , aby nedocházelo k nadměrnému překročení úložiště dat. Trénovací nebo uzemnění dat jsou důležitá, ale ne kritická jako produkční databáze, která vyžaduje okamžitou odezvu. Zaměřuje se na vyrovnávání nákladů s dostatečnou efektivitou, aby se maximalizovala návratnost investic.
Předchozí požadavky můžou přirozeně vést k tomu, že zvažujete použití datového jezera, protože nabízí DLM, úrovně kvality, pozorovatelnost a podporu pro různé formáty souborů. Pokud vaše úloha už používá datové jezero, využijte tento prostředek ke splnění vašich potřeb umělé inteligence. Alternativně můžete zvolit další možnosti úložiště, jako je Azure Blob Storage, které poskytují určitou úroveň DLM, možnosti monitorování a vysoké míry transakcí.
Důležité informace o zpracování dat
Pokud chcete zvýšit svůj nástroj, musíte zpracovávat data v agregovaném úložišti dat. Kanály ETL provádějí tuto úlohu, která je nejdůležitější v následujících bodech:
Vrstva příjmu dat
Kanál zodpovídá za shromažďování dat z různých zdrojů a jejich přesun do agregovaného úložiště dat. Během tohoto procesu kanál obvykle provádí základní předběžné zpracování a může dokonce strukturovat data v dotazovatelném formátu.
Pokud chcete minimalizovat potřebu vlastního kódu, doporučujeme tuto zodpovědnost přesměrovat na datovou platformu. Když vyberete technologii, zvažte charakteristiky ETL potřebné k podpoře trénování a rozšiřování modelu.
Vrstva zpracování
Data z agregovaného úložiště dat procházejí rozsáhlým zpracováním, než je možné je použít k indexování nebo případům použití trénování modelu. Kanál zpracování vyžaduje úrovně spolehlivosti a škálování, které se podobají kanálu příjmu dat. Hlavním rozdílem je typ zpracování provedený na datech.
Tento proces zahrnuje významné změny rozsahu a restrukturalizaci údajů. Tento proces zahrnuje úlohy, jako je rozpoznávání entit, integrace dalších dat do sady dat a provádění vyhledávání. Tento proces může také zahrnovat odstranění nepotřebných dat a použití logiky dat prostřednictvím platformy pro orchestraci dat.
Fáze zpracování dat může vytvořit různé výstupy, které se dostanou do různých cílů pro různé záměry. Jejím hlavním cílem je připravit a přenést data z agregovaného úložiště dat pro spotřebu konečným cílem. Příjemce může buď v případě potřeby vyžádat data, nebo vrstva zpracování může odesílat data, jakmile je připravená.
Poznámka:
V kontextu strojového učení a generování umělé inteligence je důležité rozlišovat mezi procesy ETL, ELT a EL. Tradiční ETL je zásadní pro datové sklady a objektově-relační mapování, kde kvůli omezením schématu musí být data transformována před načtením do cílového systému. ELT zahrnuje extrakci dat, jejich načtení do datového jezera a jejich následnou transformaci pomocí nástrojů, jako je Python nebo PySpark. V generační umělé inteligenci, zejména pro načítání rozšířené generace (RAG), proces často zahrnuje extrakci a načítání dokumentů do úložiště jako první, následované transformacemi, jako jsou bloky dat nebo extrakce obrázků.
Následující část obsahuje pokyny, které je potřeba vzít v úvahu při výběru technologie zpracování dat, která má funkce ETL.
Požadavky na funkce
Jaká je podpora připojení ke zdrojům dat?
Data, která je potřeba zpracovat, můžou být uložená v relačních databázích, zdrojích velkých objemů dat nebo v různých řešeních úložiště.
Většina technologií zpracování dat podporuje předem připravené integrace, které umožňují připojení k různým zdrojům dat bez psaní kódu. Konektory mají funkce, jako je možnost kopírování dat ze zdroje do jímky, vyhledávání a použití určité formy zásad správného řízení dat. Existují nástroje, které nabízejí funkce přetažení, aby se zabránilo zbytečnému kódování.
Zvolte datovou platformu, která usnadňuje integraci s očekávanými zdroji dat.
Může platforma zpracovávat různé formáty dat?
Data můžou být v různých formátech, jako jsou strukturovaná data, jako jsou databáze a JSON, nestrukturovaná data, jako jsou obrázky a dokumenty, nebo streamovaná data, jako jsou data ze zařízení Internetu věcí. Kanály by měly být schopné zpracovat očekávané typy souborů.
Nabízí platforma funkce pro přípravu a změnu rozsahu dat?
Musíte zpracovávat data, která chcete použít pro trénování nebo rozšiřování, dokud nebudou vhodná pro trénování, vyladění nebo indexování. Strategie návrhu dat by měly explicitně nastínit požadavky.
Následující články popisují konkrétní aspekty:
V rámci základního čištění platforma odstraňuje duplicity, vyplňuje chybějící hodnoty a eliminuje nadbytečný šum během příjmu dat. Pro určité případy použití, jako je implementace vzoru RAG, doporučujeme, abyste bloky dat malými písmeny.
I když jsou tyto kroky předběžného zpracování nezbytné, musí platforma podporovat také bohatou manipulaci s daty, která jsou specifická pro vaše potřeby. Tento proces zahrnuje načítání, změny rozsahu a transformaci dat. U určitých modelů musí být platforma schopná dotazovat externí zdroje pro analýzu dokumentů, jako je analýza dokumentů nebo jiné nástroje AI. Tato práce je nutná k přípravě dat a rozšiřování dat.
Pokud vaše úložiště dat podporuje tuto úroveň zpracování, můžete tuto fázi lokalizovat v úložišti, aniž byste ji přesunuli jinam. Jinak potřebujete externí technologii, jako je Azure Databricks nebo Azure Data Factory. Tyto technologie jsou vhodné pro přesouvání dat a provádění manipulací, jako je filtrování, vyplňování chybějících hodnot a standardizace velikosti písmen řetězců. U složitějších úloh se obvykle vyžaduje platforma pro hostování úloh. Fondy Sparku můžete použít k orchestraci velkých objemů dat.
V některých případech použití můžete chtít tuto odpovědnost externě externalizovat pro příjemce dat. Například modely AI, které používají strojové učení, nabízejí možnosti zpracování úloh ke čtení, manipulaci s daty a zápisu dat pomocí vlastního kódu Pythonu.
Dalším příkladem je implementace RAG. Běžným krokem zpracování je vytváření bloků dat, kde je dokument rozdělený na několik bloků dat a každý blok dat se stane řádkem v indexu. Ukládá také vložené objekty, které služba OpenAI často generuje pro tyto bloky dat. Ve vyhledávání AI se tento proces orchestruje v rámci pracovního postupu indexování bez ohledu na to, jestli se používá OpenAI nebo Azure AI Search.
Je k dispozici integrovaný orchestrátor pro správu pracovních postupů?
Úlohy zpracování jsou modulární a běží jako úlohy. Platforma by měla mít možnosti orchestrace, které rozdělí pracovní postup na kroky nebo úlohy. Každá úloha by měla být nezávisle definovaná, spuštěná a monitorovaná.
U složitých pracovních postupů závisí určité kroky na úspěšném dokončení předchozích kroků. Orchestrátor by měl zpracovávat závislosti úloh a zajistit, aby byly úkoly dokončeny ve správném pořadí.
Návrh dat je iterativní proces, takže nástroj orchestrátoru by měl být dostatečně flexibilní, aby bylo možné snadno upravovat pracovní postupy. Měli byste být schopni vkládat nové kroky nebo upravovat stávající kroky, aniž byste museli přepisovat velké části kódu.
Data Factory je oblíbená volba, protože poskytuje bohatou sadu funkcí pro správu pracovních postupů dat. Azure Databricks může také spravovat složité pracovní postupy a plánovat a monitorovat úlohy. Měli byste také zvážit důsledky nákladů. Funkce Azure Databricks můžou být například rozsáhlé, ale jsou také nákladné. Open source alternativní možnost, jako je Apache NiFi, může být nákladově efektivnější.
Na tom, který nástroj zvolíte, nakonec závisí na tom, co vaše organizace umožňuje, a na dovednostech, se kterými se tým úloh zabývá.
Nefunkční požadavky
Když zvolíte kanál zpracování, je důležité vyvážit propustnost a pozorovatelnost. Kanál musí spolehlivě zpracovat a přistát potřebná data pro modely nebo indexy v dostatečném časovém rámci. Měl by být dostatečně jednoduchý, aby podporoval vaše aktuální potřeby a byl škálovatelný pro budoucí růst. Týmy musí rozhodnout, kolik potřebují, aby platformu v budoucnu prokázaly, aby se zabránilo technickému dluhu později. Mezi klíčové aspekty patří frekvence a objem příjmu dat, spolehlivost procesu a potřeba pozorovatelnosti k okamžitému monitorování a řešení problémů.
Kolik dat očekáváte ingestování?
U fází příjmu a zpracování zvažte škálovatelnost a rychlost zpracování úloh platformy. Například očekáváte, že denně načtete 10 terabajtů dat do indexu nebo pro trénování modelu. Platforma pro příjem dat by měla být schopná zpracovat tolik svazků a s očekávanou propustností. V tomto případě nemusí být použití Azure Logic Apps proveditelné, protože by mohlo selhat pod takovou zátěží. Místo toho je služba Data Factory vhodnější pro toto škálování zpracování dat.
Jedním ze způsobů zpracování velkého objemu je paralelismus, protože umožňuje efektivnější zpracování a zpracování dat. Platformy, jako je Azure Databricks, můžou orchestrovat úlohy vytvořením více instancí pro stejnou úlohu a efektivní distribucí zatížení.
Zvažte také tolerovatelnou latenci a složitost úloh. Čištění dat například zahrnuje ověření a potenciálně nahrazení neplatných polí nebo maskování citlivých informací. Tyto úkoly, i když jsou základní, vyžadují významné zdroje, protože každý řádek se zpracovává jednotlivě, což se přidává k celkovému času.
Jaké možnosti monitorování potřebujete?
Kanály zpracování dat by měly mít možnosti monitorování a poskytovat přehled o výkonu a stavu úloh kanálu.
Musíte být schopni sledovat průběh úloh. Předpokládejme, že kanál spouští úlohu čištění dat, která se nedokončí nebo dokončí částečně. Může to mít vliv na kvalitu dat, se kterými je model natrénovaný, což může mít vliv na prediktivní výkon.
Podobně jako u jiných komponent v úloze byste měli povolit protokoly, metriky a výstrahy datového kanálu, abyste porozuměli jeho chování. Shromážděte a analyzujte metriky výkonu, abyste porozuměli aspektům efektivity a spolehlivosti.
Identifikujte případné mezery v integrované telemetrii a určete, jaké další monitorování potřebujete implementovat. Toto monitorování může zahrnovat přidání vlastního protokolování nebo metrik pro zaznamenání konkrétních podrobností o krocích úlohy.
Jakou spolehlivost očekáváte u platformy pro zpracování dat?
Spolehlivost kanálu zpracování dat se liší v závislosti na volbě platformy. I když služba Logic Apps má možnosti orchestrace, nemusí být tak spolehlivá jako Data Factory. Služba Data Factory hostovaná v clusteru Azure Kubernetes Service (AKS) může mít různé charakteristiky spolehlivosti.
Nastavení s jednou instancí se považují za body selhání. Zvolte platformu, která podporuje funkce spolehlivosti, například více instancí, aby splňovala vaše požadavky.
Platforma by také měla podporovat funkce odolnosti. Orchestrátor by například měl automaticky opakovat neúspěšnou úlohu, což snižuje potřebu ručních restartování.
Dávkové zpracování může být méně spolehlivé než odvozování v závislosti na požadavcích na aktuálnost a latenci dat. Pokud dojde k týdennímu trénování a zpracování trvá jeden den, jsou občasná selhání přijatelná, protože je dostatek času na opakování.
Existují nějaká omezení nákladů?
Když zvažujete nákladovou efektivitu kanálu zpracování dat, je důležité zvolit řešení, které vyhovuje vašim potřebám bez zbytečných výdajů. Pokud vaše požadavky neodůvodňují pokročilé funkce Azure Databricks, může být dostatečná úspornější možnost, jako je Data Factory. Opensourcové nástroje, jako je Apache Airflow nebo Apache NiFi, navíc můžou poskytovat robustní funkce s nižšími náklady. Klíčem je vyhnout se nadměrnému využití funkcí, které nepotřebujete, a vybrat platformu, která vyrovnává funkčnost a nákladovou efektivitu.
Jaké jsou požadavky na zabezpečení pro pracovní postupy a data, která zpracováváte?
Mějte přehled o požadavcích na zabezpečení, ochranu osobních údajů a rezidenci dat. Představte si například všechny geografické zákonné požadavky. V souladu s požadavky na rezidenci dat zajistíte, aby se data ukládaly a zpracovávaly v konkrétních oblastech. Možná budete muset spustit samostatné kanály pro různé oblasti, jako je jeden pro Evropu a další pro Ameriku, abyste splnili místní předpisy pro dodržování předpisů.
Platforma datového kanálu by měla podporovat správu identit a přístupu, aby se zajistilo, že pouze autorizované identity mají přístup ke konkrétním úlohám nebo krokům v rámci pracovních postupů. Pokud se například váš proces ETL skládá z několika pracovních postupů a jeden z nich zpracovává vysoce důvěrná data, platforma by vám měla umožnit omezit přístup k danému pracovnímu postupu a současně zachovat přístup k ostatním uživatelům. Tato funkce vám pomůže splnit požadavky na zabezpečení bez nutnosti samostatných platforem pro různé úrovně citlivosti dat. V ideálním případě by platforma měla poskytovat integrovanou podporu takové izolace, která umožňuje efektivní a zabezpečenou správu dat.
Kanály zpracování dat můžou výstupní data buď do indexu vyhledávání, nebo do trénovacího kanálu modelu. V závislosti na případu použití se podívejte na oddíly v indexech vyhledávání nebo úložištích funkcí.
Důležité informace o indexu vyhledávání
Index vyhledávání je navržený tak, aby ukládal kontextová nebo uzemněná data pro odeslání do koncového bodu odvozování modelu spolu s výzvou. Obě volání, dotaz indexu a vyvolání koncového bodu odvozování, probíhá v kontextu obsluhy stejných požadavků HTTP klienta. Na rozdíl od procesů ETL, které zpracovávají offline a dávkové úlohy, tento index podporuje odvozování v reálném čase, což vyžaduje vysoký výkon a spolehlivost. Je specializovaná pro dotazy AI a nabízí funkce, jako je indexování klíčových slov a filtrování, které nejsou typické pro úložiště velkých objemů dat. Cílem je mít vysoce výkonné úložiště dat typu zápis-n pro čtení , které podporuje improvizované a přibližné dotazy. Toto úložiště dat může poskytovat relevantní výsledky bez přesných dotazů.
Požadavky na funkce
Jaké typy vyhledávání index vyhledávání podporuje?
Dotazy, které systém přijímá, jsou v podstatě prohledány a index musí podporovat bohaté možnosti vyhledávání. V případě RAG je vektorové vyhledávání nezapomenutelné, protože data se ukládají jako počítané vektory nebo vložené objekty, které se používají k vyhledávání.
Vektorové vyhledávání je výkonné a kombinuje ho s filtrováním a fulltextovým vyhledáváním zvyšuje efektivitu indexu vyhledávání. Návrh dat by měl zohlednit kombinování těchto typů hledání, jako jsou vektory, fulltextové vyhledávání, filtrování a speciální datové typy, jako je geografické umístění.
Návrh dat by měl explicitně uvést tyto požadavky. Další informace najdete v tématu Efektivní dotazování v návrhu dat.
Podporuje index vícemodální data?
Zvolte technologie indexu, které podporují multimodální data. Hledání pomocí umělé inteligence může například analyzovat e-mail, převést v něm obrázek na vektory a uložit popis do indexu. Pomocí této funkce můžete vyhledávat v různých způsobech obsahu, včetně obrázků, videí a zvukových souborů.
Podporuje index možnosti automatické aktualizace, když se data ve zdrojích dat změní?
Zvolte index s funkcemi automatické aktualizace. Pokud některý není dostupný, musíte změny indexu rozpoznat a odeslat ručně. Díky těmto možnostem může indexer detekovat změny ve zdrojích dat a automaticky načítat aktualizace. Přesměrováním této odpovědnosti na platformu můžete snížit provozní režii a zjednodušit proces údržby.
Nefunkční požadavky
Může index provádět s velkými objemy dat?
Index by měl být schopný zpracovávat velké objemy dat, být škálovatelný a dobře fungovat pro úlohy náročného vyhledávání. Index ukládá nezpracovaná data a všechna metadata, rozšiřování a entity, které jsou k němu přidružené. V kontextu vzoru RAG může jeden dokument rozdělený na několik bloků dat vést k významnému zvýšení objemu dat.
Má index integrované funkce spolehlivosti?
Zvažte soulad mezi spolehlivostí koncového bodu odvozování nebo modelu a úložištěm dat, protože jsou na sobě závislé.
Proces vyhledávání zahrnuje dva kroky: dotazování úložiště dat a následné dotazování koncového bodu odvozování. Oba kroky musí mít podobné charakteristiky spolehlivosti. Vyrovnejte své cíle spolehlivosti mezi oběma komponentami, abyste zajistili efektivitu vyhledávání.
Kvůli zajištění odolnosti by úloha měla podporovat očekávaný počet souběžných uživatelů a mít dostatečnou šířku pásma pro zvládnutí nárůstů provozu. V ideálním případě by platforma měla přežít zónové výpadky.
Datová platforma by měla být navržená tak, aby zabránila použití poškozeného indexu pro odvozování. V takových případech byste měli být schopni index snadno znovu sestavit. Index by také měl podporovat spolehlivé prohození mezi indexy pomocí funkcí, jako je aliasing, aby se minimalizovaly výpadky během prohození indexů. Bez této funkce možná budete muset spoléhat na zálohování indexu. Správa zálohování má větší složitost.
Z hlediska úloh porozumíte potenciálním režimům selhání nebo ukazatelům stresu, jako je omezování. Systém může například normálně podporovat 50 souběžných uživatelů, ale během procesu přeindexování, který běží jako úloha na pozadí, může podporovat pouze 30 uživatelů. V takovém případě je důležité načasování úlohy na pozadí. Při vyhodnocování propustnosti indexu zahrňte front-endové dotazy i back-endové úlohy.
Jaké jsou hlavní nákladové faktory této technologie?
Při modelování nákladů odhadněte náklady spojené s objemem dat, počtem dotazů a očekávanou propustností indexu. Mějte na paměti, že indexy jsou většinou platforma jako služba (PaaS), kde se ceny abstrahují. Úrovně výzkumu a jejich možnosti, abyste se vyhnuli přeplacení nevyužité kapacity nebo funkcí.
Služba AI Search se například účtuje jako jednotky, které můžou zahrnovat kapacitu, propustnost a úložiště. Další funkce můžou vést k dalším poplatkům. Například rozsáhlé využití funkcí pro extrakci obrázků může vést k vysokému vyúčtování. Závislosti, jako je funkce sady dovedností, které jsou mimo rozsah indexu, ale jsou součástí zpracování dat, můžou mít další náklady.
Platba za úroveň bez použití plné kapacity může vést k přeplacení. Podobně počet tabulek v indexu a schopnost zpracovávat souběžný provoz ovlivňují náklady.
Informace o nákladech spojených s vyhledáváním AI najdete v tématu Plánování a správa nákladů na Search AI.
Splňují bezpečnostní funkce indexu návrh dat zabezpečení?
Návrh dat by měl jasně specifikovat požadavky na zabezpečení a ochranu osobních údajů. Ve vývojových a testovacích prostředích, kde se používají skutečná produkční data, by index měl podporovat funkce, které splňují všechny míry řízení přístupu a sledovatelnosti. Zkontrolujte funkce zabezpečení, jako je maskování dat a odebrání osobních údajů v indexu.
Zvolte index, který má možnost jedinečně identifikovat klienty prostřednictvím Microsoft Entra ID. Index vyhledávání by měl také podporovat řízení přístupu na úrovni dokumentu, aby bylo možné dotazovat se nalevnost podle identit. Pokud index tyto funkce nenabízí, upravte návrh tak, aby dosahoval podobných funkcí pomocí filtrů dotazů. Další informace najdete v tématu Filtry zabezpečení pro oříznutí výsledků hledání AI.
V ideálním případě by index vyhledávání měl odpovídat požadavkům na zabezpečení sítě. Pokud například potřebujete filtrovat odchozí provoz na weby jiných společností než Microsoft a udržovat pozorovatelnost, měl by index nabízet ovládací prvky výchozího přenosu dat. Měla by také podporovat segmentaci sítě. Pokud se back-endové výpočetní prostředky nachází ve virtuální síti, je nezbytné privátní připojení pro klíčové komponenty, včetně indexu, aby se zabránilo vystavení veřejnému internetu. Index by se měl snadno integrovat s privátními sítěmi a podporovat spravované identity pro ověřování prostřednictvím Microsoft Entra ID.
Důležité informace o úložišti funkcí
U diskriminativních modelů může návrh dat zahrnovat přechodné úložiště dat, které ukládá data do mezipaměti pro další upřesnění. Toto úložiště, označované jako úložiště funkcí, umožňuje datovým vědcům ukládat funkce jako poslední krok mimo agregované úložiště dat.
Úložiště funkcí pomáhá katalogům dat pro více použití přidáním metadat, jako je čas generování a zdroj. Toto přechodné cílové místo je ideální pro zlatá trénovací data.
Spravované uložiště funkcí ve službě Machine Learning je možnost úložiště dat, která se integruje s MLflow a dalšími nástroji. Načte a trénuje data z agregovaného úložiště dat a přidává opakovaně použitelnou vrstvu pro lepší rodokmen dat a formální identifikaci ve službě Machine Learning.
Pokud používáte úložiště funkcí, zacházejte s ním jako s úložištěm dat s ohledem na zabezpečení a přístup.
Důležité informace o offline odvozování úložiště dat
V některých scénářích je použití samostatného úložiště vhodné pro rychlejší budoucí vyhledávání, protože odvozování se provádí předem shromážděná a předem počítaná data předem. V tomto procesu požadavek uživatele nikdy nedosáhne modelu AI. Existuje několik výhod:
- Zvýšení efektivity a uživatelského prostředí snížením latence Výsledky se obsluhují rychleji pro časté dotazy, jako je generování nejčastějších dotazů jako výsledek.
- Volání odvozování je možné snadněji škálovat jako dávkový proces bez omezení zpracování v reálném čase.
- Umožňuje předvalidaci zajistit přesnost před produkčním prostředím.
- Vzhledem k tomu, že požadavek není směrován na koncový bod interference, snižuje zatížení, což přispívá ke spolehlivosti úlohy.
- Může být nákladově efektivnější, protože snižuje potřebu vysoce výkonného hardwaru potřebného ke zpracování v reálném čase.
Tento přístup je však efektivní pouze v případě, že můžete předpovědět možné požadavky a očekává se, že uživatelé budou požadovat významnou část předpovědí. U scénářů s menším počtem opakovaných požadavků může být úložiště pro odvozování méně efektivní.
Úložiště dat pro tento scénář by mělo být optimalizované pro operace čtení, musí být schopné zpracovávat velké objemy dat a poskytovat efektivní načítání. Měla by být také schopna integrovat do agregovaného úložiště dat. Jakékoli úložiště s těmito možnostmi je možné zvážit, jako je Azure Cosmos DB nebo dokonce úložiště tabulek.
Zdroje informací
Tyto články obsahují další podrobnosti o produktech Azure, které doporučujeme jako technologické možnosti pro důležité informace probírané v tomto článku.
- Machine Learning
- Blob Storage
- Azure Databricks
- Data Factory
- Vyhledávání AI
- Azure Cosmos DB
- Azure Cache for Redis