사용자 지정 질문 답변에서 프로젝트 관리

Microsoft Foundry를 사용하여 프로젝트 설정, 원본 및 프로젝트 수명 주기 작업을 비롯한 CQA(사용자 지정 질문 답변) 프로젝트를 관리합니다.

CQA 프로젝트를 아직 만들지 않은 경우 CQA 기술 자료 만들기, 테스트 및 배포로 시작합니다.

필수 조건

프로젝트 만들기

Foundry에서 프로젝트를 만들려면 CQA 기술 자료 만들기, 테스트 및 배포를 따릅니다.

프로젝트 관리

Foundry에서 다음을 수행할 수 있습니다.

  • 프로젝트를 만듭니다.
  • 프로젝트를 삭제합니다.
  • 프로젝트를 배포하거나 다시 배포합니다.
  • 원본 관리 및 테스트를 위한 프로젝트를 엽니다.

백업 및 복원 작업은 프로젝트 내보내기, 가져오기 및 새로 고침을 참조하세요.

원본 관리

  1. Foundry에서 CQA 파인튜닝 작업을 여세요.

  2. 시작에서 원본 관리를 선택합니다.

  3. 원본 추가 및 유지 관리:

    목표 작업
    원본 추가 원본 추가를 선택하고 URL, 파일 또는 잡담을 선택합니다.
    원본 삭제 하나 이상의 원본을 선택한 다음 삭제합니다.
    파일 구조 분류 업로드된 파일의 경우 원본 형식에 따라 자동 검색 또는 구조화되지 않은 콘텐츠를 선택합니다.

URL 관련 업데이트는 프로젝트에 스마트 URL 새로 고침 사용을 참조하세요.

대규모 프로젝트 관리

CQA 작성 환경에서 다음을 수행할 수 있습니다.

  • 질문, 답변 및 메타데이터로 검색합니다.
  • 큰 데이터 세트를 증분 방식으로 검토합니다.
  • 배포 전에 테스트 기술 자료를 사용하여 동작의 유효성을 검사합니다.

프로젝트 삭제

프로젝트 삭제는 영구적이며 실행 취소할 수 없습니다.

프로젝트를 삭제하기 전에 프로젝트 내보내기, 가져오기 및 새로 고침을 사용하여 백업용으로 내보냅니다.

공동 작업자와 프로젝트를 공유한 다음 삭제하면 즉시 액세스 권한이 손실됩니다.

프로젝트 내보내기, 가져오기 및 새로 고침

다음과 같은 몇 가지 이유로 사용자 지정 질문 답변 프로젝트 또는 관련 질문 및 답변 쌍의 복사본을 만들 수 있습니다.

  • 백업 및 복원 프로세스를 구현하려면
  • CI/CD 파이프라인과 통합하려면 다음을 수행합니다.
  • 데이터를 다른 지역으로 이동하려면 다음을 수행합니다.

프로그래밍 방식으로 프로젝트 내보내기

내보내기 프로세스를 자동화하려면 제작 API의 내보내기 기능을 사용합니다.

프로그래밍 방식으로 프로젝트 가져오기

가져오기 프로세스를 자동화하려면 제작 API의 가져오기 기능을 사용합니다.

프로그래밍 방식으로 URL 새로 고침

URL 새로 고침 프로세스를 자동화하려면 작성 API의 업데이트 원본 기능을 사용합니다.

제작 API 문서의 업데이트 원본 예제는 새 URL 기반 원본을 추가하는 구문을 보여 줍니다. 업데이트에 대한 예제 쿼리는 다음과 같습니다.

