익명 사용자
로그인하지 않음
토론
기여
계정 만들기
로그인
IT 위키
검색
도구 호출 (인공지능)
편집하기
IT 위키
이름공간
문서
토론
더 보기
더 보기
문서 행위
읽기
편집
원본 편집
역사
경고:
로그인하지 않았습니다. 편집을 하면 IP 주소가 공개되게 됩니다.
로그인
하거나
계정을 생성하면
편집자가 사용자 이름으로 기록되고, 다른 장점도 있습니다.
스팸 방지 검사입니다. 이것을 입력하지
마세요
!
도구 호출(tool calling 또는 function calling)이란 인공지능 에이전트가 외부 도구, API 또는 시스템을 사용해 능력을 확장하는 메커니즘이다. 미리 학습된 지식에만 의존하지 않고, 데이터베이스 조회, 실시간 정보 검색, 계산 수행, 애플리케이션 연동 등 복잡한 작업을 외부에 위임할 수 있다<ref>Tool calling refers to the ability of artificial intelligence (AI) models to interact with external tools, application programming interfaces (APIs) or systems to enhance their functions.</ref>. ==개요== 도구 호출은 LLM(대형 언어 모델)을 수동적 챗봇이 아닌 '''능동적 에이전트(agentic AI)'''로 변화시킨다. 모델은 주어진 입력에 대해 텍스트만 생성하는 대신, 외부 도구를 검색·선택·호출하고, 그 결과를 바탕으로 후속 추론을 수행할 수 있다<ref>Tool calling, sometimes referred to as function calling, is a key enabler of agentic AI… enabling multistep problem-solving, make real-time decisions and more.</ref>. ==작동 원리== ===1. 도구 정의=== 도구는 이름(name), 설명(description), 입력 인자(parameters)를 JSON 스키마 등으로 명세하여 모델에 제공된다<ref>Tool calling basics: Tool: An action… name, description, inputs.</ref>. ===2. 도구 결합(tool binding)=== 모델에 호출 가능한 도구 목록이 바인딩된다. 예를 들어 LangChain에서는 `model.bind_tools(...)` 식으로 연결된다<ref>LangChain: Tool binding, model_with_tools = model.bind_tools(tools_list).</ref>. ===3. 호출 판단(tool selection)=== 모델은 사용자의 요청이 도구 호출이 필요한지 판단하고, 관련 도구를 선택한다<ref>Tool calling involves… model recognizes when it lacks knowledge and selects appropriate tool.</ref>. ===4. 호출 실행(tool execution)=== 모델이 JSON 형태로 도구 이름과 인자값을 생성하면, 응용프로그램이 해당 도구 함수를 수행해 결과를 반환한다<ref>When appropriate, the model can decide to call a tool… result will have tool_calls attribute.</ref>. ===5. 후속 응답=== 도구 수행 결과를 바탕으로 모델이 최종 답변을 생성한다. ==장점 및 활용 예시== *'''실시간 정보 처리''': 날씨 조회, 주가 검색, 고객 문의 상태 확인 등 실시간 데이터 접근 가능<ref>Tools are mainly used for information retrieval… e.g., retrieve current weather.</ref> *'''작업 자동화''': CRM 기록 생성, 티켓 시스템 조회, 이메일 발송 등 반복 업무 자동화<ref>예: Zendesk API를 호출해 실시간 티켓 데이터 제공.</ref> *'''다단계 흐름 완성''': 조건 판단 – 도구 호출 – 결과 기반 후속 처리까지 통합된 워크플로우 구성 가능<ref>Multi-step problem-solving… tool calling is critical element of agentic systems.</ref> ==보안과 한계== *도구 접근은 응용 프로그램이 중계하고, 모델 자체는 API 키나 내부 데이터에 직접 접근하지 않도록 설계되어야 함<ref>Model request tool call… application executes and returns result; model never gets direct API access.</ref> *최소 권한 원칙 준수, 비밀 관리, 로깅, 토큰 갱신 등의 보안 대책 필요<ref>Auth0 사례: least privilege, audit logs, token rotation.</ref> *잘못된 도구 선택이나 입력값 오류(도구 환각, tool hallucination) 문제 존재하며, 연구 진행 중임<ref>Reducing Tool Hallucination via Reliability Alignment (arXiv).</ref> ==연구 및 발전 동향== *'''ToolGen''': 도구 호출 자체를 모델 생성 과정에 통합해 효율과 확장성을 향상하는 연구 제안<ref>ToolGen: represent each tool as a unique token… enhances performance.</ref> *'''Personalized Tool Invocation''': 사용자 선호나 프로필에 맞춰 도구 선택을 최적화하는 최신 연구 진행 중<ref>Advancing and Benchmarking Personalized Tool Invocation for LLMs (arXiv, May 7 2025).</ref> ==적용 사례== *LangChain, Vercel AI, Anthropic Claude, OpenAI Function Calling 등 다양한 플랫폼이 도구 호출 기능 제공<ref>LangChain, AI SDK Core, Writer AI Studio 문서 참조.</ref> *고객 지원, 가상 비서, 코드 생성, 문서 자동화 등 다양한 도메인에서 활용 중. ==같이 보기== *가상 비서 *에이전트 기반 AI *함수 호출(function calling) *LLM 보안 *Retrieval‑Augmented Generation ==참고 문헌== <references /> ==각주== [[분류:인공지능]]
요약:
IT 위키에서의 모든 기여는 크리에이티브 커먼즈 저작자표시-비영리-동일조건변경허락 라이선스로 배포된다는 점을 유의해 주세요(자세한 내용에 대해서는
IT 위키:저작권
문서를 읽어주세요). 만약 여기에 동의하지 않는다면 문서를 저장하지 말아 주세요.
또한, 직접 작성했거나 퍼블릭 도메인과 같은 자유 문서에서 가져왔다는 것을 보증해야 합니다.
저작권이 있는 내용을 허가 없이 저장하지 마세요!
취소
편집 도움말
(새 창에서 열림)
둘러보기
둘러보기
대문
최근 바뀜
광고
위키 도구
위키 도구
특수 문서 목록
문서 도구
문서 도구
사용자 문서 도구
더 보기
여기를 가리키는 문서
가리키는 글의 최근 바뀜
문서 정보
문서 기록