Udostępnij za pośrednictwem


Uzyskaj opinię na temat jakości aplikacji agentowej (MLflow 2)

Ważne

Ta funkcja jest dostępna w publicznej wersji zapoznawczej.

Ważne

Databricks zaleca korzystanie z bieżącej wersji Review App.

W tym artykule pokazano, jak używać aplikacji do przeglądu usługi Databricks w celu zbierania opinii od recenzentów dotyczących jakości agenta sztucznej inteligencji. Obejmuje ona następujące kwestie:

  • Jak wdrożyć aplikację do przeglądu.
  • Jak recenzenci używają aplikacji do przekazywania opinii na temat odpowiedzi aplikacji agentowej.
  • Jak eksperci mogą przeglądać zarejestrowane czaty, aby przekazać sugestie dotyczące ulepszeń i innych opinii przy użyciu aplikacji.

Co się dzieje w ocenie ludzkiej?

Usługa aplikacji recenzji Databricks umieszcza LLM w środowisku, w którym eksperci mogą z nią wchodzić w interakcję — innymi słowy, prowadzą rozmowę, zadają pytania, przekazują opinię itd. Aplikacja przeglądu rejestruje wszystkie pytania, odpowiedzi i opinie w tabeli wnioskowania, aby umożliwić dalszą analizę wydajności usługi LLM. W ten sposób aplikacja do przeglądu pomaga zapewnić jakość i bezpieczeństwo odpowiedzi zapewnianych przez aplikację.

Uczestnicy projektu mogą porozmawiać z botem aplikacji i przekazać opinię na temat tych konwersacji lub przekazać opinię na temat dzienników historycznych, wyselekcjonowanych śladów lub danych wyjściowych agenta.

Wymagania

  • Tabele wnioskowania należy włączyć w punkcie końcowym, który obsługuje agenta.

  • Każdy recenzent musi mieć dostęp do obszaru roboczego przeglądu aplikacji lub być zsynchronizowany z kontem usługi Databricks za pomocą rozwiązania SCIM. Zobacz następną sekcję Skonfiguruj uprawnienia do korzystania z aplikacji do recenzji.

  • Deweloperzy muszą zainstalować zestaw SDK databricks-agents, aby skonfigurować uprawnienia i skonfigurować aplikację do przeglądu.

    %pip install databricks-agents
    dbutils.library.restartPython()
    

Konfigurowanie uprawnień do korzystania z aplikacji przeglądu

Uwaga

Recenzenci nie wymagają dostępu do obszaru roboczego, aby korzystać z aplikacji do przeglądu.

Możesz udzielić dostępu do aplikacji do przeglądu dla dowolnego użytkownika na koncie usługi Databricks, nawet jeśli nie ma dostępu do obszaru roboczego zawierającego aplikację do przeglądu.

  • W przypadku użytkowników, którzy nie mają dostępu do obszaru roboczego, administrator konta używa aprowizacji SCIM na poziomie konta, aby automatycznie synchronizować użytkowników i grupy z dostawcy tożsamości do konta usługi Azure Databricks. Możesz również ręcznie zarejestrować tych użytkowników i grupy w celu udzielenia im dostępu podczas konfigurowania tożsamości w usłudze Databricks. Zobacz Synchronizuj użytkowników i grupy z Microsoft Entra ID za pomocą SCIM.
  • W przypadku użytkowników, którzy mają już dostęp do obszaru roboczego zawierającego aplikację do przeglądu, nie jest wymagana żadna dodatkowa konfiguracja.

Poniższy przykład kodu pokazuje, jak udzielić użytkownikom uprawnień do przeglądu aplikacji dla agenta. Parametr users przyjmuje listę adresów e-mail.

from databricks import agents

# Note that <user_list> can specify individual users or groups.
agents.set_permissions(model_name=<model_name>, users=[<user_list>], permission_level=agents.PermissionLevel.CAN_QUERY)

Aby przejrzeć dziennik czatów, użytkownik musi mieć CAN_REVIEW uprawnienie.

Wdrażanie aplikacji do przeglądu

