Udostępnij za pośrednictwem


Tworzenie i udostępnianie interfejsu użytkownika czatu za pomocą usługi Databricks Apps

Użyj usługi Databricks Apps, aby skompilować i wdrożyć interfejs użytkownika czatu dla agenta. Szablony aplikacji agenta obejmują ten interfejs użytkownika czatu bez dodatkowej konfiguracji. Ta strona służy do dostosowywania interfejsu użytkownika szablonu lub dodawania interfejsu użytkownika czatu do agenta wdrożonego bez szablonu.

Przykładowy interfejs użytkownika czatu na potrzeby czatowania z wdrożonymi agentami.

Wymagania

Ten interfejs użytkownika czatu współpracuje z dowolnym agentem usługi Azure Databricks, z wyjątkiem starszych schematów, w tym:

Musisz mieć następujące narzędzia programistyczne:

  • Interfejs wiersza polecenia programu NPM: wymagany do programowania lokalnego. Zobacz GitHub - NPM CLI

  • Interfejs wiersza polecenia usługi Databricks: wymagany do uwierzytelniania, zobacz przewodnik instalacji.

    1. Zainstaluj interfejs wiersza polecenia usługi Databricks.
    2. Ustaw nazwę profilu:
      export DATABRICKS_CONFIG_PROFILE='your_profile_name'
      
    3. Konfigurowanie uwierzytelniania:
      databricks auth login --profile "$DATABRICKS_CONFIG_PROFILE"
      
      

Przykładowa aplikacja do czatu

Przykładowa aplikacja e2e-chatbot-app-next używa zestawu SDK NextJS, React i AI do tworzenia interfejsu czatu gotowego do produkcji.

Zobacz README.md projektu, aby uzyskać szczegółowe instrukcje dotyczące używania szablonu.

Przykładowa aplikacja demonstruje następujące kwestie:

  • Dane wyjściowe przesyłania strumieniowego: wyświetla odpowiedzi agenta w trakcie ich generowania i automatycznie przełącza się na tryb bez przesyłania strumieniowego, gdy jest to konieczne.
  • Wywołania narzędzi: renderuje wywołania narzędzi dla agentów utworzonych przy użyciu najlepszych rozwiązań platformy Agent Framework
  • Integracja agenta Databricks i modelu bazowego: bezpośrednie połączenie z modelami bazowymi, agentem Databricks obsługującym punkty końcowe i Agent Bricks
  • Uwierzytelnianie usługi Databricks: używa uwierzytelniania usługi Databricks do identyfikowania użytkowników końcowych aplikacji czatu i bezpiecznego zarządzania konwersacjami.
  • Trwała historia czatów: przechowuje konwersacje w usłudze Databricks Lakebase (Postgres) z pełnym zarządzaniem

Otwórz następujące sekcje, aby włączyć funkcje opcjonalne:

Włączanie historii czatów

Włączanie historii czatów

Domyślnie konwersacje są przechowywane tylko w pamięci i są tracone po zakończeniu sesji. Aby zachować historię w usłudze PostgreSQL, uruchom skrypt szybkiego startu opisany w README.md szablonu.

Włączanie opinii użytkowników

Włącz opinię użytkowników

Użytkownicy mogą przekazywać opinie w postaci kciuka w górę/kciuka w dół dotyczące odpowiedzi, które są zapisane w eksperymencie MLflow.

Jeśli używasz szablonu agenta, takiego jak agent-openai-agents-sdk lub agent-langgraph, pakiet automatycznie konfiguruje uwierzytelnianie dla aplikacji w celu pisania opinii użytkowników w eksperymencie MLflow. Opinia działa po databricks bundle deploy, bez dodatkowych kroków.

Jeśli używasz autonomicznej aplikacji e2e-chatbot-app-next powiązanej z istniejącym punktem końcowym agenta, uruchom skrypt 'quickstart' opisany w szablonie README.md, aby skonfigurować uwierzytelnianie dla eksperymentu MLflow.

