에이전트 지금까지 제가 본 가장 일반적인 번역은 "지능형 신체"이지만 직역은 "에이전트"입니다.
에이전틱은 무슨 뜻인가요? "에이전트적"이라는 표현이 더 적절할 것 같습니다.
독자를 혼란스럽게 하지 않기 위해 이 글에서는 영어를 직접 사용하겠습니다.
LLM이 발전함에 따라 AI의 기능은 더 이상 단순한 작업 자동화에 국한되지 않고 복잡하고 지속적인 워크플로우를 처리할 수 있게 되었습니다. 예를 들어, LLM을 사용하여 이커머스 플랫폼에서 자동으로 상품을 주문하고 사용자 대신 배송을 예약하는 지능형 비서를 만들 수 있습니다. 이러한LLM 기반 어시스턴트를 AI 에이전트라고 합니다..
좀 더 구체적으로 설명하자면, AI 에이전트는 미리 정의된 작업과 도구를 기반으로 특정 작업과 도구를 도와줄 수 있는 LLM 기반의 지능형 비서입니다. 가장 기본적인 형태의 AI 에이전트에는 다음과 같은 주요 기능이 있습니다:
- 메모리 관리AI 에이전트는 사용자와의 상호작용 기록을 저장하고 관리할 수 있습니다.
- 외부 데이터 소스 상호 작용외부 시스템과 통신하여 데이터를 얻거나 작업을 완료하는 기능입니다.
- 함수 실행실제 작업은 함수를 호출하여 수행합니다.
예를 들어 AI 에이전트는 다음과 같은 작업을 수행할 수 있습니다:
- 레스토랑 예약예를 들어, 레스토랑 시스템의 AI 에이전트는 사용자가 온라인으로 좌석을 예약하고, 여러 레스토랑을 비교하고, 음성 상호작용을 통해 레스토랑에 직접 전화를 걸 수 있도록 도와줄 수 있습니다.
- 가상 협업 동료AI 에이전트는 프로젝트의 '작은 비서' 역할을 하며 특정 작업에 대해 사용자와 협업할 수 있습니다.
- 일상 업무 자동화AI 에이전트는 다단계 작업을 처리하고 일상적인 컴퓨터 작업까지 완료할 수 있습니다. 예를 들어, Replit 에이전트는 개발자가 개발 환경에서 수행하는 작업을 시뮬레이션하여 종속성을 자동으로 설치하고 코드를 편집할 수 있으며, Anthropic의 컴퓨터 에이전트 사용 가이드 Claude 마우스 이동, 버튼 클릭, 텍스트 입력 등 사용자가 일반적으로 사용하는 방식으로 컴퓨터를 조작합니다.
Python, React 등과 같은 기술 스택을 사용하여 처음부터 AI 에이전트를 구축할 수도 있지만, Phidata, OpenAI Swarm, LangGraph, Microsoft Autogen, CrewAI, Vertex AI, 그리고 다음과 같은 기술의 도움을 받아 처음부터 AI 에이전트를 구축할 수도 있습니다. Langflow AI 어시스턴트와 같은 멀티 에이전트 프레임워크를 사용하면 개발 프로세스가 더욱 효율적입니다. 이러한 프레임워크는 AI 어시스턴트를 빠르게 구축할 수 있도록 미리 패키지화된 도구와 기능을 제공합니다.
그렇다면 이러한 프레임워크를 사용하면 어떤 이점이 있을까요?
- 적합한 LLM 선택하기특정 애플리케이션 시나리오에 따라 OpenAI, Anthropic, xAI, Mistral 등과 같은 LLM을 사용하거나 다음과 같은 LLM을 사용할 수 있습니다. Ollama 및 LM Studio와 같은 도구를 사용하여 AI 에이전트를 구축할 수 있습니다.
- 지식창고 추가이 프레임워크를 사용하면 AI 에이전트가 정보를 습득하고 이해하는 데 도움이 되는 특정 문서(예: json, pdf 파일 또는 웹사이트)를 지식창고로 추가할 수 있습니다.
- 내장 메모리 기능채팅 로그나 개인화된 대화를 저장하고 관리하기 위해 복잡한 시스템을 구축할 필요가 없습니다. 이 프레임워크에는 시간이 지나도 AI 에이전트가 이전 상호작용을 기억하고 액세스하는 데 도움이 되는 메모리 기능이 포함되어 있습니다.
- 사용자 지정 도구멀티 에이전트 프레임워크를 사용하면 AI 에이전트에 사용자 지정 도구를 추가하고 외부 시스템과 원활하게 통합하여 온라인 결제, 웹 검색, API 호출, 데이터베이스 조회, 동영상 보기, 이메일 전송 등과 같은 작업을 수행할 수 있습니다.
- 엔지니어링 과제 간소화이러한 프레임워크는 지식 및 메모리 관리와 같은 복잡한 엔지니어링 작업을 간소화하여 AI 제품 개발 시 기술적 어려움을 줄이는 데 도움이 됩니다.
- 개발 및 배포 가속화이 프레임워크는 AI 시스템 구축에 필요한 도구와 인프라를 제공하여 AWS와 같은 클라우드 플랫폼에 AI 시스템을 보다 신속하게 개발 및 배포할 수 있도록 지원합니다.
이러한 프레임워크를 통해 효율적이고 지능적인 AI 에이전트를 보다 쉽게 개발하여 제품 개발의 속도와 품질을 개선할 수 있습니다.
이제 AI 에이전트를 구축할 수 있는 상위 5가지 플랫폼에 대해 자세히 살펴보고 나만의 AI 어시스턴트를 구축하는 데 도움을 드리겠습니다!
에이전트의 기본 구조
다음 코드 스니펫은 가장 간단한 AI 에이전트 중 하나를 보여줍니다. AI 에이전트는 언어 모델을 사용하여 문제를 해결합니다.AI 에이전트의 정의에는 크고 작은 언어 모델, 메모리, 스토리지, 외부 지식 소스, 벡터 데이터베이스, 명령어, 설명, 이름 등이 포함될 수 있습니다. AI 에이전트의 정의에는 언어 모델, 메모리, 스토리지, 외부 지식 소스, 벡터 데이터베이스, 명령어, 설명, 이름 등의 선택 항목이 포함될 수 있습니다.

