다음을 통해 공유


흐름을 평가하기 위한 일괄 처리 실행 제출

일괄 실행은 큰 데이터 세트를 사용하여 프롬프트 흐름을 실행하고 각 데이터 행에 대한 출력을 생성합니다. 프롬프트 흐름이 큰 데이터 세트로 얼마나 잘 수행되는지 평가하려면 일괄 처리 실행을 제출하고 평가 메서드를 사용하여 성능 점수 및 메트릭을 생성할 수 있습니다.

일괄 처리 흐름이 완료되면 평가 메서드가 자동으로 실행되어 점수와 메트릭을 계산합니다. 평가 메트릭을 사용하여 성능 기준 및 목표에 대해 흐름의 출력을 평가할 수 있습니다.

이 문서에서는 일괄 처리를 제출하고 평가 방법을 사용하여 흐름 출력의 품질을 측정하는 방법을 설명합니다. 평가 결과 및 메트릭을 보는 방법과 다른 메서드 또는 변형 하위 집합을 사용하여 새 평가 라운드를 시작하는 방법을 알아봅니다.

필수 조건

평가 방법으로 일괄 처리 흐름을 실행하려면 다음 구성 요소가 필요합니다.

  • 성능을 테스트하려는 작동하는 Azure Machine Learning 프롬프트 흐름입니다.

  • 일괄 처리 실행에 사용할 테스트 데이터 세트입니다.

    테스트 데이터 세트는 CSV, TSV 또는 JSONL 형식이어야 하며 흐름의 입력 이름과 일치하는 헤더가 있어야 합니다. 그러나 평가 실행 설정 프로세스 중에 다른 데이터 세트 열을 입력 열에 매핑할 수 있습니다.

평가 일괄 처리 실행 만들기 및 제출

일괄 처리를 제출하려면 흐름을 테스트할 데이터 세트를 선택합니다. 흐름 출력에 대한 메트릭을 계산하기 위한 평가 방법을 선택할 수도 있습니다. 평가 방법을 사용하지 않으려면 평가 단계를 건너뛰고 메트릭을 계산하지 않고 일괄 실행을 실행할 수 있습니다. 나중에 평가 라운드를 실행할 수도 있습니다.

  1. 평가 여부에 관계없이 일괄 처리를 시작하려면 프롬프트 흐름 페이지의 맨 위에서 평가를 선택합니다.

    일괄 처리 실행이 강조 표시된 웹 분류의 스크린샷

  2. Batch 실행 및 평가 마법사의 기본 설정 페이지에서 원하는 경우 실행 표시 이름을 사용자 지정하고 필요에 따라 실행 설명태그제공합니다. 다음을 선택합니다.

    실행 이름과 설명을 입력하는 일괄 처리 실행 설정의 스크린샷

  3. Batch 실행 설정 페이지에서 사용할 데이터 세트를 선택하고 입력 매핑을 구성합니다.

    프롬프트 흐름은 흐름 입력을 데이터 세트의 특정 데이터 열에 매핑하도록 지원합니다. 를 사용하여 ${data.<column>}특정 입력에 데이터 세트 열을 할당할 수 있습니다. 입력에 상수 값을 할당하려면 해당 값을 직접 입력할 수 있습니다.

    테스트 데이터 세트를 선택하는 일괄 처리 실행 설정의 스크린샷

  4. 이 시점에서 검토 + 제출을 선택하여 평가 단계를 건너뛰고 평가 방법을 사용하지 않고 일괄 처리를 실행할 수 있습니다. 그런 다음 일괄 처리 실행은 데이터 세트의 각 항목에 대한 개별 출력을 생성합니다. 출력을 수동으로 확인하거나 추가 분석을 위해 내보낼 수 있습니다.

    그렇지 않은 경우 평가 메서드를 사용하여 이 실행의 성능에 대한 유효성을 검사하려면 다음을 선택합니다. 완료된 일괄 처리 실행에 새 평가 라운드를 추가할 수도 있습니다.

  5. 평가 선택 페이지에서 실행할 하나 이상의 사용자 지정 또는 기본 제공 평가를 선택합니다. 세부 정보 보기 단추를 선택하여 계산 방법에 대한 자세한 정보(예: 생성하는 메트릭 및 필요한 연결 및 입력)를 확인할 수 있습니다.

    기본 제공 평가 메서드를 선택할 수 있는 평가 설정 스크린샷.

  6. 다음으로, 평가 구성 화면에서 평가 에 필요한 입력의 원본을 지정합니다. 예를 들어 기본 진리 열은 데이터 세트에서 나올 수 있습니다. 기본적으로 평가는 전체 일괄 처리 실행과 동일한 데이터 세트를 사용합니다. 그러나 해당 레이블 또는 대상 접지 진리 값이 다른 데이터 세트에 있는 경우 해당 레이블을 사용할 수 있습니다.

    참고 항목

    평가 방법에 데이터 세트의 데이터가 필요하지 않은 경우 데이터 세트 선택은 평가 결과에 영향을 주지 않는 선택적 구성입니다. 입력 매핑 섹션에서 데이터 세트를 선택하거나 데이터 세트 열을 참조할 필요가 없습니다.

  7. 평가 입력 매핑 섹션에서 평가에 필요한 입력의 원본을 나타냅니다.

    • 데이터가 테스트 데이터 세트의 데이터인 경우 원본을 .로 ${data.[ColumnName]}설정합니다.
    • 데이터가 실행 출력에서 온 경우 원본을 .로 ${run.outputs.[OutputName]}설정합니다.

    평가 입력 매핑 스크린샷.

  8. 일부 평가 방법에는 GPT-4 또는 GPT-3과 같은 LLM(큰 언어 모델)이 필요하거나 자격 증명 또는 키를 사용하기 위해 다른 연결이 필요합니다. 이러한 메서드의 경우 평가 흐름을 사용할 수 있도록 이 화면 아래쪽의 연결 섹션에 연결 데이터를 입력해야 합니다. 자세한 내용은 연결 설정을 참조하세요.

    평가 방법에 대한 연결을 구성할 수 있는 연결 스크린샷.

  9. 검토 + 제출을 선택하여 설정을 검토한 다음 제출을 선택하여 평가와 함께 일괄 처리를 시작합니다.