Uwaga / Notatka

Połącz bazę danych Lakebase, aby utrwalić status kciuków w górę/w dół między ponownym ładowaniem strony. Zobacz Włączanie historii czatów.

Uruchamiaj wiele aplikacji w tej samej instancji bazy danych

Hostowanie wielu aplikacji na tej samej instancji bazy danych

W tym przykładzie tworzona jest tylko jedna baza danych na aplikację, ponieważ kod aplikacji jest dostosowany do stałego schematu ai_chatbot w wystąpieniu bazy danych. Aby hostować wiele aplikacji z tego samego wystąpienia, należy wykonać następujące czynności:

  1. Zaktualizuj nazwę wystąpienia bazy danych w pliku databricks.yml.
  2. Zaktualizuj odwołania do ai_chatbot w bazie kodu do nowej żądanej nazwy schematu w istniejącym wystąpieniu bazy danych.
  3. Uruchom polecenie npm run db:generate , aby ponownie wygenerować migracje bazy danych.
  4. Wdróż aplikację.
Włączanie autoryzacji użytkownika (publiczna wersja zapoznawcza)

Włączanie autoryzacji użytkownika

Ważna

Autoryzacja użytkownika jest dostępna w publicznej wersji zapoznawczej. Administrator obszaru roboczego musi go włączyć, aby można było skonfigurować autoryzację użytkownika dla aplikacji.

Niektóre obsługujące punkty końcowe wymagają, aby aplikacja przekazała token dostępu użytkownika zamiast tokenu jednostki usługi aplikacji. Jest to nazywane autoryzacją użytkownika, czasami określane jako autoryzacja w imieniu użytkownika.

Punkty końcowe nadzoru wieloagentowego zawsze wymagają autoryzacji użytkownika. Niestandardowy model obsługujący punkty końcowe wymagają również autoryzacji użytkownika, gdy punkt końcowy ma zakresy interfejsu API skonfigurowane w zasadach uwierzytelniania.

Aby skonfigurować autoryzację użytkownika, dodaj wymagane zakresy podczas tworzenia lub edytowania aplikacji w interfejsie użytkownika usługi Azure Databricks:

  1. W kroku Konfigurowanie zasobów w obszarze Autoryzacja użytkownika kliknij pozycję +Dodaj zakres.
  2. serving.serving-endpoints Dodaj zakres. Ten zakres jest wymagany dla wszystkich punktów końcowych korzystających z autoryzacji użytkownika.
  3. Dodaj wszelkie dodatkowe zakresy wymienione w zasadach uwierzytelniania punktu końcowego.

Aby uzyskać szczegółowe instrukcje, zobacz Dodawanie zakresów do aplikacji.

Szablon e2e-chatbot-app-next automatycznie wykrywa, czy skonfigurowany punkt końcowy obsługujący wymaga autoryzacji użytkownika. Jeśli w aplikacji brakuje wymaganych zakresów, zostanie wyświetlony baner ostrzegawczy z listą brakujących zakresów.

Udostępnij aplikację

Udziel użytkownikom uprawnień do wyświetlania aplikacji (zobacz Konfigurowanie uprawnień dla aplikacji usługi Databricks), a następnie udostępnij adres URL aplikacji.

Znane ograniczenia

  • Brak obsługi obrazów ani innych danych wejściowych wielomodalnych
  • Ta aplikacja obsługuje tylko autoryzację CLI Databricks (rozwój lokalny) oraz autoryzację jednostki głównej (wdrożone aplikacje). PAT, tożsamości zarządzane przez platformę Azure i inne mechanizmy nie są obsługiwane.
  • Zakresy funkcji Unity Catalog nie są obsługiwane w przypadku autoryzacji użytkownika.

Aplikacja czatu agenta Streamlit

Poprzedni szablon streamlit, e2e-chatbot-app, jest nadal dostępny, ale nie ma funkcji produkcyjnych e2e-chatbot-app-next.