예를 들면 다음과 같습니다. 윈드서핑 이와 같은 최신 AI 에이전트는 누구나 풀스택 웹 애플리케이션을 빠르게 생성, 실행, 편집, 빌드 및 배포할 수 있도록 도와줍니다. Astro, Vite, Next.js, Superbase 등 다양한 웹 기술 및 데이터베이스를 위한 코드 생성 및 애플리케이션 구축을 지원합니다.
기업 내 멀티 에이전트 적용 사례
에이전트 AI 시스템은 기업 환경에서 폭넓게 활용되고 있습니다.특히 자동화되고 반복적인 작업을 수행하는 경우. 다음은 엔터프라이즈 공간에서 AI 에이전트가 유용한 주요 애플리케이션 시나리오입니다:
- 통화 및 기타 분석참가자의 영상 통화를 분석하여 사람들의 감정, 의도 및 만족도에 대한 인사이트를 얻을 수 있으며, 멀티 에이전트 시스템은 사용자 의도, 인구 통계 및 상호 작용을 분석하고 보고하는 데 탁월합니다. 분석/보고 기능은 조직이 고객 또는 시장을 타겟팅하는 데 도움이 됩니다.
- 통화 분류참가자의 네트워크 대역폭과 강도에 따라 통화를 자동으로 분류하여 효율적으로 처리합니다.
- 시장 경청시장 애플리케이션에서 고객 정서를 모니터링하고 분석합니다.
- 설문조사 및 댓글 분석고객 피드백 및 설문조사 데이터를 사용하여 인사이트를 얻고 고객 경험을 개선하세요.
- 출장 및 경비 관리비용 보고, 추적 및 승인을 자동화하세요.
- 대화 뱅킹AI 기반 채팅 또는 음성 어시스턴트를 통해 고객의 뱅킹 업무를 지원합니다.
- 범용 AI 지원 챗봇고객 지원 상담원은 고객 불만을 처리하고 문제를 해결하며 복잡한 작업을 다른 상담원에게 위임할 수 있습니다.
- 금융금융 에이전트는 경제, 주식 및 시장 동향을 예측하고 실용적인 투자 조언을 제공하는 데 사용할 수 있습니다.
- 시장비즈니스의 마케팅 팀은 AI 에이전트를 사용하여 다양한 타겟 고객을 위한 맞춤형 콘텐츠와 광고 문구를 생성하여 전환율을 높일 수 있습니다.
- 판매(대리인, 계약 등)AI 에이전트는 시스템에서 고객 상호 작용 패턴을 분석하고 영업팀이 리드 전환에 집중할 수 있도록 도와줍니다.
- skill기술 업계에서 AI 코딩 에이전트는 코드 완성, 생성, 자동화, 테스트 및 버그 수정을 가속화하여 개발자와 엔지니어의 생산성 향상을 돕습니다.
2024 5개 에이전트 프레임워크
여러 Python 프레임워크를 사용하여 애플리케이션과 서비스에 에이전트를 만들고 추가할 수 있습니다. 이러한 프레임워크에는 노코드(시각적 AI 에이전트 빌더), 로우코드 및 미디엄코드 도구가 포함됩니다. 이제 비즈니스 요구 사항에 따라 자유롭게 선택할 수 있도록 2024년 최고의 Python 기반 에이전트 빌더 5가지를 소개해드리겠습니다.
1 Phidata
Phidata 는 AI 제품에서 LLM을 에이전트로 전환하기 위한 Python 기반 프레임워크로, OpenAI, Anthropic, Cohere, Ollama, 그리고 다음과 같은 주요 업체들의 클로즈 소스 및 오픈 소스 LLM을 지원합니다. 함께 AI 등. 데이터베이스 및 벡터 저장소를 지원하므로 AI 시스템을 Postgres, PgVector, Pinecone, LanceDb 등에 쉽게 연결할 수 있습니다. Phidata를 사용하면 기본 에이전트를 구축할 수 있을 뿐만 아니라 함수 호출, 구조화된 출력 및 미세 조정을 통해 고급 에이전트를 만들 수 있습니다.
Phidata의 주요 기능
- 기본 제공 상담원 UIPhidata는 로컬 또는 클라우드에서 에이전트 프로젝트를 실행하고 백그라운드에서 세션을 관리하기 위한 기본 사용자 인터페이스를 제공합니다.
- 배포에이전트를 GitHub 또는 클라우드 서비스에 게시하거나 AWS 계정을 연결하여 프로덕션 환경에 배포할 수 있습니다.
- 주요 지표 모니터링세션 스냅샷, API 호출, 토큰 사용량을 제공하고 설정 튜닝 및 상담원 개선 사항을 지원합니다.
- 템플릿 지원미리 구성된 코드베이스 템플릿으로 AI 에이전트의 개발 및 프로덕션 프로세스를 가속화하세요.
- AWS 지원Phidata는 AWS와 원활하게 통합되며 AWS 계정에서 전체 애플리케이션을 실행할 수 있습니다.
- 모델 독립성최신 기술 사용 지원: OpenAI, Anthropic, Groq 및 미스트랄 및 기타 고급 모델과 API 키.
- 멀티 에이전트 구축Phidata를 사용하면 서로에게 작업을 전달하고 복잡한 작업을 협업하는 에이전트 팀을 만들 수 있으며, Phidata는 백그라운드에서 에이전트들의 조정을 원활하게 처리합니다.
이제 Phidata 프레임워크와 OpenAI의 LLM을 사용하여 Python으로 Yahoo Finance의 재무 데이터를 쿼리하는 기본 AI 에이전트를 구축하는 방법을 보여드리겠습니다. 이 에이전트는 다양한 회사 애널리스트의 추천을 Yahoo Finance를 통해 취합하도록 설계되었습니다.
종속성을 설치합니다:

