Udostępnij za pośrednictwem


Interfejs API asystentów usługi Azure OpenAI (wersja zapoznawcza)

Asystenci, nowa funkcja usługi Azure OpenAI Service, jest teraz dostępna w publicznej wersji zapoznawczej. Interfejs API asystentów ułatwia deweloperom tworzenie aplikacji z zaawansowanymi środowiskami przypominającymi copilot, które mogą przesiewać dane, sugerować rozwiązania i automatyzować zadania.

  • Asystenci mogą wywoływać modele usługi Azure OpenAI z określonymi instrukcjami, aby dostosować ich osobowość i możliwości.
  • Asystenci mogą uzyskiwać dostęp do wielu narzędzi równolegle. Mogą to być narzędzia hostowane w usłudze Azure OpenAI, takie jak interpreter kodu i wyszukiwanie plików, lub narzędzia, które tworzysz, hostujesz i uzyskujesz dostęp za pośrednictwem wywoływania funkcji.
  • Asystenci mogą uzyskiwać dostęp do trwałych wątków. Wątki upraszczają tworzenie aplikacji sztucznej inteligencji, przechowując historię komunikatów i obcinając ją, gdy konwersacja jest zbyt długa dla długości kontekstu modelu. Możesz utworzyć wątek raz i po prostu dołączyć do niego komunikaty jako odpowiedź użytkowników.
  • Asystenci mogą uzyskiwać dostęp do plików w kilku formatach. Albo w ramach tworzenia lub jako część wątków między asystentami i użytkownikami. Korzystając z narzędzi, Asystenci mogą również tworzyć pliki (takie jak obrazy lub arkusze kalkulacyjne) i przytaczać pliki, do których odwołują się w tworzonych wiadomościach.

Omówienie

Wcześniej tworzenie niestandardowych asystentów sztucznej inteligencji wymagało ciężkiego podnoszenia nawet dla doświadczonych deweloperów. Chociaż interfejs API uzupełniania czatów jest lekki i zaawansowany, jest z natury bezstanowy, co oznacza, że deweloperzy musieli zarządzać stanem konwersacji i wątkami czatu, integracją narzędzi, pobieraniem dokumentów i indeksów oraz ręcznie wykonywać kod.

Interfejs API Asystentów, jako stanowy rozwój interfejsu API uzupełniania czatu, zapewnia rozwiązanie tych wyzwań. Interfejs API asystentów obsługuje trwałe wątki zarządzane automatycznie. Oznacza to, że jako deweloper nie musisz już opracowywać systemów zarządzania stanami konwersacji i pracować nad ograniczeniami okna kontekstowego modelu. Interfejs API Asystentów automatycznie obsłuży optymalizacje, aby zachować wątek poniżej maksymalnego okna kontekstu wybranego modelu. Po utworzeniu wątku możesz po prostu dołączyć do niego nowe wiadomości, gdy użytkownicy będą odpowiadać. Asystenci mogą również uzyskać dostęp do wielu narzędzi równolegle, w razie potrzeby. Do tych narzędzi należą:

Napiwek

Korzystanie z Asystentów nie wiąże się z żadnymi dodatkowymi cenami ani limitami przydziału, chyba że używasz interpretera kodu lub narzędzi wyszukiwania plików.

Interfejs API asystentów jest oparty na tych samych funkcjach, które zasilają produkt GPT platformy OpenAI. Niektóre możliwe przypadki użycia obejmują rekomendacje dotyczące produktów opartych na sztucznej inteligencji, aplikację analityka sprzedaży, asystenta kodowania, czatbota Q&A pracowników i nie tylko. Rozpocznij tworzenie na placu zabaw dla asystentów bez kodu w programie Azure OpenAI Studio, AI Studio lub rozpocznij tworzenie za pomocą interfejsu API.

Ważne

Pobieranie niezaufanych danych przy użyciu wywoływania funkcji, interpretera kodu lub przeszukiwania plików z danymi wejściowymi plików oraz funkcji Wątki asystenta może naruszyć bezpieczeństwo Asystenta lub aplikację korzystającą z Asystenta. Dowiedz się więcej o podejściach zaradczych tutaj.

Asystentów plac zabaw

W naszym przewodniku Szybki start udostępnimy przewodnik po placu zabaw Dla asystentów. Zapewnia to środowisko bez kodu do testowania możliwości asystentów.

Składniki asystentów

Diagram przedstawiający składniki asystenta.

