MongoDB AI 에이전트 구축을 위한 몇 가지 기능을 제공합니다. 벡터 및 문서 데이터베이스 인 MongoDB 에이전트 RAG에 대한 다양한 검색 방법을 지원하며, 장단기 에이전트 메모리를 위해 에이전트 상호 작용을 동일한 데이터베이스 에 저장합니다.
시작하기AI 에이전트란?
생성형 AI의 맥락에서 AI 에이전트는 일반적으로 LLM과 같은 AI 모델을 사전 정의된 도구 세트와 결합하여 자율적 또는 반자율적으로 작업을 수행할 수 있는 시스템을 의미합니다.
AI 에이전트는 도구를 사용하여 문맥을 수집하고, 외부 시스템과 상호 작용하며, 조치를 수행할 수 있습니다. 그들은 자신의 실행 흐름(계획)을 정의할 수 있으며, 이전 상호작용을 기억하여 응답을 결정하는 데 활용합니다(기억). 따라서 AI 에이전트는 추론, 계획 및 의사 결정이 필요한 복잡한 작업에 가장 적합합니다.
아키텍처
AI 에이전트는 일반적으로 다음 구성 요소의 조합을 포함합니다.
인식 | 에이전트에 대한 입력값입니다. 텍스트 입력은 AI 에이전트의 가장 일반적인 인식 메커니즘이지만, 입력은 오디오, 이미지 또는 멀티모달 데이터일 수도 있습니다. |
계획 | 에이전트가 다음에 해야 할 일을 결정하는 방법 이 구성 요소는 일반적으로 LLM과 프롬프트를 포함하며, 피드백 루프와 다양한 프롬프트 엔지니어링 기법(예: 사고 연쇄, reAct)을 활용해 LLM이 복잡한 과제를 논리적으로 해결하도록 돕습니다. AI 에이전트는 단일 LLM을 의사 결정자로, 여러 프롬프트를 가진 LLM, 여러 LLM이 함께 작동하는 경우 또는 이러한 접근 방식의 조합으로 구성될 수 있습니다. |
도구 | 에이전트가 작업의 컨텍스트를 수집하는 방법. 도구는 에이전트가 외부 시스템과 상호 작용하며 벡터 검색, 웹 검색 또는 다른 서비스의 API 호출과 같은 조치를 수행할 수 있게 합니다. |
메모리 | 에이전트 상호작용을 저장하는 시스템으로, 에이전트가 과거 경험을 통해 학습하여 응답을 개선할 수 있도록 합니다. 기억은 단기(현재 세션 동안) 또는 장기(세션 간에 지속됨)일 수 있습니다. |
참고
AI 에이전트는 디자인 패턴 , 기능 및 복잡성이 다양합니다. 멀티 에이전트 시스템을 포함한 다른 에이전트 아키텍처에 대해 학습 에이전트 설계 패턴을 참조하세요.
MongoDB로 AI 에이전트 구축
MongoDB AI 에이전트 빌드를 위해 다음과 같은 구성 요소를 지원합니다.
에이전트 도구
표준 MongoDB 쿼리 외에도 MongoDB 에이전트 용 도구로 구현 수 있는 여러 검색 기능을 제공합니다.
MongoDB 벡터 검색: 벡터 검색 수행하여 시맨틱 의미와 유사성을 기반으로 관련 컨텍스트를 조회 . 자세한 학습 은 MongoDB 벡터 검색 개요를 참조하세요.
MongoDB Search: 전체 텍스트 검색 수행하여 키워드 일치 및 관련성 점수를 기반으로 관련 컨텍스트를 조회 . 자세한 학습 은 MongoDB 검색 개요를 참조하세요.
하이브리드 검색: MongoDB Vector Search와 MongoDB Search를 결합하여 두 접근 방식의 장점을 모두 활용합니다. 자세한 학습 은 하이브리드 검색 수행 방법을 참조하세요.
도구를 수동으로 정의하거나 도구 생성 및 호출을 위한 내장 추상화를 제공하는 LangChain 및 LangGraph와 같은 프레임워크를 사용하여 도구를 정의할 수 있습니다.
도구 정의
도구는 에이전트가 특정 작업을 수행하기 위해 호출할 수 있는 함수로 정의됩니다. 예를 들어, 다음 구문은 벡터 검색 쿼리를 실행하는 도구를 정의하는 방법을 설명합니다.
도구 호출
도구 호출은 에이전트 도구를 실행하는 데 사용합니다. 에이전트 에서 도구 호출을 프로세스 방법을 정의하거나 프레임워크 사용하여 이를 처리하다 있습니다. 이는 일반적으로 도구에 전달할 도구 이름 및 기타 인수를 포함하는 JSON 객체로 정의되므로 에이전트 적절한 매개변수를 사용하여 도구를 호출할 수 있습니다. 예시 를 들어 다음 구문은 에이전트 벡터 검색 도구를 호출하는 방법을 보여줍니다.
{ "tool": "vector_search_tool", "args": { "query": "What is MongoDB?" }, "id": "call_H5TttXb423JfoulF1qVfPN3m" }
에이전트 RAG
MongoDB 벡터 데이터베이스 로 사용하면 AI 에이전트 통해 검색 및 생성 프로세스 동적으로 조정할 수 있는 고급 형태의 RAG 인 에이전트틱 RAG를 구현 검색 도구를 만들 수 있습니다.
이 접근 방식을 사용하면 더 복잡한 워크플로와 사용자 상호 작용이 가능합니다. 예시 시맨틱 검색 에는 MongoDB Vector Search, 전체 텍스트 검색 에는 MongoDB Search를 사용하는 등 작업 에 따라 최적의 검색 도구를 결정하도록 AI 에이전트 구성할 수 있습니다. 또한 컬렉션별로 다양한 검색 도구를 정의하여 에이전트의 검색 기능을 추가로 사용자 지정할 수 있습니다.
에이전트 메모리
MongoDB 는 문서 데이터베이스 이기도 하므로 에이전트의 상호 작용을 MongoDB 컬렉션 에 저장하여 에이전트에 대한 메모리를 구현 수 있습니다. 그런 다음 에이전트 필요에 따라 이 컬렉션 쿼리 하거나 업데이트 수 있습니다. MongoDB 로 에이전트 메모리를 구현 방법에는 여러 가지가 있습니다.
단기 기억의 경우, 상호작용을 저장할 때 특정 세션을 식별하기 위해
session_id필드를 포함하고, 동일한 ID를 가진 상호작용을 쿼리하여 에이전트에게 컨텍스트로 전달합니다.장기 기억을 위해, LLM과의 여러 상호작용을 처리하여 사용자 선호도나 중요한 맥락과 같은 관련 정보를 추출한 후, 에이전트가 필요할 때 쿼리할 수 있도록 이 정보를 별도의 컬렉션에 저장합니다.
대화 기록을 보다 효율적이고 복잡하게 조회 활성화 강력한 메모리 관리 시스템을 빌드 하려면 MongoDB Search 또는 MongoDB Vector Search를 활용하여 세션 전반에서 중요한 상호 작용을 저장, 인덱스, 쿼리 .
단기 텀을 저장하는 컬렉션의 문서는 다음과 비슷할 수 있습니다.
{ "session_id": "123", "user_id": "jane_doe", "interactions": [ { "role": "user", "content": "What is MongoDB?", "timestamp": "2025-01-01T12:00:00Z" }, { "role": "assistant", "content": "MongoDB is the world's leading modern database.", "timestamp": "2025-01-01T12:00:05Z" } ] }
장기 기억을 저장하는 이 문서 컬렉션은 다음과 비슷합니다.
{ "user_id": "jane_doe", "last_updated": "2025-05-22T09:15:00Z", "preferences": { "conversation_tone": "casual", "custom_instructions": [ "I prefer concise answers." ], }, "facts": [ { "interests": ["AI", "MongoDB"], } ] }
다음 프레임워크는 MongoDB 사용하여 에이전트 메모리에 대한 직접 추상화도 제공합니다.
프레임워크 | 기능 |
|---|---|
LangChain |
|
LangGraph |
자세히 학습 LangGraph 및 LangGraph.js를 참조하세요. |
시작하기
다음 튜토리얼에서는 에이전트 프레임워크 없이 에이전트 RAG 및 메모리용 MongoDB 사용하여 AI 에이전트 빌드 방법을 보여줍니다.
전제 조건
이 튜토리얼을 완료하려면 다음 조건을 충족해야 합니다.
다음 MongoDB cluster 유형 중 하나입니다.
MongoDB 버전 6.0.11, 7.0.2 이상을 실행 Atlas cluster . 사용자의 IP 주소 가 Atlas 프로젝트의 액세스 목록에 포함되어 있는지 확인하세요.
Python 과 Docker 사용하여 만든 로컬 Atlas 배포서버 . 로컬 배포를 프로그래밍 방식으로 생성하고 관리 하려면
atlas-local-lib-py(pip install atlas-local-lib-py)를 설치합니다. 자세한 학습 은 atlas-local-lib-py 리포지토리 참조하세요.검색 및 벡터 검색이 설치된 MongoDB Community 또는 Enterprise 클러스터 .
Voyage AI API 키입니다.
OpenAI API 키입니다.
참고
이 튜토리얼에서는 Voyage AI 및 OpenAI의 모델을 사용하지만, 원하는 모델을 사용하도록 코드를 수정할 수 있습니다.
절차
이 AI 에이전트는 사용자 정의 데이터 소스에 대한 질문에 AI 답변하고 계산을 수행할 수 있습니다. 또한 이전 상호작용을 기억하여 응답에 반영할 수 있습니다. 다음 구성 요소를 사용합니다.
인식: 텍스트 입력.
계획: 작업을 추론하기 위한 LLM 및 다양한 프롬프트.
도구: 벡터 검색 도구와 계산 도구.
메모리: MongoDB 컬렉션에 상호작용을 저장합니다.
Tutorials
MongoDB를 사용한 AI 에이전트 구축에 대한 추가 튜토리얼은 다음 표를 참조하세요.
프레임워크 | |
엔터프라이즈 플랫폼 | |
도구 | |
추가 리소스 |