참고 항목

  • 일부 평가 프로세스는 많은 토큰을 사용하므로 =16k 토큰을 지원할 >수 있는 모델을 사용하는 것이 좋습니다.
  • Batch 실행의 최대 지속 시간은 10시간입니다. 일괄 처리 실행이 이 제한을 초과하면 종료되고 실패한 것으로 표시됩니다. LLM 용량을 모니터링하여 제한을 방지합니다. 필요한 경우 데이터 크기를 줄이는 것이 좋습니다. 여전히 문제가 있는 경우 피드백 양식 또는 지원 요청을 제출합니다.

평가 결과 및 메트릭 보기

제출된 일괄 처리 실행 목록은 Azure Machine Learning 스튜디오 프롬프트 흐름 페이지의 실행 탭에서 찾을 수 있습니다.

  1. 일괄 처리 실행의 결과를 확인하려면 실행을 선택한 다음 출력 시각화를 선택합니다.

    일괄 처리 실행을 찾을 수 있는 프롬프트 흐름 실행 목록 페이지의 스크린샷

    출력 시각화 화면에서 실행 및 메트릭 섹션에는 일괄 처리 실행 및 평가 실행에 대한 전체 결과가 표시됩니다. 출력 섹션에는 줄 ID, 실행, 상태시스템 메트릭도 포함된 결과 테이블의 실행 입력이 한 줄씩 표시됩니다.

    일괄 처리 실행 출력을 확인하는 출력 탭의 일괄 처리 실행 결과 페이지 스크린샷.

  2. 실행 및 메트릭 섹션의 평가 실행 옆에 있는 보기 아이콘을 사용하도록 설정하면 출력 테이블에는 각 줄의 평가 점수 또는 등급도 표시됩니다.

    평가 출력을 추가하기 위한 일괄 처리 실행 출력의 스크린샷.

  3. 출력 테이블의 각 줄 옆에 있는 세부 정보 보기 아이콘을 선택하여 해당 테스트 사례에 대한 추적 보기 및 세부 정보를 관찰하고 디버그합니다. 추적 보기에는 토큰 수 및 해당 사례의 기간같은 정보가 표시됩니다. 모든 단계를 확장하고 선택하여 해당 단계에 대한 개요입력을 확인합니다.

    확장된 단계 및 세부 정보가 있는 추적 보기의 스크린샷

테스트한 프롬프트 흐름에서 평가 실행 결과를 볼 수도 있습니다. 일괄 처리 실행 보기에서 일괄 처리 실행 보기를 선택하여 흐름에 대한 일괄 처리 실행 목록을 확인하거나 최신 일괄 실행 출력 보기를 선택하여 최신 실행에 대한 출력을 확인합니다.

