Agent를 위한 프롬프팅 기법
AI가 단순히 대답만 하는 것을 넘어, 스스로 계획을 세우고 도구를 사용하며 문제를 해결하는 ‘자율적인 에이전트(Agent)’로 작동하게 하려면 더 정교한 프롬프팅이 필요합니다.
4-1. Tool Use (Function Calling)를 위한 프롬프트
AI가 외부 도구(API)를 사용하여 실시간 정보를 가져오거나 특정 기능을 수행하도록 만드는 기술입니다.
- 사용 가능한 도구를 명확히 정의하세요
- AI에게 어떤 도구를 사용할 수 있는지 알려줘야 합니다. 함수(도구)의 이름, 필요한 인자(parameters), 그리고 각 인자와 함수가 어떤 역할을 하는지에 대한 설명을 명확하고 상세하게 제공해야 합니다.
- 언제, 어떻게 사용할지 예시를 제공하세요
- AI가 도구를 적절한 상황에 맞게 사용하도록 몇 가지 사용 예시(Few-shot)를 프롬프트에 포함하는 것이 효과적입니다.
- AI가 스스로 판단하도록 유도하세요
- 사용자의 질문에 답변하기 위해 도구가 필요한지, 필요하다면 어떤 도구를 어떤 인자와 함께 호출해야 하는지를 AI가 스스로 추론하도록 유도해야 합니다.
4-2. 고급 추론 및 행동 제어
- ReAct (Reason and Act) 패턴 활용
- CoT(생각의 사슬)가 추론 과정에 집중한다면, ReAct는 추론(Reason)과 행동(Act)을 결합하는 기법입니다. 특히 에이전트가 도구를 사용할 때 효과적입니다. ‘생각 -> 행동(도구 사용) -> 관찰(도구 결과) -> 다음 생각…‘의 사이클을 통해 복잡한 문제를 해결하도록 유도할 수 있습니다.
- 자기 검토 및 비판(Self-Correction/Critique)
- AI가 생성한 초안에 대해 스스로 결점을 찾고 수정하도록 요구할 수 있습니다. 이는 인간이 자신의 글을 퇴고하는 과정과 유사하며, 결과물의 완성도를 크게 높입니다.
- 예: “네가 방금 작성한 보고서 초안을 검토해줘. 논리적으로 비약이 있는 부분은 없는지, 더 명확하게 표현할 수 있는 문장은 없는지 확인하고 수정해줘.”
- 행동 강제를 위한 템플릿 활용 (Template Forcing)
- ‘Next Word Prediction’ 원리를 이용해 모델의 행동을 강제할 수 있습니다. 예를 들어, 답변 전
태그를 사용하도록 훈련된 모델이 간혹 해당 태그를 누락하는 경우가 있습니다. 이럴 때 Chat Template에서 Assistant의 답변이 시작되는 부분에 를 미리 넣어주면, 모델은 반드시 해당 태그를 먼저 생성하고 그 뒤에 자연스럽게 사고 과정과 답변을 이어가게 됩니다. 이는 모델의 출력 형식을 일관되게 유지시키는 강력한 기법입니다.
- ‘Next Word Prediction’ 원리를 이용해 모델의 행동을 강제할 수 있습니다. 예를 들어, 답변 전