분류 체계의 구성 방법 InstructLab

분류법은 모델에 공급하는 데이터로 구성된 파일 디렉터리입니다. 분류 체계 '트리'의 각 하위 디렉터리 또는 '가지'는 관련 데이터를 포함하는 파일 집합인 '리프 노드'로 끝나는 계단식 구조로 구성되어 있습니다. 완전히 새로운 '브랜치'를 추가하거나 기존 qna.yaml 파일에 새 데이터를 추가하여 분류 체계에 기여할 수 있습니다. 분류 체계에 대한 자세한 내용은 InstructLab 문서에서 InstructLab 분류 체계 소개를 참조하세요. GitHub 에서 InstructLab 분류법을 확인할 수도 있습니다.

분류법을 만들거나 추가하는 단계는 분류법 준비하기를 참조하세요.

분류 데이터

분류 체계에는 세 가지 범주의 데이터가 있습니다.

Knowledge
교과서나 백과사전과 같은 출처에서 뒷받침하는 데이터 및 사실입니다. 분류 체계에 지식을 추가할 때는 분류 체계 디렉터리 외부에 존재하며 진실의 출처 역할을 하는 별도의 지식 문서를 참조해야 합니다.
기초 기술
수학, 언어, 프로그래밍 등 더 많은 지식을 습득하는 데 사용할 수 있는 기본 기술입니다. 이러한 기술은 일반적으로 공개 데이터를 사용하여 개발됩니다.
작곡 기술
주식 시장 분석과 같은 보다 복잡한 작업을 완료하기 위해 지식과 기초 기술을 결합하는 기술입니다.

카테고리에 대한 자세한 내용은 InstructLab 문서에서 '스킬'이란 무엇인가요? 및 '지식'이란 무엇인가요? 를 참조하세요.

분류 파일

각 '리프 노드'에 필요한 데이터 파일에는 두 가지 유형이 있습니다.

qna.yaml
지식창고에 있는 정보와 관련된 질문과 답변이 포함되어 있습니다. 질문과 답변은 키/값 쌍으로 구성됩니다.
attribution.txt
qna.yaml 파일에 추가된 정보에 대한 소스를 포함합니다. 이는 선택 사항이지만 오픈 소스 InstructLab 분류 저장소에 기여하려면 필수입니다.

지식 문서

분류 체계에 추가된 모든 지식은 지식 문서에 의해 뒷받침되어야 하며, 이는 모델에 공급되는 정보에 대한 진실의 출처 역할을 합니다. 문서는 분류 체계와 별도의 디렉터리에 존재하는 Markdown 파일이어야 합니다. qna.yaml 파일의 document_outline 섹션에서 지식창고 문서와 해당 문서가 저장된 디렉터리를 참조합니다. 지식 문서에 대한 자세한 내용과 샘플은 지식 문서 준비하기 및 지식 문서 파일 참조 예시를 참조 하세요.

지식 qna.yaml 파일

지식 qna.yaml 파일에는 관련 지식 문서에 있는 정보를 바탕으로 한 질문과 답변이 포함되어 있습니다. 질문과 답변은 키/값 쌍으로 저장되며, 각 qna.yaml 파일에는 최소 5개의 쌍이 필요합니다. document_outline 섹션의 qna.yaml 파일 끝에 지식창고 문서와 해당 문서가 저장된 디렉터리를 참조해야 합니다. 전체 qna.yaml 파일 요구 사항 및 지식 기여의 예는 qna.yaml 파일 템플릿 및 지식 제출의 예를 참조하세요.

기술 qna.yaml 파일

기술 qna.yaml 에는 간단한 작업을 가르치는 질문과 답변이 포함되어 있습니다. 예를 들어 모델에게 운율을 가르치려면 What are 5 words that rhyme with skill? 와 같은 질문에 spill, mill, drill, fill, chill 이라는 답을 포함시킬 수 있습니다. 질문과 답변은 키/값 쌍으로 저장되며, 각 qna.yaml 파일에는 최소 5개의 쌍이 필요합니다.

추가하는 스킬은 접지형(컨텍스트를 추가하기 위해 추가 입력이 필요함)이거나 비접지형(추가 컨텍스트가 필요하지 않음을 의미)일 수 있습니다. 근거가 있는 스킬의 경우 qna.yaml 파일에 context 필드를 사용하여 컨텍스트를 추가합니다. 분류체계에 근거 기술을 추가할 때는 grounded/games/sudoku 과 같이 grounded 이라는 단어로 시작하는 브랜치에 추가해야 합니다.

전체 qna.yaml 요구 사항 및 기술 기여의 예는 InstructLab 문서에서 기술 파일을 참조하세요. 스킬을 추가할 때 별도의 문서를 추가할 필요는 없습니다.