Agent 클래스: CodeAgent · ToolCallingAgent
Agent 클래스: CodeAgent · ToolCallingAgent
[!WARNING] smolagents는 실험적인 API라 언제든 바뀔 수 있어요. 에이전트가 반환하는 결과는 API나 밑단 모델이 바뀌면서 달라질 수 있으니 유의하세요.
에이전트와 도구에 대해 더 배우려면 소개 문서를 읽어보는 걸 추천해요. 이 페이지는 밑단 클래스들의 API 문서를 담고 있어요.
에이전트 클래스
우리 에이전트는 MultiStepAgent를 상속해요. 덕분에 여러 스텝으로 작동할 수 있는데, 각 스텝은 하나의 생각(thought) 후에 하나의 툴 콜과 실행으로 이뤄져요. 자세한 내용은 이 개념 가이드를 읽어보세요.
메인 Agent 클래스를 기반으로 두 가지 에이전트 유형을 제공해요.
CodeAgent— 툴 콜을 파이썬 코드로 작성해요(기본값).ToolCallingAgent— 툴 콜을 JSON으로 작성해요.
둘 다 초기화 시 model과 도구 목록 tools 인자가 필요해요.
에이전트 클래스 일람
API 문서에서 다루는 주요 클래스는 다음과 같아요.
MultiStepAgent— 모든 에이전트의 기반이 되는 멀티스텝 에이전트.CodeAgent— 툴 콜을 파이썬 코드로 생성하는 에이전트.ToolCallingAgent— 툴 콜을 JSON으로 생성하는 에이전트.
stream_to_gradio
stream_to_gradio 함수는 에이전트의 실행 과정을 Gradio 인터페이스로 스트리밍할 수 있게 해줘요.
GradioUI
GradioUI는 에이전트와 대화형으로 상호작용할 수 있는 Gradio 기반 UI 컴포넌트예요. 에이전트의 사고 과정과 실행 과정을 관찰 가능하게 해주죠.
[!TIP] UI를 쓰려면
gradio가 설치되어 있어야 해요.pip install 'smolagents[gradio]'를 실행해 주세요.
프롬프트(Prompts)
에이전트가 쓰는 프롬프트 템플릿들도 API로 제공돼요.
smolagents.agents.PromptTemplatessmolagents.agents.PlanningPromptTemplatesmolagents.agents.ManagedAgentPromptTemplatesmolagents.agents.FinalAnswerPromptTemplate
메모리(Memory)
smolagents는 여러 스텝에 걸친 정보를 저장하기 위해 메모리를 사용해요.
smolagents.memory.AgentMemory— 에이전트의 메모리 저장·관리를 담당하는 객체.
출처 인용
- 원문: smolagents - Agents (reference, Hugging Face Docs)
- 원본 파일: huggingface/smolagents - docs/source/en/reference/agents.md