Składnik Opis
Assistent Niestandardowa sztuczna inteligencja korzystająca z modeli usługi Azure OpenAI w połączeniu z narzędziami.
Wątku Sesja konwersacji między asystentem a użytkownikiem. Wątki przechowują komunikaty i automatycznie obsługują obcinanie w celu dopasowania zawartości do kontekstu modelu.
Wiadomość Komunikat utworzony przez Asystenta lub użytkownika. Wiadomości mogą zawierać tekst, obrazy i inne pliki. Komunikaty są przechowywane jako lista w wątku.
Run Aktywacja asystenta w celu rozpoczęcia działania na podstawie zawartości wątku. Asystent używa konfiguracji i komunikatów wątku do wykonywania zadań przez wywoływanie modeli i narzędzi. W ramach przebiegu Asystent dołącza komunikaty do wątku.
Krok uruchamiania Szczegółowa lista kroków, które asystent wziął w ramach przebiegu. Asystent może wywoływać narzędzia lub tworzyć komunikaty podczas jego uruchamiania. Badanie kroków uruchamiania pozwala zrozumieć, jak asystent uzyskuje wyniki końcowe.

Dostęp do danych asystentów

Obecnie asystenci, wątki, komunikaty i pliki utworzone dla asystentów są ograniczone na poziomie zasobów usługi Azure OpenAI. W związku z tym każda osoba mająca dostęp do zasobu usługi Azure OpenAI lub klucza interfejsu API może odczytywać/zapisywać asystentów, wątków, komunikatów i plików.

Zdecydowanie zalecamy następujące mechanizmy kontroli dostępu do danych:

  • Zaimplementuj autoryzację. Przed wykonaniem operacji odczytu lub zapisu na asystentach, wątkach, komunikatach i plikach upewnij się, że użytkownik końcowy ma do tego uprawnienia.
  • Ograniczanie dostępu do zasobów i klucza interfejsu API usługi Azure OpenAI. Uważnie zastanów się, kto ma dostęp do zasobów usługi Azure OpenAI, w których są używane asystenty i skojarzone klucze interfejsu API.
  • Rutynowo przeprowadzaj inspekcję, które konta/osoby mają dostęp do zasobu usługi Azure OpenAI. Klucze interfejsu API i dostęp na poziomie zasobów umożliwiają szeroką gamę operacji, w tym odczytywanie i modyfikowanie komunikatów i plików.
  • Włącz ustawienia diagnostyczne, aby umożliwić długoterminowe śledzenie niektórych aspektów dziennika aktywności zasobu usługi Azure OpenAI.

Parametry

Interfejs API Asystentów obsługuje kilka parametrów, które umożliwiają dostosowanie danych wyjściowych Asystentów. Parametr tool_choice umożliwia wymusić użycie określonego narzędzia przez Asystenta. Możesz również tworzyć wiadomości z rolą assistant , aby tworzyć niestandardowe historie konwersacji w wątkach. temperature, top_p, response_format umożliwia dalsze dostrajanie odpowiedzi. Aby uzyskać więcej informacji, zobacz dokumentację referencyjną.

Zarządzanie oknem kontekstowym

Asystenci automatycznie obcinają tekst, aby upewnić się, że pozostaje on w maksymalnej długości kontekstu modelu. To zachowanie można dostosować, określając maksymalne tokeny, które mają być używane przez przebieg i/lub maksymalną liczbę ostatnich komunikatów, które mają zostać uwzględnione w przebiegu.

Maksymalna liczba tokenów uzupełniania i maksymalna liczba tokenów monitów

Aby kontrolować użycie tokenu w jednym przebiegu, ustaw polecenie max_prompt_tokens i max_completion_tokens podczas tworzenia przebiegu. Te limity dotyczą całkowitej liczby tokenów używanych we wszystkich ukończeniach w całym cyklu życia przebiegu.

Na przykład zainicjowanie uruchomienia z ustawioną wartością max_prompt_tokens 500 i max_completion_tokens ustawieniem 1000 oznacza, że pierwsze ukończenie spowoduje obcięcie wątku do 500 tokenów i ograniczenie danych wyjściowych na 1000 tokenów. Jeśli w pierwszym zakończeniu jest używanych tylko 200 tokenów monitów i 300 tokenów ukończenia, drugie ukończenie będzie miało dostępne limity 300 tokenów monitów i 700 tokenów ukończenia.

Jeśli ukończenie max_completion_tokens osiągnie limit, uruchomienie zakończy się stanem niekompletnym, a szczegóły zostaną podane w incomplete_details polu Obiektu Uruchom.

W przypadku korzystania z narzędzia wyszukiwania plików zalecamy ustawienie wartości nie mniejszej max_prompt_tokens niż 20 000. W przypadku dłuższych konwersacji lub wielu interakcji z wyszukiwaniem plików należy rozważyć zwiększenie tego limitu do 50 000 lub w idealnym przypadku całkowite usunięcie max_prompt_tokens limitów w celu uzyskania najwyższych wyników jakości.

Strategia obcinania

Można również określić strategię obcinania, aby kontrolować sposób renderowania wątku w oknie kontekstowym modelu. Użycie strategii obcinania typu auto będzie używać domyślnej strategii obcinania interfejsu OpenAI. Użycie strategii obcinania typu last_messages umożliwia określenie liczby najnowszych komunikatów do uwzględnienia w oknie kontekstowym.

Zobacz też