7장 · 다중 도구 라우팅왜 라우팅을 따져야 하는가 — 도구가 늘면 고르는 일이 생긴다모델은 도구를 어떻게 고르는가 — 이름과 설명이 전부다도구 선언의 비용 — 도구는 매 호출마다 실려 간다라우팅을 숫자로 확인하기 — 기대 도구를 먼저 적는다따라하기 — 도구 네 개와 라우팅 테스트정리와 체크리스트실습문제와 해답
7장. 다중 도구 라우팅
정리와 체크리스트
7장에서 배운 것
- 라우팅(routing) — 들어온 문의를 알맞은 도구로 보내는 일. 고르는 것은 모델입니다.
- 모델이 보는 것 — 도구의 이름, 설명(독스트링 전체), 인자의 이름과 타입. 함수 본문은 보지 못합니다.
- 설명에 적을 것 — 무엇을 하는가, 언제 쓰는가, 언제 쓰지 않는가. 인자에는 형식과 예시.
- 도구 선언의 비용 — 선언은 매 호출의 입력 토큰에 들어갑니다. 도구를 부르지 않아도 그렇습니다.
- 기대 도구 표 — 질문마다 불려야 할 도구를 먼저 적어 두고, 호출 이력과 맞춰 정확도를 셉니다.
- 파일 불러 쓰기 —
from lesson06_order_tools import …. 불려 오는 파일의 실행부는if __name__ == "__main__":아래에 둡니다.
한눈에 보는 핵심
test_set = [("에어프라이어 재고 있어요?", "search_products"), ...] # 사람이 정한 기대
for q, expected in test_set:
called = ask(q) # 모델이 고르고, 우리 코드가 실행한 도구들
ok = expected in called # 기대한 도구가 그 안에 있는가
| 라우팅 정확도가 알려 주는 것 | 알려 주지 않는 것 |
|---|---|
| 기대한 도구가 불렸는가 | 답의 내용이 사실인가 |
| 설명을 고친 뒤 무엇이 깨졌는가 | 시험하지 않은 질문에서도 되는가 |
| 측정 | 이번 장의 값 |
|---|---|
| "안녕하세요"의 입력 토큰, 도구 없음 | 2 |
| 같은 인사, 도구 4개 | 402 |
| 질문 네 개의 라우팅 정확도 | 4/4 |
체크리스트
- [ ] 라우팅이 무엇인지, 고르는 주체가 누구인지 말할 수 있다.
- [ ] 모델이 도구에 대해 볼 수 있는 것과 볼 수 없는 것을 구분할 수 있다.
- [ ] 도구 설명에 "~에는 사용하지 않는다"를 적는 이유를 설명할 수 있다.
- [ ] 인자 설명의 예시(
예: P008)가 하는 일 두 가지를 말할 수 있다. - [ ] 도구를 부르지 않는 호출에도 도구 선언의 토큰이 드는 이유를 설명할 수 있다.
- [ ] "에어프라이어 재고 있어요?"의 기대 도구가
search_products인 이유를 설명할 수 있다. - [ ] 라우팅 정확도와 답의 내용 검사가 서로 다른 검사임을 설명할 수 있다.
- [ ] 라우팅이 어긋났을 때 무엇부터 보는지 순서대로 말할 수 있다.
- [ ]
lesson07_multi_tools.py를 실행하려면 어떤 파일이 먼저 있어야 하는지 안다.
한 줄 핵심
도구를 고르는 것은 모델이지만, 고를 재료인 이름과 설명은 우리가 씁니다. 그리고 잘 골랐는지는 기대를 먼저 적어 두어야 셀 수 있습니다.