대량 실행 보기 단추가 선택된 웹 분류 스크린샷.

일괄 처리 실행 목록에서 일괄 처리 실행 이름을 선택하여 해당 실행에 대한 흐름 페이지를 엽니다.

평가 실행의 흐름 페이지에서 출력 보기 또는 세부 정보를 선택하여 흐름에 대한 세부 정보를 확인합니다. 흐름을 복제 하여 새 흐름을 만들거나 온라인 엔드포인트로 배포 할 수도 있습니다.

기록을 보여주는 일괄 처리 실행의 스크린샷

세부 정보 화면에서 다음을 수행합니다 .

  • 개요 탭에는 실행 속성, 입력 데이터 세트, 출력 데이터 세트, 태그 및 설명을 포함하여 실행에 대한 포괄적인 정보가 표시됩니다.

  • 출력 탭에는 페이지 맨 위에 있는 결과 요약과 일괄 처리 실행 결과 테이블이 표시됩니다. 관련 결과 추가 옆에 있는 평가 실행을 선택하면 테이블에 평가 실행 결과도 표시됩니다.

    평가 흐름 세부 정보 화면의 출력 탭 스크린샷

  • 로그 탭에는 실행 로그가 표시되며 실행 오류의 자세한 디버깅에 유용할 수 있습니다. 로그 파일을 다운로드할 수 있습니다.

  • 메트릭 탭은 실행에 대한 메트릭에 대한 링크를 제공합니다.

  • 추적 탭에는 각 테스트 사례에 대한 토큰및 기간같은 자세한 정보가 표시됩니다. 모든 단계를 확장하고 선택하여 해당 단계에 대한 개요입력을 확인합니다.

  • 스냅샷 탭에는 실행의 파일과 코드가 표시됩니다. flow.dag.yaml 흐름 정의를 보고 파일을 다운로드할 수 있습니다.

    일괄 처리 실행 스냅샷의 스크린샷.

동일한 실행에 대한 새 평가 라운드 시작

새 평가 라운드를 실행하여 흐름을 다시 실행하지 않고 완료된 일괄 실행에 대한 메트릭을 계산할 수 있습니다. 이 프로세스는 흐름을 다시 실행하기 위한 비용을 절감하고 다음 시나리오에서 유용합니다.

  • 일괄 처리를 제출할 때 평가 방법을 선택하지 않았고 이제 실행 성능을 평가하려고 합니다.
  • 평가 방법을 사용하여 특정 메트릭을 계산했고 이제 다른 메트릭을 계산하려고 했습니다.
  • 이전 평가 실행은 실패했지만 일괄 처리 실행이 성공적으로 출력을 생성했으며 평가를 다시 시도하려고 합니다.

다른 평가 라운드를 시작하려면 일괄 처리 실행 흐름 페이지의 맨 위에서 평가를 선택합니다. 새 평가 마법사가 평가 선택 화면으로 열립니다. 설치를 완료하고 새 평가 실행을 제출합니다.

프롬프트 흐름 실행 목록에 새 실행이 나타나고 목록에서 둘 이상의 행을 선택한 다음 출력 시각화를 선택하여 출력 과 메트릭을 비교할 수 있습니다.

평가 실행 기록 및 메트릭 비교

성능을 향상시키기 위해 흐름을 수정하는 경우 여러 일괄 처리 실행을 제출하여 다른 흐름 버전의 성능을 비교할 수 있습니다. 다른 평가 방법으로 계산된 메트릭을 비교하여 흐름에 더 적합한 메서드를 확인할 수도 있습니다.

흐름 일괄 처리 실행 기록을 확인하려면 흐름 페이지의 맨 위에서 일괄 처리 실행 보기를 선택합니다. 각 실행을 선택하여 세부 정보를 확인할 수 있습니다. 여러 실행을 선택하고 출력 시각화를 선택하여 메트릭과 해당 실행의 출력을 비교할 수도 있습니다.

여러 일괄 처리 실행의 메트릭을 비교하는 스크린샷

기본 제공 평가 메트릭 이해

Azure Machine Learning 프롬프트 흐름은 흐름 출력의 성능을 측정하는 데 도움이 되는 몇 가지 기본 제공 평가 방법을 제공합니다. 각 평가 방법은 서로 다른 메트릭을 계산합니다. 다음 표에서는 사용 가능한 기본 제공 평가 방법을 설명합니다.