Podczas wdrażania agenta przy użyciu programu agents.deploy()aplikacja do przeglądu jest automatycznie włączana i wdrażana. Dane wyjściowe polecenia zawierają adres URL aplikacji do przeglądu. Aby uzyskać informacje na temat wdrażania agenta, zobacz Wdrażanie agenta na potrzeby generowania aplikacji sztucznej inteligencji.

link do recenzji aplikacji z wyników polecenia notebooka

Jeśli utracisz link do wdrożenia, możesz go znaleźć przy użyciu polecenia list_deployments().

from databricks import agents

deployments = agents.list_deployments()
deployments

Przeglądanie interfejsu użytkownika aplikacji

Aby otworzyć aplikację do przeglądu, kliknij podany adres URL. Interfejs użytkownika aplikacji przeglądu ma trzy karty na lewym pasku bocznym:

Po otwarciu aplikacji do przeglądu zostanie wyświetlona strona instrukcji.

przeglądanie ekranu otwierania aplikacji

Podaj instrukcje dla recenzentów

Aby podać niestandardowy tekst instrukcji wyświetlanych dla recenzentów, użyj następującego kodu:

from databricks import agents

agents.set_review_instructions(uc_model_name, "Thank you for testing the bot. Use your domain expertise to evaluate and give feedback on the bot's responses, ensuring it aligns with the needs and expectations of users like yourself.")
agents.get_review_instructions(uc_model_name)

Zrzut ekranu z instrukcji w aplikacji do recenzji uwzględnia przykład w języku Python.

Rozmowa z aplikacją i przesyłanie recenzji

Aby porozmawiać z aplikacją i przesłać recenzje:

  1. Kliknij pozycję Przetestuj bota na pasku bocznym po lewej stronie.

  2. Wpisz pytanie w polu i naciśnij Return lub Enter na klawiaturze lub kliknij strzałkę w polu.

    Aplikacja wyświetla swoją odpowiedź na twoje pytanie oraz źródła użyte do znalezienia odpowiedzi.

    Uwaga

    Jeśli agent używa programu retriever, źródła danych są identyfikowane przez pole doc_uri ustawione przez schemat programu retriever zdefiniowany podczas tworzenia agenta. Zobacz Set retriever schema, aby zapewnić zgodność z MLflow.

  3. Przejrzyj odpowiedź aplikacji i wybierz pozycję Tak, Nie lub Nie wiem.

  4. Aplikacja prosi o dodatkowe informacje. Zaznacz odpowiednie pola lub wpisz swoje komentarze w podanym polu.

  5. Możesz również edytować odpowiedź bezpośrednio, aby zapewnić lepszą odpowiedź. Aby edytować odpowiedź, kliknij pozycję Edytuj odpowiedź, wprowadź zmiany w oknie dialogowym, a następnie kliknij przycisk Zapisz, jak pokazano w poniższym filmie wideo.

    jak edytować odpowiedź

  6. Kliknij przycisk Gotowe , aby zapisać swoją opinię.

  7. Kontynuuj zadawanie pytań, aby przekazać dodatkową opinię.

Na poniższym diagramie przedstawiono ten przepływ pracy.

  1. Korzystając z aplikacji do recenzji, recenzent rozmawia z aplikacją agentową.
  2. Korzystając z aplikacji do przeglądu, recenzent udostępnia opinię na temat odpowiedzi aplikacji.
  3. Wszystkie żądania, odpowiedzi i opinie są rejestrowane w tabelach wnioskowania.

Uruchom aplikację recenzowaną, w której eksperci rozmawiają z agentową aplikacją i przekazują informację zwrotną.

Udostępnianie dzienników czatów do oceny przez recenzentów ekspertów

Gdy użytkownik wchodzi w interakcję z aplikacją przy użyciu interfejsu API REST lub aplikacji do przeglądu, wszystkie żądania, odpowiedzi i dodatkowe opinie są zapisywane w tabelach wnioskowania. Tabele wnioskowania znajdują się w tym samym katalogu Unity Catalog i schemacie, w którym zarejestrowano model, i mają nazwy <model_name>_payload, <model_name>_payload_assessment_logsi <model_name>_payload_request_logs. Aby uzyskać więcej informacji na temat tych tabel, w tym schematów, zobacz Monitor wdrożonych agentów.