변수 이름 Value
ENDPOINT Azure 포털에서 리소스를 확인할 때 Keys & Endpoint 섹션에서 이 값을 찾을 수 있습니다. 엔드포인트의 예는 다음과 https://southcentralus.cognitiveservices.azure.com/ 같습니다. 그리고 지역별 부분 southcentral만 추가하면 됩니다. 엔드포인트 경로가 이미 있습니다.
API-KEY Azure 포털에서 리소스를 확인할 때 키 및 엔드포인트 섹션에서 이 값을 찾으세요. Key1 또는 Key2를 사용할 수 있습니다. 항상 두 개의 유효한 키를 사용하면 가동 중지 시간이 0인 보안 키 회전을 허용합니다. 키 값은 샘플 요청의 일부입니다.
PROJECT-NAME 원본을 업데이트하려는 프로젝트의 이름입니다.
curl -X PATCH -H "Ocp-Apim-Subscription-Key: {API-KEY}" -H "Content-Type: application/json" -d '[
  {
    "op": "replace",
    "value": {
      "displayName": "source5",
      "sourceKind": "url",
      "sourceUri": "https://support.microsoft.com/en-US/surface/models/surface-book-3-specs-and-features",
      "refresh": "true"
    }
  }
]'  -i 'https://{ENDPOINT}.cognitiveservices.azure.com/language/query-knowledgebases/projects/{PROJECT-NAME}/sources?api-version=2021-10-01'

프로젝트에서 스마트 URL 새로 고침 사용

사용자 지정 질문 답변은 원본 URL에서 최신 정보를 검색하여 원본 콘텐츠를 최신 상태로 유지하는 데 도움이 됩니다. 선택 항목이 하나만 있으면 해당 프로젝트를 업데이트하여 이러한 변경 내용을 반영할 수 있습니다. 서비스는 URL에서 콘텐츠를 수집하고 프로젝트에서 질문 및 답변 쌍을 만들거나 병합하거나 삭제합니다.

이 기능은 제품 FAQ 페이지 업데이트와 같이 원본 URL의 콘텐츠가 자주 변경되는 시나리오를 지원합니다. 서비스는 원본을 새로 고치고 이전에 만든 수동 편집 내용을 유지하면서 프로젝트를 최신 콘텐츠로 업데이트합니다.

메모

이 기능은 URL 원본에만 적용됩니다. 일괄적으로가 아니라 각각 새로고침해야 합니다.

Important

이 기능은 Azure Language API 버전에서 2021-10-01 만 사용할 수 있습니다.

작동 방식

URL 원본이 변경된 프로젝트가 있는 경우 스마트 URL 새로 고침을 트리거하여 프로젝트를 최신 상태로 유지할 수 있습니다. 서비스는 URL에서 업데이트된 콘텐츠를 검색하고 QnA 쌍을 생성합니다. 프로젝트에 새 QnA 쌍을 추가하고 원본에서 사라진 모든 쌍도 삭제합니다(예외 제외). 또한 일부 상황에서는 이전 및 새 QnA 쌍을 병합합니다.

Important

스마트 URL 새로 고침은 프로젝트에서 이전 콘텐츠를 삭제할 수 있으므로 새로 고침 작업을 수행하기 전에 프로젝트의 백업을 만듭니 다.

REST API를 사용하여 프로그래밍 방식으로 새로 고침을 트리거할 수 있습니다. 매개 변수 및 샘플 요청은 업데이트 원본 참조 설명서를 참조하세요.

스마트 새로 고침 동작

이 기능을 사용하여 콘텐츠를 새로 고치면 QnA 쌍 프로젝트가 다음과 같은 방법으로 업데이트될 수 있습니다.

이전 쌍 삭제

원본 URL의 콘텐츠가 변경되고 이전 버전의 기존 QnA 쌍이 더 이상 없는 경우 프로세스는 업데이트된 프로젝트에서 해당 쌍을 제거합니다. 이 프로세스를 통해 새로 고친 프로젝트에 현재 원본 콘텐츠와 일치하는 QnA 쌍만 포함됩니다. 예를 들어 Q1A1과 같은 QnA 쌍이 프로젝트의 이전 버전에 있었지만 새로 고침 후 업데이트된 원본이 더 이상 A1 답변을 생성하지 않는 경우 해당 쌍은 오래된 것으로 간주됩니다. 결과적으로 Q1A1은 프로젝트에서 완전히 제거됩니다.

그러나 작성 포털에서 이전 QnA 쌍을 수동으로 편집하는 경우 프로세스는 이를 삭제하지 않습니다.