새로운 financial_agent.py를 만듭니다:
import openai from phi.agent import Agent from phi.model.openai import OpenAIChat from phi.tools.yfinance import YFinanceTools from dotenv import load_dotenv import os # 从 .env 文件加载环境变量 load_dotenv() # 从环境中获取 API 密钥 openai.api_key = os.getenv("OPENAI_API_KEY") # 初始化 Agent finance_agent = Agent( name="Finance AI Agent", model=OpenAIChat(id="gpt-4o"), tools=[ YFinanceTools( stock_price=True, analyst_recommendations=True, company_info=True, company_news=True, ) ], instructions=["Use tables to display data"], show_tool_calls=True, markdown=True, ) # 输出分析师对 NVDA 的推荐摘要 finance_agent.print_response("Summarize analyst recommendations for NVDA", stream=True)
위의 코드:
- 모듈 가져오기 및 API 키 로드
먼저 필요한 모듈과 패키지를 가져오고 .env 파일을 통해 OpenAI의 API 키를 로드합니다. 이 API 키 로드는 Anthropic, Mistral 및 Groq과 같은 다른 모델 제공업체에도 적용됩니다. - 프록시 만들기
Phidata의 에이전트 클래스를 사용하여 새 에이전트를 생성하고 모델, 도구, 명령어 등 고유한 기능과 특징을 지정할 수 있습니다. - 응답 인쇄
질문에 대한 상담원의 응답을 출력하고 스트림으로 표시할지 여부를 지정하려면 print_response 메서드를 호출합니다(stream=True).

