기술 조사는 coco-research가, 복습 퀴즈는 coco-askme가 맡고 있었습니다. 예를 들어 방금 바꾼 재시도 코드의 이유를 묻고 퀴즈로 이해를 확인하려면, 같은 맥락을 두 스킬에서 이어가야 했습니다. 1.4.0에서는 한 질문에서 답변·추가 조사·퀴즈로 이어지도록 진입점을 모았습니다. 요약으로 대화를 이어받을 때는 확인할 수 있는 근거의 범위도 밝히게 했습니다.
질문에 맞춰 시작하기
질문을 적어 호출하면 관련 근거로 바로 답합니다. 예를 들어 “재시도 횟수를 다 썼을 때 원래 오류는 어디로 전달돼?”라고 물으면 코드 흐름을 따라 답할 수 있습니다. 인자 없이 부르면 현재 대화에서 더 알아볼 만한 주제를 최대 세 개 제시하고, 목록에 없는 질문도 받을 수 있습니다. 퀴즈를 요청하면 근거가 있는 문제를 하나만 내고 답을 기다립니다. 같은 코드가 출발점이어도 질문, 주제 탐색, 복습은 서로 다른 시작을 갖습니다. COCO 1.4.0 릴리스 노트
질문에서 복습까지 이어지는 예
아래는 흐름을 보여 주려고 만든 재시도 코드입니다.
def load(read):
for attempt in range(3):
try:
return read()
except TimeoutError:
if attempt == 2:
raise
| 단계 | 입력과 확인할 근거 |
|---|---|
| 질문 | “세 번 다 실패하면 어느 오류가 전달돼?”라고 묻습니다. 세 번째 호출에서만 raise에 도달하므로 그 호출의 TimeoutError가 전달됩니다. |
| 추가 조사 | “실제 호출자는 이 오류를 어떻게 처리해?”라고 물으면 이 함수만으로는 답을 정할 수 없습니다. 함수를 부르는 위치와 그곳의 오류 처리 코드를 확인합니다. |
| 복습 | “앞의 두 번이 실패하고 세 번째가 성공하면 함수는 무엇을 반환할까?”처럼 같은 코드에서 답을 구할 수 있는 문제 하나를 내고, 사용자의 답을 기다립니다. |
로컬 Python 예제에서 서로 다른 예외를 차례로 던지게 해 세 번째 예외가 전달되는 것을 확인했습니다. 앞의 두 호출만 실패하게 한 경우에는 세 번째 호출의 반환값을 받았습니다. 이 예제의 검증 범위는 재시도 코드의 동작입니다. 스킬의 대화 흐름은 아래의 별도 세션 검증으로 확인했습니다.
요약에서 확인한 맥락 밝히기
긴 대화를 요약으로 이어받으면 앞서 확인한 사실과 빠진 맥락을 구분하기 어렵습니다. 1.4.0은 요약이나 인수인계에 기대고 있다는 점을 먼저 드러내도록 했습니다. 현재 정보만으로 답하기 어렵다면 대화에 연결된 자료 최대 두 개에서 발췌 120줄까지 한 차례 읽을 수 있습니다. 그래도 필요한 사실을 확인하지 못하면 대상이 무엇인지 묻습니다. 관련 맥락을 이미 알고 있거나 확인한 근거가 현재 질문의 범위와 일치하면 그 내용을 이어 씁니다.
별도 세션에서 합성 입력으로 세 경로를 확인했습니다. 출처가 없는 요약에서는 남아 있는 맥락을 밝히고 주제를 제시했습니다. 주어진 재시도 함수에 대한 퀴즈에서는 코드 근거가 있는 문제 하나를 내고 답을 보류했습니다. 정보가 부족한 요약과 인수인계 문서가 함께 주어졌을 때는 해당 문서만 읽어 주제 선택으로 돌아왔습니다. 이 검증은 세 입력에서 관찰한 대화 흐름을 보여 줍니다. 실제 사용에서의 토큰 비용과 지연은 측정하지 않았습니다. Askme 통합 검증 기록

댓글
댓글과 반응은 GitHub 계정으로 로그인해 남길 수 있어요.