Latest / M365.FM – podcast o Microsoft 365, Copilot i AI po polsku / Rejestrowanie własnych funkcji Copilot w Business Central: AL, metaprompt i bezpieczne klucze Azure OpenAI (Dubbing AI)
Transcript
- 0:00Czy zdarzyło Ci się marzyć, by Biznes Central odwalał za Ciebie czarną robotę jak uzgadnianie płatności czy tworzenie opisów produktów, zamiast zasypywać Cię dodatkowymi kliknięciami i nocną męką w Excelu?
- 0:09Taka jest obietnica Copilota. I zanim zapytasz, tak jest wbudowany w wersję Biznes Central Online bez dodatkowych kosztów.
- 0:15Tylko nie licz, że zadziała w Twojej instalacji on-premise.
- 0:18Oto haczyk. Większość administratorów nigdy nie wychodzi poza gotowe dema.
- 0:22Dziś rozłożymy go na części pierwsze i pokażemy, jak zaprząc Copilota do pracy w Twojej firmie.
- 0:26Na koniec otrzymasz listę kontrolną, którą przetestujesz w środowisku Sandbox.
- 0:30Wszystko zaczyna się od ukrytego menu, o którym Microsoft prawie nie wspomina.
- 0:34Sekretne menu Copilota. Prawdziwa moc Copilota nie tkwi w efektownych przyciskach na karcie klienta.
- 0:39Prawdziwy trik kryje się w tym, co Microsoft zostawił pod spodem.
- 0:42Punkty rozszerzeń znajdziesz w przestrzeni nazw system AI.
- 0:45Szukaj kodeunita Copilot Capability oraz powiązanych enumów.
- 0:48To właśnie tam znajdują się haczyki dla programistów.
- 0:50To nie są przypadkowe artefakty w bazie kodu.
- 0:53Zbudowano je po to, byś mógł definiować i rejestrować własne funkcje oparte na AI,
- 0:56zamiast czekać, aż Microsoft dorzuci nowe demo raz na kwartał.
- 1:00Menu, z którego korzysta większość ludzi, to tylko wierzchołek góry lodowej.
- 1:03Wpisz dane faktury, otrzymaj zgrabne podsumowanie, może szkic opisu produktu.
- 1:06W porządku, ale to tylko scenariusze demonstracyjne, żeby pokazać, patrzcie, to działa.
- 1:10W rzeczywistości wnętrze Biznes Central zawiera obiekty takie jak Copilot Capability i Copilot Availability.
- 1:15Mówiąc prościej, Capability to zestaw umiejętności, które tworzysz dla Copilota.
- 1:19Availability mówi systemowi, kiedy i gdzie dana umiejętność powinna pojawić się dla użytkownika końcowego.
- 1:25Razem tworzą coś więcej niż tylko menu gotowych widgetów AI.
- 1:28To platforma do dostosowania Copilota do potrzeb Twojej firmy.
- 1:31I tu dochodzimy do sedna.
- 1:32Większość administratorów zakłada, że Copilot jest w pełni zamknięty, jak błyszczące czarne pudełko.
- 1:36Używają tego, co jest, wzruszają ramionami i idą dalej.
- 1:38Nigdy nie szukają dodatkowych opcji kontroli.
- 1:40Jednak na poziomie programistycznym masz dostęp do konkretnych dźwigni.
- 1:43I tak administratorzy mają sposób, by zobaczyć efekty pracy programistów.
- 1:46Wejdź na stronę Copilot and Agent Capability z wewnątrz Business Central.
- 1:50Każda zarejestrowana tam funkcja będzie widoczna na liście.
- 1:53Administratorzy mogą je wyłączać pojedynczo.
- 1:55Jeśli coś działa nieprawidłowo, to połączenie programiści definiują w AL.
- 1:58Administratorzy zarządzają w U i jest pomostem, dzięki któremu to coś więcej niż tylko teoria.
- 2:03Nie myśl o tym jak o zablokowanym urządzeniu Apple, raczej jak o konsoli z ukrytymi komendami debugowania.
- 2:08Jeśli ograniczasz się tylko do klikania głównego przycisku Copilota, marnujesz ogromny potencjał systemu.
- 2:12To jak jazda Teslą, w której w korku przesuwasz się tylko o centymetry.
- 2:15Przełącznik trybu Ludicres istnieje, ale dopóki go nie użyjesz, stoisz w miejscu.
- 2:19Tu jest tak samo.
- 2:21Obiekty przestrzeni nas są już w Twoim środowisku, ale jeśli nie wiesz, gdzie szukać, nigdy ich nie użyjesz.
- 2:25O jakiej więc mocy obliczeniowej mówimy?
- 2:28Moduł AI w Business Central oferuje uzupełnianie tekstu,
- 2:31czatowe uzupełnianie scenariuszy workflow oraz embeddingi dla wyszukiwania semantycznego.
- 2:35Oznacza to, że możesz zbudować funkcję, która na przykład
- 2:38Tworzy szkice zamówień zakupu według wzorców Twojej firmy, a nie założeń Microsoftu.
- 2:42Oznacza to również, że możesz tworzyć asystentów mówiących głosem Twojej firmy, a nie sterelnym językiem notatek hrabia.
- 2:48Krótka uwaga, zanim komuś przyjdą do głowy pomysły.
- 2:50Funkcja podglądu czatu z Copilotem, którą mogłeś widzieć w Business Central, nie jest rozszerzalna przez ten moduł.
- 2:55Ten czat podąża własną ścieżką.
- 2:57To, co rozszerzasz, odbywa się poprzez opisany tutaj model możliwości.
- 2:59Microsoft słabo wyeksponował to w swoim marketingu.
- 3:02Owszem, jest w dokumentacji, ale zakopane w suchej, technicznej sekcji, przez którą niewielu administratorów przewija.
- 3:07Gdy już wiesz, że te obiekty istnieją, obraz się zmienia.
- 3:10Każdy finansowy dziwoląg, każde nietypowe pole własne, każdy skomplikowany obieg zatwierdzeń, wszystko to można zaadresować własną funkcją Copilota.
- 3:17Zamiast czekać, aż Redmond rzuci coś z góry, możesz dopasować asystenta bezpośrednio do swojego środowiska.
- 3:22Oczywiście, tak potężne narzędzie wymaga ostrzeżeń.
- 3:25To ostre narzędzia. Błędna rejestracja możliwości może tworzyć konflikty, zwłaszcza gdy Microsoft wdraża aktualizację.
- 3:31Zrób to źle, a nagle sandbox przestanie działać lub, co gorsza, zablokujesz użytkowników na produkcji.
- 3:35Dlatego strona Copilot and Agent Capabilities ma znaczenie.
- 3:39Daje ona administratorom nie tylko wgląd, ale i szybki wyłącznik, jeśli twój niestandardowy mózg zacznie szwankować.
- 3:44Więc korzyść jest prosta.
- 3:46Tak, pod Copilotem kryje się sekretne menu.
- 3:48Tak, jest już w każdym środowisku.
- 3:49I tak, zmienia Copilota z zabawki w coś użytecznego, ale wiedza o jego istnieniu to dopiero pierwszy krok.
- 3:55Cały trik polega na bezpiecznej rejestracji tych funkcji, aby zwiększyć moc bez spalenia środowiska.
- 4:00I właśnie tam przejdziemy dalej.
- 4:02Rejestracja bez niszczenia swojego środowiska.
- 4:05Rejestracja funkcji Copilota to nie jest jakaś niejasna sztuczka czarodzieja.
- 4:09Mówiąc językiem AL, tworzysz rozszerzenie Enum dla Copilot Capability i używasz kodeuntu instalacyjnego lub aktualizacyjnego, który wywołuje funkcję.
- 4:17Zarejestruj funkcję.
- 4:18To ten uścisk dłoni, w którym mówisz Biznes Central, oto nowa funkcja AI.
- 4:22Traktuj ją jako część systemu.
- 4:24Bez tego wywołania rozszerzenie może się skompilować, ale Copilot nawet nie będzie wiedział o istnieniu tej funkcji.
- 4:28Potraktuj to jak składanie dokumentów w dziale kadr.
- 4:31Nie ma wpisów w strukturze organizacyjnej, nie ma biurka, nie ma maila, nie ma pracownika.
- 4:35Gdy masz już podstawową definicję, kolejnym detalem jest zakres i nazewnictwo.
- 4:39Każda rejestrowana funkcja działa w tym samym ekosystemie, który Microsoft stale aktualizuje.
- 4:44Jeśli użyjesz ogólnej nazwy lub niedbałego identyfikatora, prosisz się o konflikt.
- 4:48Załóżmy, że nazwiesz ją pomocnikiem sprzedaży i przypiszesz jej popularną wartość wyliczeniową.
- 4:52Następnie Microsoft wydaje aktualizację z wbudowaną funkcją w tym samym obszarze.
- 4:55Nagle system nie wie, co pokazać, a Twój kod zaczyna konfliktować z rozwiązaniami z Redmond w trakcie działania.
- 5:00Rozwiązanie jest nudne, ale niezbędne.
- 5:02Wybieraj unikalne nazwy, przypisuj własne wartości wyliczeniowe niepokrywające się z typowymi zakresami i celowo wersjonuj rozszerzenie.
- 5:08Dodawaj numery wersji, aby śledzić, czy środowisko Sandbox ma wersję pierwszej dwa, podczas gdy produkcja nadal tkwi na pierwszy zero.
- 5:13A jeśli coś zmieni się w platformie, Twoje jednostki kodu aktualizacyjnego pozwolą bezpiecznie przenieść te funkcje dalej.
- 5:19Bez nich tylko podklejasz nową instalację do starej rozdzielnicy, mając nadzieję, że nic nie stanie w płomieniach.
- 5:24Tutaj wielu programistów podchodzi do sprawy zbyt swobodnie.
- 5:27Wrzucają rozszerzenie prosto na produkcję, bo to przecież tylko funkcja.
- 5:30Wtedy właśnie Twój helpdesk zaczyna płonąć.
- 5:32Właściwa ścieżka jest prosta.
- 5:33Najpierw tylko środowisko Sandbox.
- 5:35Zepsuj, popraw, przetestuj ponownie i dopiero gdy wszystko działa, przenieś na produkcję.
- 5:39Takie kontrolowane wdrażanie ogranicza niespodzianki.
- 5:41I nie chodzi tu tylko o kompilację kodu, ale o zarządzanie.
- 5:44Strona funkcji kopilota i agentów w Biznes Central służy również jako weryfikacja poprawności.
- 5:48Jeśli po rejestracji Twoja funkcja się tam nie pojawia, znaczy to, że nie zarejestrowałeś jej poprawnie.
- 5:52Ta strona odzwierciedla stan faktyczny systemu.
- 5:55Dopiero po zweryfikowaniu jej tam powinieneś przekazać całość do przeglądu administratorom.
- 5:58A skoro mowa o administratorach, włączanie lub wyłączanie funkcji kopilota oraz skonfigurowanie przepływu danych to zadania tylko dla administratorów z uprawnieniami super lub rolą administratora Biznes Central.
- 6:08Zaplanuj ten krok związany z zarządzaniem z wyprzedzeniem.
- 6:11Szybka, profesjonalna rada.
- 6:12Podczas rejestracji użyj opcjonalnego parametru Learn More URL.
- 6:15Pojawi się on bezpośrednio na stronie administratora dotyczącej funkcji kopilota i agentów.
- 6:20To nie tylko miły dodatek, to wbudowana dokumentacja.
- 6:22Zamiast kazać administratorom szukać linku do wiki czy męczyć Cię na Teamsach, mogą kliknąć bezpośrednio w opis funkcji i dowiedzieć się, jak jej używać.
- 6:30Pomyśl o tym, jak o naklejeniu instrukcji na włączniku światła, żeby następna osoba nie przełączyła tego niewłaściwego.
- 6:35Oto lista kontrolna najlepszych praktyk, która ogranicza ryzyko.
- 6:38Po pierwsze, uruchamiaj wszystko w piaskownicy przed wdrożeniem na produkcję.
- 6:40Po drugie, wybieraj unikalne wartości enum i unikaj typowych zakresów.
- 6:44Po trzecie, zawsze używaj modułów aktualizacji instalacji dla zapewnienia czystej ścieżki rozwoju.
- 6:47Po czwarte, dołącz adres URL, dowiedz się więcej, aby administratorzy nie musieli później zgadywać.
- 6:51Stosuj te cztery zasady, a utrzymasz stabilność swojego środowiska.
- 6:54Zignoruj je, a o trzeciej nad ranem będziesz przywracać bazy danych.
- 6:57Metafora miejsca parkingowego wciąż jest aktualna.
- 6:59Rejestracja możliwości jest jak oficjalna rezerwacja miejsca dla Twojego nowego samochodu.
- 7:03Wypełnij odpowiednie dokumenty, miejsce jest Twoje i wszyscy są zadowoleni.
- 7:06Pomiń proces lub zaparkuj w strefie czerwonej, a zablokujesz drogę pożarową i wszyscy będą źli.
- 7:10Rejestracja polega na wygospodarowaniu bezpiecznej przestrzeni dla Twojej funkcji,
- 7:13aby Biznes Central i aktualizacje Microsoft mogły z nią współistnieć w dłuższej perspektywie.
- 7:17Krótko mówiąc, traktuj rejestrację jak kod produkcyjny, bo dokładnie nim jest.
- 7:21Testuj w piaskownicach, utrzymuj unikalny zakres, śledź wersję i dopracuj moduły kodu aktualizacji.
- 7:26Jeśli stanie się coś dziwnego, strona możliwości kopilota i agenta oraz adres URL, dowiedz się więcej,
- 7:30pozwolą administratorom znaleźć, zrozumieć i w razie potrzeby wyłączyć funkcję.
- 7:34Zrobiona dobrze rejestracja zapewnia stabilność.
- 7:37Zrobiona niedbale prowadzi do chaosu.
- 7:39Gdy już to opanujesz, zauważysz, że sama możliwość jest funkcjonalna, ale generyczna.
- 7:44Odpowiada, ale bez charakteru.
- 7:45To tak, jakby zatrudnić kogoś genialnego, kto na spotkaniach ciągle siedzi wyciszony.
- 7:49Kolejnym krokiem jest nauczenie kopilota, jak ma się zachowywać,
- 7:51bo w przeciwnym razie będzie brzmiał mniej jak zaufany asystent,
- 7:54a bardziej jak nastolatek przewracający oczami na Twoje pytania.
- 8:06W dokumentacji deweloperskiej Microsoftu Metaprompt to główny komunikat systemowy,
- 8:10który definiuje profil modelu, format wyjściowy i ograniczenia.
- 8:13Mówiąc prościej, to opis stanowiska pracy AI.
- 8:16Jednorazowy monit użytkownika jest jak prośba o wykonanie zadania,
- 8:19ale Metaprompt to stałe instrukcje wbudowane w każdą odpowiedź.
- 8:22Bez tego kopilot nie wie, czy ma brzmieć jak księgowy, czy jak copywriter.
- 8:26Po prostu zgaduje.
- 8:27Pomyśl o tym tak, nie zatrudniłbyś nikogo bez podania mu opisu roli.
- 8:31Metaprompt jest właśnie tym dla sztucznej inteligencji.
- 8:34Mówi kopilotowi, kiedy zachować formalny ton, jak formatować wyniki,
- 8:37jakiego stylu użyć i czego absolutnie unikać.
- 8:40To różnica między odpowiedziami pasującymi do Twojego przepływu pracy,
- 8:43a odpowiedziami brzmiącymi jak odgrzewany spinacz z własnym zdaniem.
- 8:46Administratorzy często mylą Metaprompti z monitami, dlatego bywają sfrustrowani.
- 8:50Jeśli po prostu rzucisz, podaj mi wpisy do księgi, do kopilota bez kontekstu,
- 8:54sam wymyśli swój styl.
- 8:55Może długie akapity, może pola, które nie istnieją.
- 8:58Zawiń tę samą prośbę w Metaprompt, na przykład,
- 9:00jesteś asystentem finansowym, zawsze prezentuj wpisy do księgi jako listy punktowane,
- 9:04używając nazw Pool Business Central.
- 9:06Tylko przykład.
- 9:07I nagle odpowiedzi stają się przejrzyste, ustrukturyzowane i przyjazne w odbiorze.
- 9:10Zabezpieczenie jest aktywowane, zanim żądanie w ogóle zostanie uruchomione.
- 9:13Firma Microsoft celowo wprowadziła to rozróżnienie.
- 9:16Prompti to tymczasowe żądania, podczas gdy Metaprompti pozostają aktywne przez cały kontekst czatu.
- 9:20Programiści ustawiają je za pomocą jednostki kodu czatu AOAI,
- 9:24wywołując metodę ustawiania głównej wiadomości systemowej.
- 9:27Przechowywanie Metapromptów izolowanej pamięci sprawia,
- 9:29że rozszerzenie może go bezpiecznie pobierać i aktualizować,
- 9:32zamiast wpisywać tekst na sztywno w pliku Aleja.
- 9:34Jeśli przejrzałeś dokumentację, znajdziesz tam przykłady użycia poleceń
- 9:37Isolated Storage Set oraz Isolated Storage Get.
- 9:40To właściwy model dla środowiska produkcyjnego.
- 9:42Dzięki temu Metaprompt jest dostępny, ale chroniony przez zabezpieczenia rozszerzenia.
- 9:46Teraz przejdźmy do konkretów.
- 9:48Wysyłając dane użytkownika do usługi Azure OpenAI przez moduł AI w Business Central,
- 9:51musisz liczyć się z budżetami tokenów i ustawieniami temperatury,
- 9:54niezależnie od tego, czy tego chcesz, czy nie.
- 9:55Budżety tokenów mają znaczenie.
- 9:57Twój Metaprompt oraz prompt użytkownika sumują się w ramach limitu tokenów modelu.
- 10:00Dlatego nie wypełniaj wiadomości systemowej treścią o długości powieści.
- 10:03Dbaj o precyzję, a temperatura kontroluje poziom losowości.
- 10:06Ustaw niską temperaturę bliską zeru w scenariuszach finansowych,
- 10:09gdzie potrzebujesz deterministycznych i precyzyjnych wyników.
- 10:11Jeśli budujesz funkcję marketingową i chcesz bardziej barwnych szkiców,
- 10:14zwiększ temperaturę i pozwól modelowi na improwizację.
- 10:16To nie jest zgadywanie. Wszystko jest w przewodnikach programistycznych.
- 10:19Kolejne przypomnienie o zgodności z przepisami.
- 10:20Audytorów nie będzie obchodzić Twoja kreatywność.
- 10:23Obchodzi ich to, czy liczby się zgadzają.
- 10:24Twój Metaprompt powinien zawierać jasne zasady formatowania,
- 10:27struktury odpowiedzi oraz ograniczenia dotyczące zbędnych komentarzy.
- 10:30W ten sposób wyniki kopilota nie tylko dobrze wyglądają dla użytkowników.
- 10:33Są również gotowe do wykorzystania w systemach podrzędnych i podczas audytów.
- 10:36Traktuj Metaprompt jako element dokumentacji i kontroli ryzyka.
- 10:38Podział osobowości to moment, w którym zaczyna się zabawa.
- 10:41Metaprompt marketingowego kopilota może nakazywać stosowanie perswazyjnego języka
- 10:44i burzę mózgów nad hasłami produktowymi.
- 10:45Podczas gdy finansowy kopilot otrzymuje polecenie
- 10:47generuj ustrukturyzowane wpisy do dziennika bez użycia przymiotników.
- 10:50Ta sama sztuczna inteligencja zupełnie inne wyniki,
- 10:52ponieważ osobowość definiujesz z wyprzedzeniem.
- 10:54Na tym polega różnica między praktyczną automatyzacją
- 10:57a efektownymi, ale bezużytecznymi wynikami.
- 10:59I choć ta sekcja dotyczy dobrych manier,
- 11:00nie można ignorować kwestii technicznych.
- 11:02Metaprompti działają tylko wtedy, gdy połączenie z Azure jest poprawnie skonfigurowane.
- 11:06Sztuczna inteligencja nie przetwarza ich lokalnie w biznes central.
- 11:09Wszystko przechodzi przez backend Azure OpenAI.
- 11:11Jeśli zepsujesz ten potok, nie będzie miało znaczenia,
- 11:13jak dobrze napisałeś reguły.
- 11:14Nadal będziesz otrzymywać błędy, a co gorsza, błędne wywołania kluczy.
- 11:17Podsumowując, Prompti to po prostu żądania.
- 11:19Metaprompti to instrukcje stałe.
- 11:21Dopracuj je, przechowuj bezpiecznie,
- 11:22sprawdź obliczenia tokenów i ustaw temperaturę odpowiednią do zadania.
- 11:25W ten sposób zmienisz kopilota z przypadkowego gaduły
- 11:27w wyspecjalizowanego asystenta, któremu możesz zaufać.
- 11:30Zrób to niedbale, a będziesz spędzać noce na usuwaniu nonsensów z raportów,
- 11:33lecz nawet najlepiej sformułowany prompt nie pomoże,
- 11:35jeśli twoje dane uwierzytelniające są wystawione na widok.
- 11:38I właśnie tu kryje się prawdziwe zagrożenie nie w to nie czy formacie,
- 11:40ale w sposobie przechowywania i ochrony kluczy,
- 11:47wykonane poprawnie.
- 11:48Pilnowanie kluczy nie jest efektowne,
- 11:49ale to właśnie dzięki niemu zapewniasz bezpieczeństwo swojemu tenantowi
- 11:52zamiast pisać raporty o incydentach.
- 11:54Kiedy kopilot wywołuje Azure OpenAI,
- 11:56za każdym razem potrzebuje trzech elementów.
- 11:58Punkt końcowy zasobu, czyli adres URL twojego zasobu Azure OpenAI,
- 12:02nazwę wdrożenia oraz klucz API.
- 12:03Razem te trzy elementy stanowią uścisk dłoni,
- 12:05który potwierdza, że twój tenant ma uprawnienia do komunikacji z modelem.
- 12:08Pozostaw którykolwiek z nich odkryty,
- 12:09a nie zajmujesz się sztuczną inteligencją, lecz symulacją włamania.
- 12:12Powiedzmy to wprost, pod żadnym pozorem nie koduj tych wartości na sztywno w Aleja.
- 12:16Jeśli wkleisz klucz API do kodu lub wrzucisz go na GitHub dla wygody,
- 12:20w praktyce zapraszasz skanery haseł,
- 12:21by potraktowały twoje repozytorium jak bufet.
- 12:24Deweloperzy mogą machnąć na to ręką, uznając to za testy,
- 12:26ale repozytoria są stale przeszukiwane pod kątem ujawnionych sekretów.
- 12:29W ten sposób prawdziwe dane klientów trafiają na serwisy typu Pastebin.
- 12:32Tego nie naprawisz wtorkową aktualizacją systemu.
- 12:35Bezpieczna ścieżka została już dawno wytyczona przez Microsoft.
- 12:37W pracach deweloperskich i testowych najlepszym wyborem jest pamięć izolowana Isolated Storage w Aleja.
- 12:41Wyobraź sobie to jako skrytkę wewnątrz swojego rozszerzenia.
- 12:44Klucze trafiają do środka i żadne inne rozszerzenie nie może do nich zajrzeć.
- 12:47Dzięki temu wszystko pozostaje zamknięte, lekkie i proste.
- 12:49To idealne rozwiązanie dla środowisk piaskownicy i wersji deweloperskich,
- 12:52ale nie oszukuj się, pamięć izolowana nie jest klasy produkcyjnej.
- 12:55Jej lokalny zasięg jest wygodny przy iteracjach,
- 12:57ale nie jest to magazyn danych, gdy w grę wchodzą prawdziwi użytkownicy i rzeczywiste dane.
- 13:01Kiedy jednak wdrażasz rozwiązanie na produkcję,
- 13:03jedynym odpowiedzialnym krokiem jest użycie apkei Vault lub Azure Key Vault przy szerszym wdrożeniu.
- 13:07Pomyśl o tym jak o wynajęciu sejfu bankowego zamiast chowania gotówki w szufladzie biurka.
- 13:11Key Vault przechowuje Twoje klucze API w bezpiecznym, kontrolowanym kontenerze
- 13:14z odpowiednimi zasadami logowania i rotacji.
- 13:17Integrujesz swoje rozszerzenie z usługą, wywołujesz to, czego potrzebujesz w czasie wykonywania
- 13:20i nigdy nie ujawniasz surowego klucza w kodzie.
- 13:22To wzorzec, który audytorzy naprawdę lubią, ponieważ dowodzi,
- 13:24że sekrety nigdy nie krążyły w postaci zwykłego tekstu.
- 13:27To nudne zarządzanie, ale nuda jest dokładnie tym, czego potrzebujesz, gdy pojawiają się zespoły do spraw.
- 13:31Zgodności. Oto szczegół prosto z dokumentacji, który robi różnicę.
- 13:35W języku al-klucz API można przechowywać jako tekst poufny, secret text.
- 13:38Dzięki temu, nawet podczas debagowania, klucz nie pojawi się w czytelnym formacie,
- 13:42którego ktoś mógłby zrobić zrzut ekranu.
- 13:44Tekst poufny jest dokładnie tym, na co wskazuje nazwa.
- 13:46Ukrywa wrażliwe wartości w czasie wykonywania.
- 13:48Jeśli nic innego nie zapamiętasz z tej sekcji, pamiętaj, że ta opcja istnieje.
- 13:53Zamyka ona jeden z najbardziej trywialnych wektorów wycieku,
- 13:55przypadkowe ujawnienie przez programistę w debakerze.
- 13:58Teraz określmy zasady postępowania, jak przystało na prawdziwych administratorów.
- 14:03Nie osadzaj kluczy API w kodzie AL, ani nie wklejaj ich do repozytoriów.
- 14:06To przynęta na wyłudzanie poświadczeń.
- 14:08Korzystaj z izolowanej pamięci masowej w fazie deweloperskiej i testowej,
- 14:11aby utrzymać produktywność zespołu bez przesyłania sekretów w czystym tekście.
- 14:14Nie przenoś tego wzorca z fazy deweloperskiej na produkcję.
- 14:16To nie jest skarbiec, to zwykła szafka na dokumenty.
- 14:19Połącz swoją kompilację produkcyjną Skivolt.
- 14:20To jedyne miejsce, do którego te klucze należą na dłuższą metę.
- 14:23Kolejna uwaga.
- 14:24Uprawnienia użytkowników wewnątrz Biznes Central nie blokują w magiczny sposób kluczy API.
- 14:28Kopilot dziedziczy kontrolę dostępu do danych biznesowych.
- 14:31Jasne, ale klucze służą do uwierzytelniania całej usługi.
- 14:33Jeśli jeden wycieknie, osoby z zewnątrz mogą potrzyć się pod całą integrację.
- 14:37Więc przestań udawać, że zakres uprawnień Cię tu uratuje.
- 14:40Nie uratuje.
- 14:40A jeśli chcesz zweryfikować swoją konfigurację,
- 14:43oficjalną drogą jest sekwencja ustawiania autoryzacji w kodeumcie Azure Open AI.
- 14:46To tam podajesz adres URL zasobu, wdrożenie i klucz API, aby sprawdzić, czy wszystko do siebie pasuje.
- 14:51Zrób to źle, a kopilot nawet się nie załaduje.
- 14:54Zrób to w połowie dobrze, a otrzymasz ciche błędy, które użytkownicy odkryją przed Tobą.
- 14:57Rozwiązanie jest proste.
- 14:59Podążaj za łańcuchem krok po kroku, przetestuj go czysto w środowisku deweloperskim,
- 15:01potem przekaż do preprodukcji, a na końcu na produkcję.
- 15:03Trzy środowiska, trzy zestawy kluczy, jeden potok, który faktycznie działa pod obciążeniem.
- 15:07Oto lista kontrolna, która pozwoli Ci uniknąć kłopotów.
- 15:10Izolowana pamięć w fazie deweloperskiej, kiwolt na produkcji, zabezpiecz klucz API jako tekst poufny,
- 15:14nigdy nie osadzaj wartości w kodzie i zawsze uruchamiaj łańcuch ustawiania autoryzacji od początku do końca,
- 15:19zanim uznasz zadanie za wykonane.
- 15:20Ten wzorzec sprawia, że integracja z kopilotem pozostaje aktywna, bezpieczna i zgodna z przepisami beznocnych alarmów.
- 15:26Gdy kwestia bezpieczeństwa jest już załatwiona, kolejne wyzwanie dotyczy mniej tego, gdzie ukryć klucze,
- 15:31a bardziej tego, jak połączyć wszystkie części bez ciągłych komunikatów o błędach.
- 15:35Ponieważ posiadanie możliwości metapromptu i bezpiecznego klucza niewiele pomaga, jeśli działają w izolacji i nie chcą ze sobą współpracować.
- 15:41Właśnie tutaj wchodzi w grę projektowanie przepływu pracy.
- 15:43Od planu do realizacji, tworzenie przepływu pracy.
- 15:46Porozmawiajmy o tym, co zamienia luźne elementy w działający przepływ kopilota.
- 15:51Zarejestrowałeś funkcje, określiłeś zakres, zabezpieczyłeś klucze i napisałeś metaprompt.
- 15:56Ale jeśli nie ustawisz ich we właściwej kolejności, otrzymasz jedynie błyszczący przycisk,
- 16:00który albo zgłasza błąd, albo po cichu nic nie robi, dopóki użytkownicy nie zaczną zgłaszać problemów.
- 16:05Oto sekwencja sprowadzona do pięciu kroków.
- 16:07Krok pierwszy – funkcja.
- 16:09Krok drugi – dostępność.
- 16:11Krok trzeci – autoryzacja.
- 16:12Krok czwarty – metaprompt.
- 16:14Krok piąty – pilotaż.
- 16:15Zapamiętaj te pięć kroków, a zawsze będziesz mieć schemat połączeń w głowie.
- 16:19Funkcja zapewnia umiejętności, dostępność określa odbiorców, autoryzacja budzi mózg, metaprompt nadaje maniery, a pilotaż udowadnia, że wszystko działa.
- 16:25To cała pętla.
- 16:27Krok pierwszy – funkcja.
- 16:28W języku al oznacza to rozszerzenie wyliczenia, enum, funkcji kopilota o rozszerzenie typu enum,
- 16:32a następnie zarejestrowanie go w module instalacyjnym lub aktualizacyjnym poprzez wywołanie funkcji kopilota.
- 16:37Zarejestruj funkcję.
- 16:38To oficjalne ogłoszenie o pracę, które mówi o to nowa umiejętność asystenta.
- 16:42Znajdź dla niej miejsce w systemie.
- 16:43Bez tego biznes central nawet nie wie, że twoja funkcja ma istnieć.
- 16:47Krok drugi – dostępność.
- 16:49Gdy umiejętność jest zdefiniowana, określasz zakres, w którym się pojawia.
- 16:53Jest to kontrolowane przez stronę administracyjną funkcji kopilota i agentów.
- 16:56Decydujesz, czy ma być oznaczona jako podgląd, tylko dla użytku wewnętrznego, czy ogólnie dostępna.
- 17:00Dla programisty to metadane, ale dla administratora to przełącznik wdrażania.
- 17:04Użyj go.
- 17:05Jeśli pominiesz ten krok, zaryzykujesz udostępnienie niedopracowanych funkcji wszystkim użytkownikom, zanim staną się stabilne.
- 17:10Krok trzeci – autoryzacja.
- 17:12Teraz łączysz się z backendem Azure OpenAI za pośrednictwem modułu Azure OpenAI.
- 17:16Potrzebujesz klasycznego zestawu punktu końcowego zasobu, adresu URL Azure OpenAI, nazwy wdrożenia i klucza API.
- 17:24Wywołaj Azure OpenAI.
- 17:25Ustaw autoryzację za pomocą tych wartości.
- 17:28Jeśli funkcja była ogłoszeniem o pracę, a dostępność umową, to autoryzacja jest identyfikatorem, który wpuszcza asystenta do budynku.
- 17:34Bez niej funkcja zatrzymuje się przed szklanymi drzwiami.
- 17:37Krok czwarty – metaprompt.
- 17:38Metaprompt – tutaj wprowadzasz instrukcje, które kształtują ton, strukturę i formatowanie.
- 17:42Użyj wiadomości czatu AOAI.
- 17:44Ustaw główną wiadomość systemową, aby pobrać metaprompt, który bezpiecznie zapisałeś w pamięci izolowanej lub w środowisku produkcyjnym, odwołując się do Key Vault.
- 17:52To tutaj mówisz – jesteś asystentem do spraw, ofert albo jesteś pomocnikiem finansowym i ustalasz, jak powinny wyglądać wyniki.
- 17:58Bez tego asystent po prostu wzrusza ramionami i zmyśla.
- 18:01Krok piąty – pilotaż.
- 18:02Najpierw udostępnij go niewielkiej grupie.
- 18:04Daj im te możliwości, zbierz opinie i obserwuj telemetrię.
- 18:07Moduł AI rejestruje użycie, więc widzisz, czy tworzy czyste wyniki, czy generuje śmieci.
- 18:11A zanim rozszerzysz zakres, potrzebujesz planu wycofania zmian.
- 18:14Dobra wiadomość jest taka, że strona możliwości kopilota i agentów pełni rolę bezpiecznika.
- 18:18Administratorzy mogą natychmiast wyłączyć poszczególne funkcje, jeśli coś zacznie działać nieprawidłowo.
- 18:23Ta sama strona pokazuje też przełącznik dozwolonego przesyłu danych między regionami, jeśli Twoja konfiguracja Azjur wykracza poza jeden region.
- 18:28Jeśli go zobaczysz, zwróć na to uwagę.
- 18:30Dział zgodności na pewno to zrobi.
- 18:32Przeanalizujmy tę sekwencję na przykładzie z praktyki.
- 18:34Jeden zespół stworzył kopilota do sugerowania zamówień sprzedaży.
- 18:37Zaczęli od rozszerzenia typu Enum dla możliwości kopilota i połączyli je z zainstalowanym kodeunitem.
- 18:42Oznaczyli to jako wersję zapoznawczą na stronie możliwości kopilota i agentów, więc było widoczne tylko dla testerów.
- 18:47Następnie wywołali Azjur OpenAI.
- 18:49Skonfigurowali autoryzację za pomocą punktu końcowego, wdrożenia i klucza, aby model mógł w ogóle odpowiedzieć.
- 18:54Następnie zapisali metaprompt w izolowanej pamięci i ustawili go za pomocą komunikatu w czatu AOAI.
- 18:59Ustaw główny komunikat systemowy.
- 19:01Jesteś asystentem do spraw.
- 19:02Ofert.
- 19:03Sugeruj pakiety i formatuj je jako linię pozycji.
- 19:05Bez zbędnego gadania.
- 19:06W fazie pilotażowej małe grupy testowały rozwiązanie, aż wyniki stały się przewidywalne.
- 19:10Dopiero wtedy oznaczyli dostępność jako ga, udostępniając funkcję wszystkim użytkownikom sprzedaży.
- 19:14Efekt.
- 19:15Kopilot, który rekomendował pakiety zamiast pisać lanie wody.
- 19:18Warstwa nadzoru nie jest tutaj opcjonalna.
- 19:20Jeśli coś pójdzie nie tak, administratorzy mogą wyłączyć przełącznik, zanim użytkownicy zaczną dzwonić.
- 19:24To podejście z wyłącznikiem bezpieczeństwa sprawia, że własne rozwiązania Kopilot są produktywne, a nie uciążliwe.
- 19:29Stosuj to tak, jak w przypadku każdego rozszerzenia, etapowe wdrażanie, ograniczony zakres, wymierne testy.
- 19:34A i nie ma taryfy ulgowej.
- 19:36Podczas testów uruchamiaj każdą część w izolacji.
- 19:38Nie łącz całego łańcucha w nadziei, że zadziała.
- 19:40Zweryfikuj rejestrację możliwości, sprawdź, czy dostępność się pojawia, potwierdź autoryzację, a następnie upewnij się, że Metaprompt jest uwzględniany w odpowiedziach.
- 19:49Dopiero gdy każdy element działa, daj dostęp użytkownikom końcowym.
- 19:52To pomost między planem a rzeczywistością.
- 19:55Mówiąc prościej, możliwości definiują funkcję, dostępność określa grupę docelową, autoryzacja otwiera drzwi, Metaprompt wyznacza zasady, a pilotaż dowodzi, że system Cię nie zawstydzi.
- 20:04Zrób to dobrze, a wyprzedzisz oficjalne premiery funkcji.
- 20:07To prowadzi nas do ważniejszego wniosku. Te kroki pozwalają kształtować kopilota pod Twoją firmę, zamiast podążać za każdą gotową prezentacją Microsoftu.
- 20:16Oto podsumowanie.
- 20:18Trzy rzeczy, które musisz zapamiętać.
- 20:20Po pierwsze, rozszerzaj kopilota poprzez systemową sztuczną inteligencję, rejestrując możliwości.
- 20:24Dwa, zabezpiecz połączenie z Azure.
- 20:26Podczas testów używaj izolowanej pamięci, ale na produkcji przenieś te klucze do Key Vault.
- 20:30Trzy, testuj i zarządzaj funkcjami ze strony możliwości kopilota i agentów, aby administratorzy zawsze mieli pod ręką wyłącznik bezpieczeństwa.
- 20:37Szybkie przypomnienie dla osób odpowiedzialnych za nadzór kopilot dziedziczy uprawnienia użytkownika, więc nigdy nie odczyta tego, do czego użytkownik nie ma dostępu.
- 20:43Firma Microsoft nie trenuje swoich modeli na danych Twojego tenanta, chyba że wyrazisz na to wyraźną zgodę.
- 20:48Kolejny krok. Wypróbuj w tym tygodniu jedną funkcję w swoim środowisku testowym i sprawdź, czy działa zgodnie z listą kontrolną,
- 20:53a następnie zapisz się do newslettera M365 Show, aby otrzymywać aktualizację przewodnika i obserwuj stronę M365 Show na LinkedIn, by oglądać transmisję na żywo z MVP, którzy już napotkali te problemy i je rozwiązali.