OpenAI 가 2023 년 중반에 tool calling 출시; Anthropic 이 몇 달 후 자기 버전; Google 이 곧 Gemini 에 function declaration 추가. 1 년 안에 — '모델이 prose 안에 JSON 적으려 하는 대신 구조화된 tool-call object 반환' 이라는 같은 idea 가 — 프로덕션 ready 한 구현 셋이 생겼어.
좋은 소식은 concept 이 셋 다 동일하다는 거. Tool 정의 → tool 함께 모델 호출 → tool-call object 받기 → 실행하고 결과 넣기. 한 provider 로 loop 짤 줄 알면 다른 둘은 envelope 변환 몇 시간이면 돼.
나쁜 소식은 envelope 에 있어. OpenAI 는 tools 에 type: "function" 과 parameters; Anthropic 은 tools 에 input_schema; Gemini 는 Tool 안의 FunctionDeclaration. Flow 같고, 이름 다름.
이 track 은 그 세 envelope 의 투어야. 목표는 암기 아니야 — 모든 SDK 에 docs 있고 너는 lookup 할 거니까 — 다른 옷 입은 같은 idea 와 port 못 하는 진짜 provider-specific feature 의 차이를 인식하는 거야. 그 차이를 알면 잘못된 abstraction 으로 copy-paste 안 하게 돼.