Notatka
Dostęp do tej strony wymaga autoryzacji. Może spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Niektóre problemy obliczeniowe są niepraktyczne lub niepraktyczne do rozwiązania na komputerach klasycznych, nawet na dużych superkomputerach. W przypadku niektórych z tych problemów algorytm kwantowy może osiągnąć rozwiązanie przy użyciu znacznie mniejszej ilości zasobów niż najbardziej znane podejście klasyczne. Komputer kwantowy używa efektów kwantowych, takich jak superpozycja i splątanie, do reprezentowania i przetwarzania informacji w sposób, w jaki komputer klasyczny nie może.
Programy kwantowe są uruchamiane u dostawców kwantowych , z którymi można się skontaktować, przesyłając zadania. Obiekty docelowe kwantowe uwidaczniają różne profile docelowe. Niektóre profile zezwalają tylko na operacje kwantowe, a klasyczna logika, którą można uruchamiać, jest ograniczona. Inne profile pozwalają na równoczesne wykonywanie zarówno operacji kwantowych, jak i klasycznych u dostawcy.
Niezależnie od profilu docelowego klasyczne składniki obliczeniowe obsługują integrację otaczającej aplikacji. Nawet jeśli obiekt docelowy kwantowy akceptuje operacje klasyczne, osiągasz cel, przesyłając zadanie i czekając na wyniki. W tym artykule opisano i porównaliśmy dwa modele aranżacji na potrzeby integracji pracy kwantowej z aplikacjami klasycznymi.
W praktyce uruchomienie programu kwantowego jest wywołaniem usługi. Aplikacja klasyczna lub kod klienta przesyła zadanie do obiektu docelowego, czeka na jego uruchomienie i pobiera wyniki. Co najmniej jeden klasyczny składnik obliczeniowy organizuje każde zadanie kwantowe, wykonując następujące czynności:
- Przygotowywanie danych wejściowych
- Przesyłanie zadań obliczeń kwantowych do docelowego środowiska kwantowego
- Monitorowanie wykonywania zadania
- Wyniki zadania przetwarzania końcowego
Modele integracji kwantowej
Integrujesz pracę kwantową z aplikacją klasyczną przy użyciu jednego z dwóch wzorców aranżacji:
Bezpośrednia integracja kwantowa. Aplikacja kliencka lub uproszczona klasyczna uprzęża współdziała bezpośrednio z obszarem roboczym Azure Quantum. Klient odpowiada za przygotowanie danych wejściowych, przesyłanie zadań, monitorowanie, obsługę wyników oraz klasyczną logikę otaczającą wykonywanie obliczeń kwantowych.
Integracja kwantowa z aranżacją przepływu pracy. Orkiestrator przepływu pracy odpowiada za całościowy stan i przejścia. Obliczenia kwantowe są wykonywane w etapach przepływu pracy działających równolegle z etapami uruchamianymi w obliczeniach wysokowydajnych (HPC) lub obliczeniach z użyciem procesorów graficznych (GPU).
W przypadku danej granicy integracji aplikacji te wzorce są alternatywami. Albo klient integruje się bezpośrednio z obszarem roboczym, albo za etap kwantowy odpowiada szerszy przepływ pracy. W tym artykule opisano implementację każdego wzorca.
Note
Architektury opisane w tym artykule wykonują część zadania obliczeniowego na docelowym zasobie kwantowym. W przypadku niektórych wyzwań obliczeniowych istniejące usługi utworzone w celu wykonywania obliczeń o wysokiej wydajności lub zapewnienia funkcjonalności sztucznej inteligencji mogą być alternatywami.
Wybór integracji jest niezależny od tego, gdzie są uruchamiane klasyczne obliczenia. W zależności od profilu docelowego i obciążenia klasyczna logika może działać w programie kwantowym, w warstwie klienckiej między wykonaniami kwantowymi, w orkiestratorze przepływu pracy lub w klasycznym etapie przepływu pracy w środowisku HPC lub na GPU.
Macierz decyzji
Skorzystaj z poniższej macierzy decyzyjnej, aby pokierować wyborem wzorców integracji:
| Jeśli obciążenie ma te cechy | Użyj tego podejścia |
|---|---|
| Jedna aplikacja lub lekki framework obsługuje cały cykl życia zadania kwantowego, a przygotowanie danych wejściowych i przetwarzanie wyników odbywają się po stronie tego klienta. | Bezpośrednia integracja kwantowa |
| Badasz właściwości sprzętu kwantowego za pomocą ręcznie pisanego kodu kwantowego, a jedna aplikacja lub niewielki zestaw powiązanych aplikacji wykorzystuje wyniki. | Bezpośrednia integracja kwantowa |
| Warstwa klasyczna jest rozbudowana i wykorzystuje obliczenia kwantowe jako jeden z wielu etapów w wieloetapowym potoku, którego poszczególne etapy są uruchamiane w najlepiej dopasowanym do nich zapleczu obliczeniowym, takim jak HPC, GPU lub docelowy system kwantowy. | Integracja kwantowa z orkiestracją przepływu pracy |
| Wykonania kwantowe powtarzają się, a wynik jednego wykonania generuje następny program kwantowy lub określa jego parametry. | Integracja kwantowa z orkiestracją przepływu pracy |
Szczegóły scenariusza
Oba przepływy pracy implementują wzorzec Request-Reply asynchronicznego oraz kroki zdefiniowane dla cyklu życia zadania Azure Quantum.
Cele kwantowe, zwłaszcza sprzęt kwantowy, są ograniczonymi zasobami. Azure Quantum przydziela te zasoby za pośrednictwem kolejki zadań. Po przesłaniu zadania zadanie przechodzi do kolejki dla wybranego obiektu docelowego i uruchamia go po zakończeniu wcześniejszych wpisów. Aby wyświetlić oczekiwany czas oczekiwania, wyświetl listę dostępnych miejsc docelowych. Oblicz pełny czas odpowiedzi, gdy kolejka czeka oraz czas wykonywania zadania.
Możliwości celu kwantowego również różnią się. Niektóre obiekty docelowe akceptują tylko operacje kwantowe, podczas gdy inne uruchamiają klasyczną logikę z operacjami kwantowymi w jednym zadaniu. Ten model obsługuje algorytmy dostosowujące się podczas wykonywania. Zanim wybierzesz cel, upewnij się, że obsługuje on operacje wymagane przez twój algorytm. Aby uzyskać więcej informacji na temat sposobu uruchamiania instrukcji klasycznych i kwantowych razem, zobacz Wprowadzenie do hybrydowych obliczeń kwantowych.
Note
Te wzorce opisują sposób integrowania pracy kwantowej z architekturą aplikacji. Różnią się one od modeli przetwarzania hybrydowego Azure Quantum, które opisują sposób interakcji obliczeń klasycznych i kwantowych w ramach zadań kwantowych. Profile docelowe ograniczają to, co można uruchamiać w ramach tych zadań. Aby uzyskać więcej informacji, zobacz Wprowadzenie do hybrydowych obliczeń kwantowych. Wzorce integracji aplikacji są niezależne od sposobu działania w ramach zadania i określają, czy zadania kwantowe uruchamia klient, czy przepływ zadań.
Bezpośrednia integracja kwantowa
W poniższych sekcjach opisano bezpośredni model integracji na potrzeby integracji pracy kwantowej z klasyczną aplikacją.
Architektura
Pobierz plik PowerPoint tej architektury.
Przepływ danych
Poniższy przepływ danych odpowiada powyższemu diagramowi:
Zalogowany użytkownik wyzwala wykonywanie zadań kwantowych za pośrednictwem klasycznej aplikacji klienckiej.
Aplikacja kliencka wprowadza dane do Azure Storage.
Aplikacja kliencka przesyła zadanie do obszaru roboczego Azure Quantum, określając docelowy cel lub cele wykonania.
Klient identyfikuje obszar roboczy na podstawie swojej konfiguracji i uwierzytelnia się względem obszaru roboczego przy użyciu tożsamości Microsoft Entra. Klient działający w zasobie hostowanym Azure może używać tożsamości zarządzanej. Lokalna aplikacja kliencka uwierzytelnia się przy użyciu innej tożsamości Microsoft Entra, takiej jak jednostka usługi lub interakcyjne logowanie użytkownika.
Dostawca kwantowy uruchamia zadanie w środowisku docelowym.
Aplikacja kliencka monitoruje wykonywanie zadań przez sondowanie stanu zadania.
Po zakończeniu zadania kwantowego aplikacja kliencka pobiera wynik obliczeniowy z usługi Storage.
Składniki
- Azure Quantum udostępnia workspace dostępny z portalu Azure dla zasobów skojarzonych z uruchamianiem zadań kwantowych na różnych obiektach docelowych. Zadania są uruchamiane na symulatorach kwantowych lub sprzęcie kwantowym, w zależności od wybranego dostawcy.
- Microsoft Entra ID koordynuje uwierzytelnianie użytkowników i pomaga chronić dostęp do obszaru roboczego Azure Quantum.
- Pamięć zapewnia przechowywanie danych wejściowych i wyników od dostawcy usług kwantowych.
Potencjalne przypadki użycia bezpośredniej integracji
Wzorzec bezpośredniej integracji kwantowej pasuje do następujących przypadków użycia:
- Jedna aplikacja kliencka lub lekki klasyczny mechanizm testowy odpowiada za cały cykl życia zadania kwantowego bez udziału szerszego przepływu pracy.
- Klient może wykonywać towarzyszące klasyczne zadania, takie jak przygotowywanie danych wejściowych i przetwarzanie wyników.
- Poznasz właściwości sprzętu kwantowego, więc zazwyczaj ręcznie napiszesz kod kwantowy, a nie generujesz go dynamicznie.
- Użycie składników kwantowych jest ograniczone do pojedynczej aplikacji lub małego zestawu powiązanych aplikacji.
- Zadanie kwantowe reprezentuje wyspecjalizowane rozwiązanie, takie jak symulacja molekularna, którego używa tylko jedna wyspecjalizowana aplikacja klasyczna.
Integracja kwantowa z orkiestracją przepływu pracy
W poniższych sekcjach opisano model zorganizowany przez przepływ pracy na potrzeby integrowania pracy kwantowej z aplikacją klasyczną.
Architektura
Logika przepływu pracy nie zależy od żadnego określonego hosta ani dostawcy. Poniższy schemat blokowy przedstawia maszynę stanu: pojedyncze dane wejściowe, pętlę na krokach i fazy poszczególnych kroków. Gałąź kwantowa może zawierać opcjonalną fazę generowania i optymalizacji programu, która nie jest używana w klasycznych krokach.
Selektor zaplecza w poprzednim schemacie blokowym jest raczej fazą logiczną niż wymaganym elementem i może przyjmować postać odwołania do konfiguracji, które kieruje każdy krok do ustalonego typu zaplecza.
Ten przepływ pracy można hostować na Azure za pomocą zestawu klasycznych usług, które przesyłają i monitorują pracę kwantową. Na poniższym diagramie przedstawiono przykładową topologię:
Pobierz plik PowerPoint tej architektury.
Przepływ danych
Następujący przepływ danych odpowiada topologii wdrożenia:
- Aplikacja kliencka przesyła żądanie za pośrednictwem usługi API Management, która uwierzytelnia obiekt wywołujący przy użyciu Microsoft Entra ID i stosuje ograniczanie przepustowości, zanim żądanie osiągnie warstwę obliczeniową.
- Usługa API Management przekazuje żądanie do interfejsu API danych wejściowych, funkcji wyzwalanej przez protokół HTTP, która ją weryfikuje i uruchamia koordynatora przepływu pracy.
- W przypadku kroku, który jest wykonywany klasycznie, orkiestrator kieruje wykonanie do klasycznego systemu zaplecza, takiego jak klaster HPC lub zasoby obliczeniowe GPU.
- Klasyczny backend zapisuje swoje wyniki oraz zaktualizowany stan potoku przetwarzania do usługi Storage.
- W przypadku kroku działającego w środowisku quantum orkiestrator kieruje wykonywanie ścieżką quantum. Ścieżka kwantowa przygotowuje program kroku, generuje i optymalizuje go z danych wejściowych kroku lub przy użyciu stałej implementacji i przesyła zadanie do obszaru roboczego Azure Quantum. Przesłanie jest uwierzytelniane za pośrednictwem tożsamości zarządzanej.
- Obszar roboczy uruchamia zadanie w wybranym obiekcie docelowym kwantowym.
- Docelowy obiekt kwantowy zapisuje swoje wyniki do usługi Storage.
- Orkiestrator odczytuje zaktualizowany stan Storage i ocenia logikę przejścia potoku. Jeśli warunek zbieżności lub iteracji wymaga innego wykonania kwantowego, orkiestrator używa wyniku do określenia parametrów następnego programu kwantowego lub dostarczenia danych wejściowych, które generują następny program. Następnie potok wraca do odpowiedniego kroku.
- Klient odpytuje interfejs Status API przez usługę API Management, aby śledzić postęp i pobrać wyniki końcowe, gdy potok osiągnie stan końcowy.
Składniki
- Durable Functions pełni rolę orkiestratora przepływu pracy do uruchamiania potoku przetwarzania jako maszyny stanów, koordynowania kroków oraz wybierania zaplecza obliczeniowego typu kwantowego lub innego typu do wykonania każdego kroku. Orkiestrator można zaimplementować za pomocą Durable Functions lub innego aparatu przepływu pracy.
- Klasyczne zaplecza obliczeniowe HPC i GPU platformy Azure realizują etapy niekwantowe.
- Azure Functions hostuje interfejsy API HTTP, które uruchamiają i monitorują przepływ pracy, wraz z orkiestratorem, który go uruchamia.
- Usługa API Management to punkt wejścia dla żądań klientów. Uwierzytelnia osoby wywołujące i stosuje ograniczanie przepustowości. Aby zapobiec bezpośredniemu wywoływaniu aplikacji funkcji, użyj opcji sieci Azure Functions, takich jak ograniczenia dostępu przychodzącego lub prywatny punkt końcowy, aby akceptowała ruch tylko z usługi API Management.
- Azure Quantum udostępnia obszar roboczy dla zasobów skojarzonych z uruchomionymi zadaniami kwantowymi. Zadania są uruchamiane na symulatorach kwantowych lub sprzęcie kwantowym, w zależności od wybranego miejsca docelowego.
- Microsoft Entra ID koordynuje uwierzytelnianie i pomaga chronić dostęp do obszaru roboczego Azure Quantum.
- Pamięć masowa przechowuje dane wejściowe, pośredni stan potoku i wyniki.
Alternatywy
Architektury opisane w tym artykule wykonują część zadania obliczeniowego na docelowym zasobie kwantowym. W przypadku niektórych wyzwań obliczeniowych istniejące usługi utworzone w celu wykonywania obliczeń o wysokiej wydajności lub zapewnienia funkcjonalności sztucznej inteligencji mogą być alternatywami.
W przypadku naukowych obciążeń B+R Microsoft Discovery wykorzystuje AI do koordynowania złożonych zadań w modelach, narzędziach i zasobach obliczeniowych. Microsoft Discovery może koordynować różne narzędzia w wieloetapowych potokach i można je rozszerzać, dzięki czemu można podłączyć własne narzędzia i agentów zamiast samodzielnie tworzyć i obsługiwać orkiestrację. Integracja z możliwościami kwantowymi, w tym z uruchamianiem kroków kwantowych, mogłaby wykorzystywać sztuczną inteligencję do przejęcia realizacji orkiestracji, którą ten wzorzec buduje ręcznie.
Szczegóły scenariusza aranżacji przepływu pracy
W tym wzorcu orkiestrator przepływu pracy uruchamia zadanie w postaci potoku kroków. Orkiestrator działa jak maszyna stanów, w której kroki są powtarzane w pętli aż do spełnienia warunku zakończenia lub zbieżności. Każdy krok jest zgodny z tym samym kształtem: przygotowuje dane wejściowe, wykonuje i przetwarza dane wyjściowe.
Orkiestrator wybiera ten backend, który wykonuje każdy krok. Ten wybór jest częścią logiki aranżacji, a nie oddzielnej usługi i może być tak prosty, jak odczytywanie docelowego zaplecza dla każdego kroku z konfiguracji. Krok jest uruchamiany w środowisku wykonawczym kwantowym lub na klasycznych zasobach obliczeniowych, takich jak klaster HPC lub zasoby GPU. Prosty klasyczny etap może działać bezpośrednio w samym orkiestratorze. Po powtórzeniu kroków kwantowych przepływ pracy przetwarza wynik jednego wykonania kwantowego w celu określenia parametrów następnego programu kwantowego lub dostarczenia danych wejściowych, które generują następny program.
Krok wykonywany w backendzie kwantowym może dodać dodatkową fazę, której nie mają kroki klasyczne. Ta faza generuje i optymalizuje program kwantowy przed wykonaniem. Ta faza jest opcjonalna. Program może być generowany dynamicznie na podstawie danych wejściowych kroku lub może opierać się na stałej implementacji, która pomija tę fazę. Krok, który nadaje się do przetwarzania kwantowego, może być nadal wykonywany w klasycznym systemie zaplecza, jeśli lepiej odpowiada to danym wejściowym.
Chemia kwantowa jest reprezentatywnym przykładem. Typowy przepływ pracy obejmuje klasyczne etapy przygotowania układu molekularnego: optymalizację geometrii, obliczenie samouzgodnionego pola oraz wybór przestrzeni aktywnej. Następnie potok przetwarzania oblicza docelową właściwość, taką jak energia stanu podstawowego cząsteczki. Krok przetwarzania energii zachowuje tę samą intencję, niezależnie od tego, czy działa w klasycznym przybliżeniu, czy w algorytmie kwantowym. Wybierasz backend w zależności od potrzebnej dokładności i wielkości problemu.
Biblioteka QDK/Chemistry obsługuje takie przepływy pracy. Biblioteka udostępnia modułowe komponenty do realizacji klasycznych etapów przygotowania oraz do generowania obwodu przygotowania stanu na podstawie klasycznie obliczonej funkcji falowej, którego następnie używa backend kwantowy do oszacowania energii za pomocą algorytmu, takiego jak estymacja fazy kwantowej. Ta możliwość generowania obwodu jest konkretnym przykładem dynamicznego tworzenia programu kwantowego na podstawie danych wejściowych kroku.
Potencjalne przypadki użycia
Wzorzec integracji kwantowej orkiestrowanej za pomocą przepływu pracy sprawdza się w następujących przypadkach użycia:
- Część klasyczna jest rozbudowana i ukierunkowana na logikę stanu problemu, a możliwości kwantowe wykorzystuje jako jeden z wielu kroków lub kilka z wielu kroków.
- Obciążenie robocze to wieloetapowy potok, który często ma charakter iteracyjny, niczym maszyna stanów. Każdy etap działa na zapleczu obliczeniowym, który najlepiej pasuje do niego: HPC, GPU lub obiekt docelowy kwantowy. Obliczenia kwantowe to jedna opcja dla co najmniej jednego etapu.
- Krok kwantowy oznacza dobrze zdefiniowany element składowy, taki jak obliczenie naukowe służące do wyznaczania właściwości cząsteczki. Dokładny kod kwantowy można nawet wygenerować i zoptymalizować dynamicznie w celu dopasowania rzeczywistych danych wejściowych.
- Orkiestrator przepływu zadań zarządza wieloma samodzielnymi uruchomieniami kwantowymi oraz klasycznym przetwarzaniem pomiędzy nimi. Wynik jednego wykonania określa parametry dla następnego programu kwantowego lub udostępnia dane wejściowe, które generują następny program. Iteracyjne szacowanie fazy wpisuje się w tę strukturę, podobnie jak algorytmy wariacyjne, takie jak Variational Quantum Eigensolver (VQE) i Quantum Approximate Optimization Algorithm (QAOA).
Zagadnienia dotyczące
Te zagadnienia obejmują implementację filarów platformy Azure Well-Architected Framework, która jest zestawem wytycznych, których można użyć do poprawy jakości obciążenia. Aby uzyskać więcej informacji, zobacz Well-Architected Framework.
Niezawodność
Niezawodność pomaga zapewnić, że aplikacja może spełnić zobowiązania podjęte przez klientów. Aby uzyskać więcej informacji, zobacz Lista kontrolna przeglądu projektu dotycząca niezawodności.
Zadania kwantowe są uruchamiane na zdalnych, współdzielonych zasobach docelowych, więc ich wykonywanie może zakończyć się niepowodzeniem z powodu błędów przejściowych, takich jak przekroczenie limitu czasu zasobu docelowego. Niezależnie od wybranego wzorca integracji monitoruj wykonywanie zadań, aby umożliwić użytkownikowi uwidomienie stanu zadania. Gdy zadanie zakończy się niepowodzeniem z powodu błędu przejściowego, zastosuj wzorzec ponawiania prób. Przesyłaj zadania za pomocą wywołań asynchronicznych i sprawdzaj wynik, aby nie blokować klienta wysyłającego żądanie.
Dostępność funkcji obliczeń kwantowych zależy bardzo od dostępności i cech pojemności dostawcy obliczeń kwantowych. W zależności od docelowego obiektu obliczeniowego klasyczna aplikacja kliencka może doświadczać długich opóźnień lub niedostępności obiektu docelowego.
W przypadku otaczających usług Azure mają zastosowanie typowe zagadnienia dotyczące dostępności. W razie potrzeby rozważ użycie opcji replikacji dostępnych w Nadmiarowość usługi Azure Storage.
Niezawodność integracji orkiestrowanej przez przepływ pracy
Aby zapewnić wysoką dostępność w ramach integracji orkiestrowanej przez przepływ pracy, wdróż usługę API Management w różnych strefach dostępności lub w wielu regionach. Nadmiarowość strefowa wymaga warstwy Premium lub Premium v2, a wdrożenie wieloregionowe wymaga warstwy Premium.
Jeśli zaimplementujesz orkiestrator z Durable Functions, zaplanuj jego odzyskiwanie po awarii jako jednostkę zamiast traktować aplikację funkcji i jej stan jako niezależne usługi. Durable Functions przechowują cały stan orkiestracji w hubie zadań w warstwie magazynowania, którą domyślnie jest Azure Storage. Ponieważ stan środowiska wykonawczego i warstwa obliczeniowa są powiązane za pośrednictwem tego task hub, aprowizowanie aplikacji funkcji w drugim regionie oraz oddzielna replikacja usługi Storage nie zapewniają bezpiecznego przełączenia awaryjnego. Orkiestracje mogą wstrzymywać, tracić ostatnie transakcje lub odczytywać centrum zadań między regionami w zależności od topologii.
Aby zapewnić bezpieczne przełączenie awaryjne, użyj konfiguracji aktywno-pasywnej, która umożliwia przełączenie awaryjne do regionu zapasowego i jest obsługiwana przez globalną usługę równoważenia obciążenia, taką jak Azure Front Door lub Azure Traffic Manager. Upewnij się, że sondy sprawdzające kondycję usługi mogą dotrzeć do aplikacji funkcji przy obowiązujących ograniczeniach sieciowych, ponieważ te same mechanizmy kontroli, które ograniczają aplikację do ruchu z usługi API Management, mogą również blokować te sondy. Wybierz topologię zgodną z tolerancją utraty danych i opóźnienia między regionami. Informacje o skoordynowanych opcjach i związanych z nimi kompromisach można znaleźć w artykule Odzyskiwanie po awarii i dystrybucja geograficzna w Durable Functions.
Zabezpieczenia
Zabezpieczenia zapewniają ochronę przed celowymi atakami i nieprawidłowym użyciem cennych danych i systemów. Aby uzyskać więcej informacji, zobacz Lista kontrolna przeglądu projektu dotycząca zabezpieczeń.
Zastosuj następujące rozwiązania dotyczące wzmacniania zabezpieczeń do klasycznych usług, które otaczają zadanie kwantowe, niezależnie od wybranego wzorca integracji:
Uwierzytelniaj dostęp do usługi Azure Quantum i powiązanych usług za pomocą tożsamości Microsoft Entra oraz wyłącz uwierzytelnianie lokalne wszędzie tam, gdzie usługa to obsługuje. Używaj tożsamości zarządzanych wszędzie tam, gdzie środowisko hostingu je obsługuje. W przypadku klienta, który nie może używać tożsamości zarządzanej, należy uwierzytelnić się przy użyciu innej tożsamości Microsoft Entra, takiej jak jednostka usługi lub logowanie interakcyjne użytkownika.
Przyznaj każdemu składnikowi, który uzyskuje dostęp do usługi Storage, potrzebne mu uprawnienia dostępu do płaszczyzny danych za pomocą kontroli dostępu opartej na rolach platformy Azure (Azure RBAC) z identyfikatorem Microsoft Entra ID, w zakresie ograniczonym do tego składnika. Nie osadzaj kluczy konta magazynu w kodzie aplikacji.
Ogólnie rzecz biorąc, w razie potrzeby zastosuj zalecenia dotyczące zabezpieczeń w ramach Well-Architected Framework.
Zabezpieczenia bezpośredniej integracji kwantowej
W przeciwieństwie do integracji kwantowej koordynowanej przez przepływ pracy, ten wzorzec zakłada, że pojedynczy klient uzyskuje dostęp do obszaru roboczego Azure Quantum. Klient jest zazwyczaj lekkim, klasycznym mechanizmem, który koncentruje się na wysyłaniu i obsłudze zadań, a nie na ogólnym stanie przepływu pracy. Ten scenariusz prowadzi do następujących konfiguracji:
Ponieważ klient jest znany, można nadać mu stałą tożsamość. Gdy klient działa w zasobie hostowanym Azure, skojarz z nim tożsamość zarządzaną. Gdy klient działa poza platformą Azure, użyj nazwy głównej usługi lub interakcyjnego logowania użytkownika.
Możesz zaimplementować ograniczanie żądań i buforowanie wyników w samym kliencie.
Zabezpieczenia integracji opartej na orkiestracji przepływu pracy
W przeciwieństwie do bezpośredniej integracji kwantowej ten wzorzec stawia klasyczną warstwę usługi przed pracą kwantową. Usługa API Management to drzwi wejściowe dla tej warstwy, dlatego konfiguracje zabezpieczeń podkreślają ochronę punktu wejścia i ścieżki do obszaru roboczego kwantowego.
Klienci muszą uwierzytelniać się w interfejsie API. Zaimplementuj to uwierzytelnianie przy użyciu zasad uwierzytelniania.
Uwierzytelnianie funkcji Azure można zaimplementować za pomocą zarządzanych tożsamości skojarzonych z funkcjami. Te tożsamości służą do uwierzytelniania wywołań wychodzących do obszaru roboczego Azure Quantum.
Usługa API Management może stosować ograniczanie żądań, aby chronić zaplecze kwantowe i ograniczać użycie zasobów kwantowych. Aby uzyskać więcej informacji, zobacz Ograniczanie żądań usługi API Management.
W zależności od wzorca żądania może być możliwe zaimplementowanie buforowania wyników obliczeń kwantowych przy użyciu zasad buforowania usługi API Management.
Optymalizacja kosztów
Optymalizacja kosztów koncentruje się na sposobach zmniejszenia niepotrzebnych wydatków i poprawy wydajności operacyjnej. Aby uzyskać więcej informacji, zobacz Lista kontrolna przeglądu projektu dotycząca optymalizacji kosztów.
Całkowity koszt tego rozwiązania zależy od docelowego obliczenia kwantowego wybranego do uruchomienia zadania kwantowego. Klasyczne składniki są proste do oszacowania. Aby zapoznać się z reprezentatywnym wdrożeniem wzorca aranżacji przepływu pracy, zobacz ten przykładowy szacowany koszt, który obejmuje klasyczne składniki, w tym usługi API Management, Azure Functions i Storage. Wzorzec integracji bezpośredniej jest prostszy, ale jego typowe koszty nadal obejmują magazynowanie oraz wszelkie koszty hostingu, sieci i monitorowania, z których korzysta aplikacja kliencka.
Z dostawców obliczeń kwantowych dla usługi Azure Quantum można korzystać za pośrednictwem oferty w Microsoft Marketplace. Ceny zależą od typu zasobu (symulatora lub sprzętu), jednostki SKU i użycia. Aby uzyskać więcej informacji, uzyskaj dostęp do strony referencyjnej dostawcy scenariusza od dostawców obliczeń kwantowych na Azure Quantum.
Współpracownicy
Microsoft utrzymuje ten artykuł. Następujący współautor napisał ten artykuł.
Główny autor:
- Zander Chocron | Główny inżynier oprogramowania, Microsoft Quantum
Aby wyświetlić niepubliczne profile serwisu LinkedIn, zaloguj się do serwisu LinkedIn.
Następne kroki
- Aby zapoznać się z omówieniem ekosystemu Microsoft obliczeń kwantowych, zobacz witrynę internetową Microsoft Quantum i ukończ ścieżkę szkoleniową Podstawy obliczeń kwantowych.
- Aby uzyskać więcej informacji na temat usługi Azure Quantum, zobacz Co to jest Azure Quantum?.
- Aby uzyskać ogólne informacje na temat zarządzania zadaniami Azure Quantum, zobacz
Work with Azure Quantum jobs (Praca z zadaniami Azure Quantum. - Aby uzyskać informacje na temat łączenia klasycznych i kwantowych instrukcji w zadaniu, zobacz Wprowadzenie do hybrydowych obliczeń kwantowych.
Powiązane zasoby
- Zasady projektowania doskonałości operacyjnej
- wzorzec asynchroniczny "Request-Reply"