이 튜토리얼에서는 IBM® Granite 모델을 사용하는 오픈 소스 LangGraph 프레임워크로 ReAct(추론 및 행동) AI 에이전트를 구축하며, 이를 위해 Python에서 IBM® watsonx.ai API를 사용합니다. 사용 사례는 기존 IT 지원 티켓을 관리하고 새 티켓을 만드는 것입니다.
인공 지능(AI) 에이전트는 에이전트 워크플로를 설계하고 사용 가능한 툴을 활용하여 사용자 또는 다른 시스템을 대신하여 자율적으로 작업을 수행할 수 있는 시스템 또는 프로그램을 말합니다. 생성형 AI 에이전트는 대규모 언어 모델(LLM)의 고급 자연어 처리(NLP) 기술을 사용하여 사용자 입력을 단계별로 이해하고 응답하며 외부 도구를 호출할 시점을 결정합니다. AI 에이전트의 핵심 구성 요소는 추론입니다. 도구 호출, 인간 개입 또는 기타 에이전트를 통해 새로운 정보를 획득하면 추론 패러다임이 에이전트의 다음 단계를 안내합니다.
각 작업과 각 도구 응답에 대해 ReAct(추론 및 행동) 패러다임은 에이전트에게 다음 단계를 '생각'하고 계획하도록 지시합니다. 이 단계별로 느리게 진행되는 추론을 통해 에이전트가 업데이트된 컨텍스트를 사용하여 결론을 공식화하는 방법에 대한 인사이트를 얻을 수 있습니다. 이 성찰 과정은 연속적이기 때문에 종종 생각-행동-관찰 루프라고도 하며 생각의 연결고리 프롬프트의 한 형태입니다.
이 튜토리얼에서는 복잡한 생성형 AI 워크플로를 구축, 배포, 관리하도록 설계된 오픈 소스 AI 에이전트 프레임워크인 LangGraph 프레임워크를 사용합니다. LangGraph에서 제공하는 사전 구축된
LangGraph에 있는 "상태" 기능은 AI 시스템의 각 반복에서 처리하는 모든 중요 정보를 기록하고 추적하는 기억 장치 역할을 합니다. 에이전트는 이러한 상태 그래프를 통해 과거 정보와 귀중한 컨텍스트를 기억할 수 있습니다. ReAct 그래프의 순환 구조는 한 단계의 결과가 루프의 이전 단계에 따라 달라질 때 활용됩니다. 그래프의 노드 또는 '액터'는 에이전트 로직을 인코딩하고 에지에 의해 연결됩니다. 에지는 기본적으로 현재 상태에 따라 다음에 실행할 노드를 결정하는 Python 함수입니다.
watsonx.ai 프로젝트를 생성하려면 IBM Cloud 계정이 필요합니다.
watsonx 애플리케이션 프로그래밍 인터페이스(API)를 사용하려면 다음 단계를 완료해야 합니다. 참고로 GitHub에서도 튜토리얼을 볼 수 있습니다.
IBM Cloud 계정을 사용하여 watsonx.ai에 로그인합니다.
watsonx.ai 런타임 서비스 인스턴스를 만듭니다(적절한 지역을 선택하고 무료 인스턴스인 Lite 요금제를 선택합니다).
애플리케이션 프로그래밍 인터페이스(API) 키를 생성합니다.
watsonx.ai에 에이전트 배포를 쉽게 시작하려면 이 GitHub 리포지토리를 복제해서 IT 지원 ReAct 에이전트 프로젝트에 액세스하세요. 이를 위해 사용자의 터미널에서 다음 명령을 실행합니다.
다음으로, 아직 Poetry를 설치하지 않은 경우 이를 설치합니다. Poetry는 Python 종속성 및 패키징을 관리하기 위한 도구입니다.
그런 다음 가상 환경을 활성화합니다.
명령
다음 단계를 위해 PYTHONPATH에 작업 디렉토리를 추가해야 합니다. 터미널에서 다음을 실행합니다.
환경 설정 방법은 Github에 있는 README.md 파일에 설명되어 있습니다. 이 설정을 사용하려면 IDE 또는 명령줄에서 여러 명령을 실행해야 합니다.
파일
에이전트가 최신 정보를 제공하고 새 데이터를 추가하려면 데이터 소스가 필요합니다. 데이터 파일은 IBM Cloud Object Storage에 저장하게 됩니다.
ReAct 에이전트에 IT 티켓 관리 기능을 제공하려면 IBM Cloud Object Storage의 데이터 소스에 연결해야 합니다. 이 단계에서는
파일
에이전트는 파일의 데이터를 읽고 쓸 수 있습니다. 먼저 LangChain
이
다음으로
이 도구는 사용자의 문제에 대한 설명과 문제의 긴급성을 인수로 사용합니다. 이 정보가 포함된 COS의 파일에 새 행이 추가되므로 새 티켓이 생성됩니다. 그렇지 않으면 예외가 발생합니다.
마지막으로
에이전트에게 이러한 도구에 대한 액세스 권한을 부여하기 위해 이를
이러한 도구는
에이전트를 배포하기 전에 필요한 모든 정보를
에이전트와 채팅하는 방법에는 세 가지가 있습니다.
로컬 AI 서비스 실행을 위한 스크립트를 실행합니다.
마지막 옵션은 watsonx.ai의 배포 공간에서 에이전트에 액세스하는 것입니다. 이렇게 하려면 왼쪽 메뉴에서 '배포'를 선택합니다. 그런 다음 배포 공간을 선택하고 '자산' 탭을 선택한 다음
배포 스크립트를 실행하려면
배포의
그런 다음 배포 스크립트를 실행합니다.
그런 다음 배포 쿼리를 위한 스크립트를 실행합니다.
이 튜토리얼에서는 옵션 2를 선택하여 배포된 에이전트를 에이전트틱 챗봇의 형태로 watsonx.ai에 쿼리해 보겠습니다. 에이전트에게 도구를 사용하는 데 필요한 몇 가지 프롬프트를 제공하겠습니다. 옵션 3에 나열된 단계를 수행하면 watsonx.ai에 채팅 인터페이스가 표시됩니다. 여기에 프롬프트를 입력할 수 있습니다.
먼저
에이전트의 최종 답변에서 볼 수 있듯이 AI 시스템은
좋습니다! 에이전트가 파일에 티켓을 추가했습니다.
이 튜토리얼에서 우리는, 지원 티켓 조회와 생성 같은 복잡한 작업을 해결하기 위해 의사 결정을 사용하는 ReAct 프레임워크를 사용하여 에이전트를 만들었습니다. Google의 Gemini, IBM의 Granite, OpenAI의 GPT-4 등 여러 AI 모델이 에이전트 툴 호출을 허용합니다. 우리 프로젝트에서는 watsonx.ai API를 통해 IBM Granite AI 모델을 사용했습니다. 모델은 로컬에서와 watsonx.ai에 배포했을 때 모두 예상대로 작동했습니다. 다음 단계로 AI 에이전트 구축을 위해 watsonx-developer-hub GitHub 리포지토리에서 사용할 수 있는 LlamaIndex 및 crewAI 다중 에이전트 템플릿을 확인해 보세요.
IBM watsonx.ai 스튜디오를 사용하여 개발자가 AI 에이전트를 구축, 배포 및 모니터링할 수 있도록 지원합니다.
기업이 AI 에이전트 및 어시스턴트를 구축, 사용자 지정, 관리할 수 있도록 지원하며, 업계에서 가장 포괄적인 기능 세트 중 하나를 사용하여 획기적인 생산성을 창출하세요.
개발자 효율성을 높이는 Granite의 소형 개방형 모델을 사용하여 90% 이상의 비용 절감을 달성하세요. 이러한 엔터프라이즈급 모델은 사이버 보안부터 RAG까지 광범위한 엔터프라이즈 작업과 안전 벤치마크에 대해 탁월한 성능을 제공합니다.