에이전트 애플리케이션의 품질에 대한 피드백 받기
Important
이 기능은 공개 미리 보기 상태입니다.
이 문서에서는 Databricks 리뷰 앱을 사용하여 에이전트 애플리케이션의 품질에 대한 사용자 검토자의 피드백을 수집하는 방법을 보여 줍니다. 다음 영역을 포함합니다.
- 리뷰 앱을 배포하는 방법입니다.
- 검토자가 앱을 사용하여 에이전트 애플리케이션의 응답에 대한 피드백을 제공하는 방법입니다.
- 앱을 사용하여 전문가가 기록된 채팅을 검토하여 개선 및 기타 피드백에 대한 제안을 제공하는 방법입니다.
사람 평가는 어떻게 되나요?
Databricks 검토 앱은 전문가 이해 관계자가 상호 작용할 수 있는 환경에서 LLM을 단계별로 준비합니다. 즉, 대화하고, 질문을 하고, 피드백을 제공하는 등입니다. 검토 앱은 LLM의 성능을 추가로 분석할 수 있도록 모든 질문, 답변 및 피드백을 유추 테이블에 기록합니다. 이러한 방식으로 검토 앱은 애플리케이션이 제공하는 답변의 품질과 안전을 보장하는 데 도움이 됩니다.
관련자는 애플리케이션 봇과 채팅하고 해당 대화에 대한 피드백을 제공하거나 기록 로그, 큐레이팅된 추적 또는 에이전트 출력에 대한 피드백을 제공할 수 있습니다.
요구 사항
에이전트를 제공하는 엔드포인트에서 유추 테이블을 사용하도록 설정해야 합니다.
각 사용자 검토자는 검토 앱 작업 영역에 대한 액세스 권한이 있거나 SCIM을 사용하여 Databricks 계정에 동기화되어야 합니다. 다음 섹션을 참조하여 검토 앱을 사용할 수 있는 권한을 설정합니다.
개발자는
databricks-agents
SDK를 설치하여 권한을 설정하고 리뷰 앱을 구성해야 합니다.%pip install databricks-agents dbutils.library.restartPython()
검토 앱을 사용할 수 있는 권한 설정
참고 항목
사용자 검토자는 검토 앱을 사용하기 위해 작업 영역에 액세스할 필요가 없습니다 .
검토 앱이 포함된 작업 영역에 액세스할 수 없는 경우에도 Databricks 계정의 모든 사용자에게 검토 앱에 대한 액세스 권한을 부여할 수 있습니다.
- 작업 영역에 액세스할 수 없는 사용자의 경우 계정 관리자는 계정 수준 SCIM 프로비저닝을 사용하여 ID 공급자에서 Azure Databricks 계정으로 사용자 및 그룹을 자동으로 동기화합니다. Databricks에서 ID를 설정할 때 이러한 사용자 및 그룹을 수동으로 등록하여 액세스 권한을 부여할 수도 있습니다. Microsoft Entra ID에서 사용자 및 그룹 동기화를 참고하세요.
- 검토 앱이 포함된 작업 영역에 대한 액세스 권한이 이미 있는 사용자의 경우 추가 구성이 필요하지 않습니다.
다음 코드 예제에서는 사용자에게 에이전트에 대한 검토 앱에 대한 권한을 부여하는 방법을 보여 줍니다. 매개 변수는 users
전자 메일 주소 목록을 사용합니다.
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)
채팅 로그를 검토하려면 사용자에게 권한이 있어야 합니다 CAN_REVIEW
.
리뷰 앱 배포
agents.deploy()
를 사용하여 에이전트를 배포하면 리뷰 앱이 자동으로 사용하도록 설정되고 배포됩니다. 명령의 출력에서 리뷰 앱의 URL 표시됩니다. 에이전트 배포에 대한 자세한 내용은 생성형 AI 애플리케이션에 대한 에이전트 배포를 참조하세요.
배포에 대한 링크가 끊어지면 list_deployments()
를 사용하여 찾을 수 있습니다.
from databricks import agents
deployments = agents.list_deployments()
deployments
앱 UI 검토
리뷰 앱을 열려면 제공된 URL을 클릭합니다. 리뷰 앱 UI의 왼쪽 사이드바에는 세 개의 탭이 있습니다.
- 지침은 검토자에게 지침을 표시합니다. 검토자에게 지침 제공을 참조하세요.
- 검토할 채팅은 전문가가 평가할 수 있도록 검토자와 앱의 상호 작용에서 로그를 표시합니다. 다른 사용자가 앱과 상호작용한 로그에 대한 전문가 검토를 참조하세요.
- 봇 을 테스트하면 검토자가 앱과 채팅하고 응답에 대한 검토를 제출할 수 있습니다. 앱과 채팅 및 검토 제출을 참고하세요.
리뷰 앱을 열면 지침 페이지가 나타납니다.
- 봇과 채팅하려면 검토 시작을 클릭하거나 왼쪽 사이드바에서 봇 테스트를 선택합니다. 자세한 정보는 앱과 채팅 및 검토 제출을 참고하세요.
- 검토에 사용할 수 있게 된 채팅 로그를 검토하려면 사이드바에서 검토할 채팅을 선택합니다. 자세한 정보는 다른 사용자가 앱과 상호작용한 로그에 대한 전문가 검토를 참조하세요. 리뷰 앱에서 채팅 로그를 사용할 수 있도록 하는 방법을 알아보려면 전문가 검토자가 평가에 사용할 수 있는 채팅 로그 만들기를 참조하세요.
검토자에게 지침 제공
검토자에게 표시되는 지침에 대한 사용자 지정 텍스트를 제공하려면 다음 코드를 사용합니다.
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)
앱과 채팅 및 검토 제출
앱과 채팅 및 검토 제출 단계:
왼쪽 사이드바에서 봇 테스트를 클릭합니다.
상자에 질문을 입력하고 키보드에서Return 또는 Enter 키를 누르거나 상자의 화살표를 클릭합니다.
앱은 질문에 대한 답변과 답변을 찾는 데 사용한 원본을 표시합니다.
참고 항목
에이전트가 검색기를 사용하는 경우 데이터 원본은 에이전트를 만드는 동안 정의된 검색기 스키마에 의해 설정된
doc_uri
필드로 식별됩니다. 을 참조하여 검색자 스키마을 설정하세요.앱의 대답을 검토하고 예, 아니요 또는 모름을 선택합니다.
앱이 추가 정보를 요청합니다. 적절한 확인란을 선택하거나 제공된 필드에 메모를 입력합니다.
응답을 직접 편집하여 더 나은 답변을 제공할 수도 있습니다. 응답을 편집하려면 다음 비디오와 같이 응답 편집을 클릭하고 대화 상자에서 변경한 다음 저장을 클릭합니다.
완료를 클릭하여 피드백을 저장합니다.
계속해서 질문을 하여 추가 피드백을 제공합니다.
다음 다이어그램에서는 이러한 워크플로를 보여 줍니다.
- 리뷰 앱을 사용하여 검토자는 에이전트 애플리케이션과 채팅합니다.
- 검토자는 리뷰 앱을 사용하여 애플리케이션 응답에 대한 피드백을 제공합니다.
- 모든 요청, 응답 및 피드백은 유추 테이블에 기록됩니다.
전문가 검토자가 평가에 사용할 수 있는 채팅 로그 만들기
사용자가 REST API 또는 리뷰 앱을 사용하여 앱과 상호 작용하면 모든 요청, 응답 및 추가 피드백이 유추 테이블에 저장됩니다. 유추 테이블은 모델이 등록된 것과 동일하고 <model_name>_payload
, <model_name>_payload_assessment_logs
, 및 <model_name>_payload_request_logs
이름이 지정된 Unity 카탈로그 및 스키마에 있습니다. 스키마를 포함하여 이러한 테이블에 대한 자세한 내용은 에이전트 고급 유추 테이블을 참조하세요.
전문가 검토자의 평가를 위해 이러한 로그를 리뷰 앱에 로드하려면 먼저 다음과 같이 request_id
를 찾아서 해당 request_id
에 대한 검토를 사용하도록 설정해야 합니다.
request_id
유추 테이블에서 검토할<model_name>_payload_request_logs
를 찾습니다. 유추 테이블은 모델이 등록된 동일한 Unity 카탈로그 및 스키마에 있습니다.검토 로그를 리뷰 앱에 로드하려면 다음과 유사한 코드를 사용합니다.
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", ], )
결과 셀에는 검토를 위해 로드된 선택한 로그가 있는 리뷰 앱에 대한 링크가 포함됩니다.
다른 사용자가 앱과 상호작용한 로그에 대한 전문가 검토
이전 채팅의 로그를 검토하려면 로그를 검토할 수 있어야 합니다. 전문가 검토자가 평가에 사용할 수 있는 채팅 로그 만들기를 참조하세요.
리뷰 앱의 왼쪽 사이드바에서 검토할 채팅을 선택합니다. 활성화된 요청이 표시됩니다.
검토를 위해 표시할 요청을 클릭합니다.
요청 및 응답을 검토합니다. 또한 앱은 참조에 사용된 원본을 보여 줍니다. 이러한 항목을 클릭하여 참조를 검토하고 원본의 관련성에 대한 피드백을 제공할 수 있습니다.
응답 품질에 대한 피드백을 제공하려면 예, 아니오 또는 모름을 선택합니다.
앱이 추가 정보를 요청합니다. 적절한 확인란을 선택하거나 제공된 필드에 메모를 입력합니다.
응답을 직접 편집하여 더 나은 답변을 제공할 수도 있습니다. 응답을 편집하려면 응답 편집을 클릭하고 대화 상자에서 변경한 다음 저장을 클릭합니다. 앱과 채팅 및 검토 제출에서 프로세스를 보여주는 비디오를 참조하세요.
완료를 클릭하여 피드백을 저장합니다.
다음 다이어그램에서는 이러한 워크플로를 보여 줍니다.
- 리뷰 앱 또는 사용자 지정 앱을 사용하여 검토자는 에이전트 애플리케이션과 채팅합니다.
- 모든 요청 및 응답은 유추 테이블에 기록됩니다.
- 애플리케이션 개발자는
enable_trace_reviews([request_id])
(request_id
유추 테이블의<model_name>_payload_request_logs
가 위치한 곳)를 사용하여 앱 검토를 위한 채팅 로그를 게시합니다. - 리뷰 앱을 사용하여 전문가가 로그를 검토하고 피드백을 제공합니다. 전문가 피드백은 유추 테이블에 로그됩니다.
참고 항목
Azure Storage 방화벽을 사용하도록 설정한 경우 Azure Databricks 계정 팀에 문의하여 엔드포인트에 대한 유추 테이블을 사용하도록 설정합니다.
요청 로그 테이블에서 mlflow.evaluate()
사용
다음 Notebook에서는 검토 앱의 로그를 사용하여 mlflow.evaluate()
의 사용 평가 실행에 대한 입력으로 사용하는 방법을 보여 줍니다.