2 군집
스웜 OpenAI는 최근 오픈 소스 실험용 에이전트 프레임워크인 경량 멀티 에이전트 오케스트레이션 프레임워크를 출시했습니다.
다음 사항에 유의하십시오.스웜은 아직 실험 단계에 있습니다. 개발 및 교육 목적으로는 사용할 수 있지만 프로덕션 환경에서는 사용하지 않는 것이 좋습니다. 최신 정보는 공식 리포지토리를 참조하세요:
https://github.com/openai/swarm
군단 사용 상담원 노래로 응답 핸드오프 에이전트 오케스트레이션 및 조정을 위한 추상화로서 테스트 및 관리가 용이한 경량 프레임워크입니다. 테스트 및 관리가 용이한 경량 프레임워크로, 특정 작업을 수행하도록 도구, 명령 및 기타 매개변수를 사용하여 Swarm의 에이전트를 구성할 수 있습니다.
가볍고 단순한 아키텍처 외에도 Swarm에는 다음과 같은 주요 기능이 있습니다:
- 다음 세대에 물려주기스웜은 한 명의 에이전트가 언제든지 다른 에이전트에게 대화를 넘겨줄 수 있는 멀티 에이전트 시스템 구축을 지원합니다.
- 확장성Swarm은 간소화된 핸드오프 아키텍처를 통해 수백만 명의 사용자를 지원할 수 있는 에이전트 시스템을 쉽게 구축할 수 있습니다.
- 확장성스웜은 고도로 사용자 지정할 수 있도록 설계되었으며 완전히 맞춤화된 상담원 환경을 만드는 데 사용할 수 있습니다.
- 내장 검색 시스템 및 메모리 처리스웜에는 대화 콘텐츠를 저장하고 처리하는 기능이 내장되어 있습니다.
- 개인정보 보호스웜은 주로 클라이언트 측에서 실행되며 호출 간 상태를 유지하지 않으므로 데이터 프라이버시가 크게 향상됩니다.
- 교육 리소스스웜은 개발자가 테스트하고 학습할 수 있는 다양한 기본부터 고급 멀티 에이전트 애플리케이션 예제를 제공합니다.
다음으로 스웜을 사용하는 방법을 보여드리겠습니다:
from swarm import Swarm, Agent # 初始化 Swarm 客户端 client = Swarm() mini_model = "gpt-4o-mini" # 定义协调函数,用于将任务交接给 Agent B def transfer_to_agent_b(): return agent_b # 定义 Agent A agent_a = Agent( name="Agent A", instructions="You are a helpful assistant.", functions=[transfer_to_agent_b], ) # 定义 Agent B agent_b = Agent( name="Agent B", model=mini_model, instructions="You speak only in Finnish.", ) # 运行 Agent 系统并获取响应 response = client.run( agent=agent_a, messages=[{"role": "user", "content": "I want to talk to Agent B."}], debug=False, ) # 打印 Agent B 的响应 print(response.messages[-1]["content"])
위 코드
- 초기화
- 스웜은 클라이언트 인스턴스를 생성하는 데 사용됩니다.
- 에이전트는 에이전트의 이름, 기능 및 언어 모델을 정의합니다(예: gpt-4o-mini).
- 전환 로직
- 초기화
transfer_to_agent_b는 에이전트_a에서 에이전트_b로 작업을 전송하는 코디네이터 함수입니다.
- 에이전트 시스템 실행
client.run()은 에이전트 시스템을 실행하여 메시지와 디버그 매개변수를 전달하여 작업 실행을 추적합니다.