Aby załadować te dzienniki do aplikacji przeglądowej do oceny przez recenzentów eksperckich, należy najpierw znaleźć request_id i włączyć recenzje dla tego request_id w następujący sposób:

  1. Znajdź request_idktóre mają być przejrzane z tabeli wnioskowania <model_name>_payload_request_logs. Tabela wnioskowania znajduje się w tym samym katalogu Unity Catalog i schemacie, w którym zarejestrowano model.

  2. Użyj kodu podobnego do poniższego, aby załadować dzienniki przeglądu do aplikacji przeglądu:

    from databricks import agents
    
    agents.enable_trace_reviews(
      model_name=model_fqn,
      request_ids=[
          "52ee973e-0689-4db1-bd05-90d60f94e79f",
          "1b203587-7333-4721-b0d5-bba161e4643a",
          "e68451f4-8e7b-4bfc-998e-4bda66992809",
      ],
    )
    
  3. Komórka wyników zawiera link do aplikacji przeglądowej z załadowanymi wybranymi dziennikami.

Aplikacja do przeglądu z dziennikami czatów załadowanymi do weryfikacji przez ekspertów

Ekspercki przegląd dzienników z interakcji innych użytkowników z aplikacją

Aby przejrzeć dzienniki z poprzednich czatów, dzienniki muszą być włączone do przeglądu. Zobacz Udostępnij dzienniki czatów do oceny przez ekspertów-recenzentów.

  1. Na lewym pasku bocznym aplikacji recenzującej wybierz pozycję Czaty do sprawdzenia. Zostaną wyświetlone włączone żądania.

    przegląd czatów włączony

  2. Kliknij żądanie, aby wyświetlić je do przeglądu.

  3. Przejrzyj prośbę i odpowiedź. Aplikacja pokazuje również źródła używane do celów referencyjnych. Możesz je kliknąć, aby przejrzeć odwołanie i przekazać opinię na temat istotności źródła.

  4. Aby przekazać opinię na temat jakości odpowiedzi, wybierz pozycję Tak, Nie lub Nie wiem.

  5. Aplikacja prosi o dodatkowe informacje. Zaznacz odpowiednie pola lub wpisz swoje komentarze w podanym polu.

  6. Możesz również edytować odpowiedź bezpośrednio, aby zapewnić lepszą odpowiedź. Aby edytować odpowiedź, kliknij pozycję Edytuj odpowiedź, wprowadź zmiany w oknie dialogowym, a następnie kliknij przycisk Zapisz. Zobacz Czat z aplikacją i prześlij recenzje, aby obejrzeć wideo przedstawiające proces.

  7. Kliknij przycisk Gotowe , aby zapisać swoją opinię.

Na poniższym diagramie przedstawiono ten przepływ pracy.

  1. Korzystając z aplikacji do recenzowania lub aplikacji niestandardowej, recenzenci rozmawiają z aplikacją agentową.
  2. Wszystkie żądania i odpowiedzi są rejestrowane w tabelach wnioskowania.
  3. Deweloper aplikacji używa enable_trace_reviews([request_id]) (gdzie request_id pochodzi z tabeli wnioskowania <model_name>_payload_request_logs), aby opublikować dzienniki czatu do przeanalizowania aplikacji.
  4. Korzystanie z aplikacji przeglądowej, w której ekspert przegląda dzienniki i przekazuje opinie. Opinie ekspertów są rejestrowane w tabelach wnioskowania.

Uruchom przegląd śledzenia, w którym recenzenci wchodzą w interakcje z aplikacją do przeglądu lub interfejsem API REST, aby przekazać opinię.

Uwaga

Jeśli masz włączoną zaporę usługi Azure Storage, skontaktuj się z zespołem Azure Databricks, aby włączyć tabele inferencyjne dla punktów końcowych.

Użyj mlflow.evaluate() w tabeli dzienników żądań

W poniższym notatniku pokazano, jak używać dzienników z aplikacji przeglądu jako danych wejściowych do wykonania oceny przy użyciu mlflow.evaluate().

Uruchom ocenę w notatniku dzienników żądań

Weź notatnik