새 쌍 추가

URL에 새 콘텐츠가 있고 이전 기술 자료에 새 QnA 쌍이 나타나면 프로세스에서 새 쌍을 추가합니다. 이렇게 추가하면 기술 자료에 항상 원본의 최신 정보가 포함됩니다. 예를 들어 서비스에서 새 대답 A2를 생성할 수 있음을 발견하면 QnA 쌍 Q2A2를 기술 자료에 삽입합니다.

쌍을 병합

새 QnA 쌍의 답변이 이전 QnA 쌍의 답변과 일치하는 경우 프로세스는 두 쌍을 병합합니다. 새 쌍의 질문은 이전 QnA 쌍에 대한 대체 질문으로 추가됩니다. 예를 들어 Q3A3이 이전 원본에 있다고 가정합니다. 원본을 새로 고치면 새 QnA 쌍 Q3'A3가 도입됩니다. 이 경우 두 개의 QnA 쌍이 병합됩니다. Q3'은 대체 질문으로 Q3에 추가됩니다.

이전 QnA 쌍에 메타데이터 값이 있는 경우 프로세스는 새로 병합된 쌍에서 해당 데이터를 유지하고 유지합니다.

이전 QnA 쌍에 연결된 후속 프롬프트가 있는 경우 다음 시나리오가 발생할 수 있습니다.

  • 이전 쌍에 연결된 프롬프트가 새로 고쳐지는 원본에서 가져온 경우 프로세스는 해당 프롬프트를 삭제하고 새로 병합된 QnA 쌍에 새 쌍(있는 경우)의 프롬프트를 추가합니다.
  • 이전 쌍에 연결된 프롬프트가 다른 원본에서 온 경우 프로세스는 해당 프롬프트를 as-is유지합니다. 새 질문의 프롬프트(있는 경우)가 새로 병합된 QnA 쌍에 추가됩니다.

병합 예제

질문과 프롬프트가 다른 병합 작업에 대한 다음 예제를 참조하세요.

소스 반복 Question Answer 프롬프트
오래된 "새로운 HR 정책은 무엇인가요?" "다음 옵션 중에서 선택해야 할 수도 있습니다." P1, P2
새로운 "새로운 급여 정책은 무엇인가요?" "다음 옵션 중에서 선택해야 할 수도 있습니다." P3, P4

프롬프트 P1 및 P2는 원래 원본에서 제공되며 새 QnA 쌍의 프롬프트 P3 및 P4와 다릅니다. 둘 다 대답(You might have to choose among the following options:)은 같지만, 서로 다른 프롬프트로 이어집니다. 이 경우 결과 QnA 쌍은 다음과 같습니다.

Question Answer 프롬프트
"새로운 HR 정책이란?"
(대체 질문: "새로운 급여 정책은 무엇입니까?")
"다음 옵션 중에서 선택해야 할 수도 있습니다." P3, P4

중복 답변 시나리오

원래 원본에 대답이 동일한 두 개 이상의 QnA 쌍이 있는 경우(Q1A1 및 Q2A1과 같이) 병합 동작이 더 복잡할 수 있습니다.

각 QnA 쌍에 고유한 프롬프트(예: P1이 있는 Q1A1 및 P2가 있는 Q2A1)가 있는 경우 업데이트된 원본은 동일한 답변이 있는 새 QnA 쌍을 만들 수 있지만 P3이 있는 Q1'A1과 같은 새 프롬프트를 만들 수 있습니다. 이 경우 새 질문이 원본의 대체 항목으로 추가됩니다. 이 프로세스를 통해 QnA 쌍을 최신 원본 콘텐츠로 최신 상태로 유지할 수 있습니다. 그러나 새로 고친 콘텐츠의 새 프롬프트는 원래 프롬프트를 모두 대체합니다. 따라서 최종 쌍 집합은 다음과 같습니다.

Question Answer 프롬프트
Q1
(대체 질문: Q1')
A1 P3
Q2
(대체 질문: Q1')
A1 P3

다음 단계