agent_b에 대한 명령의 언어를 다른 언어(예: 영어, 스웨덴어, 핀란드어)로 변경하면 해당 언어로 응답을 받게 됩니다.
3 CrewAI
CrewAI AI 에이전트를 빠르게 구축하고 최신 LLM 및 코드베이스에 통합하기 위한 가장 인기 있는 에이전트 기반 AI 프레임워크 중 하나입니다. 오라클, 딜로이트, 액센츄어 등의 대기업에서 CrewAI를 사용하고 신뢰하고 있습니다.
CrewAI는 다른 에이전트 기반 프레임워크보다 더 풍부하고 다양한 기능을 제공합니다.
- 확장성Notion, Zoom, Stripe, Mailchimp, Airtable 등 700개 이상의 애플리케이션과의 통합을 지원합니다.
- 인공물
- 개발자는 CrewAI 프레임워크를 사용하여 멀티 에이전트 자동화 시스템을 처음부터 구축할 수 있습니다.
- 디자이너는 UI 스튜디오와 템플릿 툴을 사용하여 코드 없는 환경에서 모든 기능을 갖춘 에이전트를 만들 수 있습니다.
- 배포원하는 배포 방법을 사용하여 개발 에이전트를 프로덕션 환경으로 빠르게 마이그레이션할 수 있습니다.
- 상담원 모니터링Phidata와 마찬가지로 CrewAI는 상담원의 진행 상황과 성과를 모니터링할 수 있는 직관적인 대시보드를 제공합니다.
- 기본 제공 교육 도구CrewAI의 기본 제공 교육 및 테스트 도구를 사용하여 상담원의 성과와 효율성을 개선하고 응답 품질을 보장하세요.
먼저 CrewAI를 설치해야 합니다:

위 명령은 CrewAI와 해당 도구를 설치하고 설치가 성공했는지 확인합니다.
설치가 완료되면 다음 명령을 실행하여 새 CrewAI 프로젝트를 생성할 수 있습니다:

이 명령을 실행하면 다음 모델 제공자 목록(예: OpenAI, Anthropic, xAI, Mistral 등)에서 하나를 선택하라는 메시지가 표시됩니다. 제공업체를 선택한 후 목록에서 특정 모델(예: gpt-4o-mini)을 선택할 수도 있습니다.
다음 명령을 사용하여 멀티 에이전트 시스템을 만들 수 있습니다:

전체 CrewAI 애플리케이션은 GitHub 저장소에 업로드되어 있으며 다음 명령어를 사용하여 다운로드하여 실행할 수 있습니다:

https://github.com/GetStream/stream-tutorial-projects/tree/main/AI/Multi-Agent-AI
실행하면 다음과 유사한 응답 결과를 볼 수 있습니다:

4 Autogen
Autogen 는 에이전트 시스템 구축을 위한 오픈 소스 프레임워크입니다. 이 프레임워크를 사용하면 멀티 에이전트 협업 및 LLM 워크플로를 만들 수 있습니다.
Autogen은 다음과 같은 주요 기능을 제공합니다:
- 다국어 지원Python 및 .
- 로컬 에이전트에이전트를 로컬에서 실행하고 실험하여 개인정보 보호를 강화할 수 있습니다.
- 비동기 메시지 통신상담원 간의 커뮤니케이션에는 비동기 메시지를 사용합니다.
- 확장성개발자가 조직 간 협업을 위한 분산 에이전트 네트워크를 구축할 수 있도록 지원합니다.
- 사용자 지정 기능플러그 가능한 구성 요소로 완전히 개인화된 상담원 시스템 환경을 사용자 지정하고 구축하세요.
다음 코드 블록은 간단한 AI 날씨 에이전트 시스템을 구축합니다:
import asyncio from autogen_agentchat.agents import AssistantAgent from autogen_agentchat.task import Console, TextMentionTermination from autogen_agentchat.teams import RoundRobinGroupChat from autogen_ext.models import OpenAIChatCompletionClient import os from dotenv import load_dotenv load_dotenv() # 定义工具 async def get_weather(city: str) -> str: return f"The weather in {city} is 73 degrees and Sunny." async def main() -> None: # 定义 Agent weather_agent = AssistantAgent( name="weather_agent", model_client=OpenAIChatCompletionClient( model="gpt-4o-mini", api_key=os.getenv("OPENAI_API_KEY"), ), tools=[get_weather], ) # 定义终止条件 termination = TextMentionTermination("TERMINATE") # 定义 Agent 团队 agent_team = RoundRobinGroupChat([weather_agent], termination_condition=termination) # 运行团队并将消息流至控制台 stream = agent_team.run_stream(task="What is the weather in New York?") await Console(stream) asyncio.run(main())
위 코드
- 도구 정의get_weather는 도시 날씨 정보를 반환하는 샘플 유틸리티 함수입니다.
- 에이전트 정의AssistantAgent를 사용하여 에이전트를 정의하고 모델 클라이언트를 OpenAI의 GPT-4o-mini로 설정합니다. .env 파일에서 API 키가 로드됩니다.
- 해지 조건"종료"가 언급될 때 작업을 종료하는 TextMentionTermination을 통해 종료 조건을 정의합니다.
- 에이전트 팀라운드 로빈 그룹 채팅을 사용하여 투표 방식으로 작업을 할당할 상담원 팀을 만듭니다.
이 코드를 실행하면 콘솔에 다음과 유사한 출력이 표시됩니다:

5 LangGraph
LangGraph LangGraph는 복잡한 작업을 처리하는 멀티에이전트 시스템을 구축하기 위해 설계된 노드 기반 AI 프레임워크입니다. LangChain 생태계의 일부인 LangGraph는 그래프 구조의 에이전트 프레임워크입니다. 사용자는 노드와 에지를 통해 선형적, 계층적, 순차적 워크플로를 구축할 수 있습니다. 그중에서도노드는 에이전트의 작업을 나타냅니다.Edge작업 간의 전환을 나타냅니다.상태는 LangGraph 에이전트의 또 다른 중요한 부분입니다.
LangGraph의 장점 및 주요 기능
- 무료 오픈 소스LangGraph는 MIT 오픈 소스 라이선스에 따른 무료 라이브러리입니다.
- 스트리밍 지원에이전트의 중간 단계와 사고 과정을 보여주기 위해 그대로 스트리밍을 지원합니다.
- 배포 옵션여러 개의 대규모 배포가 지원되며, LangSmith를 통해 에이전트 성능을 모니터링할 수 있습니다. 엔터프라이즈 옵션을 사용하면 LangGraph를 사용자의 자체 인프라에 완전히 배포할 수 있습니다.
- 기업 적응Replit AI 코딩 에이전트를 구동하는 데 LangGraph를 사용하여 LangGraph의 엔터프라이즈 적용 가능성을 입증했습니다.
- 고성능복잡한 상담원 워크플로우를 처리할 때 추가 코드 부담이 없습니다.
- 유통 및 제어 가능성루프를 포함하는 멀티 에이전트 워크플로우를 쉽게 정의하고 에이전트의 상태를 완벽하게 제어할 수 있습니다.
- 객체화LangGraph는 그래프의 각 단계가 끝난 후 에이전트 상태를 자동으로 저장하며, 언제든지 그래프 실행을 일시 중지하고 다시 시작할 수 있도록 지원합니다.
아래 주소로 이동하여 샘플 코드를 다운로드하세요:
https://langchain-ai.github.io/langgraph/
© 저작권 정책
기사 저작권 AI 공유 서클 모두 무단 복제하지 마세요.
관련 문서
댓글 없음...