평가 방법 메트릭 설명 연결이 필요합니까? 필수 입력 점수 매기기 값
분류 정확도 평가 정확도 출력과 지상 진리를 비교하여 분류 시스템의 성능을 측정합니다. 아니요 예측, 참조 자료 범위 [0, 1]
QnA 접지 평가 접지 모델의 예측 답변이 입력 원본에 얼마나 근거가 있는지 측정합니다. LLM 응답이 정확하더라도 원본에 대해 확인할 수 없는 경우 해당 응답은 비그라운드됩니다. 질문, 답변, 컨텍스트(참조 자료 없음) 1에서 5까지, 1 = 최악, 5 = 최고
QnA GPT 유사성 평가 GPT 유사성 GPT 모델을 사용하여 사용자가 제공한 기본 진리 답변과 모델 예측 답변 간의 유사성을 측정합니다. 질문, 답변, 참조 자료(컨텍스트가 필요하지 않음) 1에서 5까지, 1 = 최악, 5 = 최고
QnA 관련성 평가 정확도 모델의 예측 답변이 질문과 얼마나 관련이 있는지 측정합니다. 질문, 답변, 컨텍스트(참조 자료 없음) 1에서 5까지, 1 = 최악, 5 = 최고
QnA 일관성 평가 일관성 모델의 예측 답변에 있는 모든 문장의 품질과 문장이 자연스럽게 결합되는 방식을 측정합니다. 질문, 답변(참조 자료 또는 컨텍스트 없음) 1에서 5까지, 1 = 최악, 5 = 최고
QnA 유창성 평가 유창성 모델 예측 답변의 문법 및 언어적 정확성을 측정합니다. 질문, 답변(참조 자료 또는 컨텍스트 없음) 1에서 5까지, 1 = 최악, 5 = 최고
QnA F1 점수 평가 F1 점수 모델 예측과 지상 진리 간의 공유 단어 수 비율을 측정합니다. 아니요 질문, 답변, 참조 자료(컨텍스트가 필요하지 않음) 범위 [0, 1]
QnA Ada 유사성 평가 Ada 유사성 Ada embeddings API를 사용하여 접지 진리와 예측 모두에 대해 문장(문서) 수준 포함을 계산한 다음, 둘 사이의 코사인 유사성(하나의 부동 소수점 숫자)을 계산합니다. 질문, 답변, 참조 자료(컨텍스트가 필요하지 않음) 범위 [0, 1]

흐름 성능 향상

실행이 실패하면 출력 및 로그 데이터를 확인하고 흐름 오류를 디버그합니다. 흐름을 수정하거나 성능을 향상시키려면 흐름 프롬프트, 시스템 메시지, 흐름 매개 변수 또는 흐름 논리를 수정해 보세요.

신속한 엔지니어링

프롬프트 생성이 어려울 수 있습니다. 프롬프트 생성 개념에 대해 알아보려면 프롬프트 개요를 참조 하세요. 목표를 달성하는 데 도움이 되는 프롬프트를 생성하는 방법을 알아보려면 프롬프트 엔지니어링 기술을 참조 하세요.

시스템 메시지

메타프롬프트 또는 시스템 프롬프트라고도 하는 시스템 메시지를 사용하여 AI 시스템의 동작을 안내하고 시스템 성능을 향상시킬 수 있습니다. 시스템 메시지를 사용하여 흐름 성능을 개선하는 방법을 알아보려면 시스템 메시지 단계별 작성을 참조 하세요.

골든 데이터 세트

LLM을 사용하는 부조종사 만들기에는 일반적으로 원본 데이터 세트를 사용하여 실제로 모델을 접지하는 작업이 포함됩니다. 골든 데이터 세트LLM이 고객 쿼리에 가장 정확하고 유용한 응답을 제공하는 데 도움이 됩니다.

골든 데이터 세트는 부조종사가 사용하는 LLM에 대한 품질 보증 도구 역할을 하는 현실적인 고객 질문과 전문적으로 작성된 답변의 모음입니다. 골든 데이터 세트는 LLM을 학습하거나 LLM 프롬프트에 컨텍스트를 삽입하는 데 사용되지 않고 LLM이 생성하는 답변의 품질을 평가하는 데 사용됩니다.

시나리오에 부조종사도 포함되거나 사용자 고유의 부조종사로 빌드하는 경우 자세한 지침 및 모범 사례는 Golden Datasets 생성을 참조하세요.