본문 바로가기

AI engineering/LLM

이 ChatGPT는 스스로 마인크래프트를 합니다. - LLM, AI agent

 

AI 엔지니어 직무를 새로 맡게 되어 AI agent에 대한 공부를 하고 있습니다.

알아보니 이 agent가 참 흥미로운 것들이 많더군요.

더 늦게 알았다면 아쉬울 뻔했습니다.

 

게임도 AI agent가 대신 해주는 시대입니다.

이 GPT는 스스로 집을 짓고, 사냥하고, 갑옷 재료를 만들어 입습니다.

인간의 개입없이 말이지요.

광범위한 기술을 습득하고, 지속적으로 새로운 발견을 합니다.

https://voyager.minedojo.org/

 

어떻게 이런 동작이 가능한 것일까요?

역시 딥러닝의 강화 학습(RL)모방 학습을 사용했습니다.

 

voyager에는 세 가지 핵심 모듈이 존재합니다.

  1. 탐험을 극대화하는 자동 커리큘럼
  2. 복잡한 행동을 저장하고 검색하기 위한 스킬 라이브러리
  3. 임베디드 제어를 위한 실행 가능한 코드를 생성하는 새로운 반복적 프롬프트 메커니즘

 

프롬프트들과 컨텍스트 학습을 통해 GPT와 상호작용하며, 이 방식은 모델 매개변수 접근과 파인튜닝을의 수고를 비교적 덜게 구현했다고 합니다.

 

먼저 에이전트의 현재 상태와 탐색 진행상황을 고려해서 진행할 행동을 만들어냅니다.

예를 들어 마인크래프트 내에 현재 시간이 밤이고 근처에 좀비가 있고, 나에게는 스톤 소드와 방패가 있다면,

GPT로부터 좀비 한 마리를 잡아라. 같은 명령을 받아오는 것이지요.

 

새로운 기술은 검색과 색인화를 통해 스킬 라이브러리에 저장합니다.

아이언 도끼를 만드는 방법을 검색해서 답변을 얻어낸 후, 임베딩을 진행합니다.

도출한 키 값을 스킬 라이브러리에 추가하여 추후 자동 커리큘럼에서 활용합니다.

임베딩이란 데이터의 의미와 특징을 포착해 숫자로 표현한 것입니다. 거리를 계산할 수 있기 때문에 다음과 같은 작업이 활용할 수 있죠.
- 검색 및 추천: 검색어와 관련 있는 상품 추천.
- 클러스터링 및 분류: 유사하고 관련이 있는 데이터를 하나로 묶기.
- 이상치 탐지: 나머지 데이터와 거리가 먼 데이터는 이상치로 볼 수 있음.

반복적 프롬프팅으로 현 상태의 피드백을 받습니다.

GPT는 막대기를 만들기 전에 판자 2개가 더 필요하다는 것을 깨닫습니다.

오른쪽에서는 마인크래프트에 아카시아 도끼가 없으므로 아카시아 도끼 대신 나무 도끼를 만들어야 한다는 것을 알게 됩니다.

AI agent를 만들기 위한 도구

위의 voyager처럼 LLM을 이용한 agent를 어떻게 만들 수 있을까요?

 

AI agent를 만들기 위해서는 Langchain 같은 프레임워크가 필요합니다.

거의 모든 AI agent에 사용되고 있으며 LLM, 벡터 데이터베이스 같은 다양한 것들을 연결하는 응용 프로그램입니다.

개발자라면 코드 중심의 체계적인 agent 구성이 가능합니다.

 

Langchain 위에 만드는 도구는 Langflow입니다.

Langflow는 파이썬으로 실행되며 드래그 앤 드롭 인터페이스를 사용할 수도 있어 손쉽게 agent에 대한 접근이 가능합니다.

코드 실행 없이 비개발자도 쉽게 langchain의 워크플로우를 설계 가능한 GUI 기반 도구죠.

 

Langraph는 Langchain 위에 구축된 프레임워크 입니다.

langchain의 복잡한 파이프라인을 시각적으로 표현해줍니다.

 

차이점을 정리하자면 다음과 같습니다.

기본은 LangChain 입니다.

특징 LangChain LangGraph LangFlow
주요 목적 NLP 파이프라인 구축 그래프 기반 워크플로우 설계 및 관리 GUI로 LangChain 설계 및 실행
초점 코드 중심의 체계적 구성 시각적 데이터 흐름 및 관계 코드 없이 쉽게 설계
사용자 대상 개발자 복잡한 워크플로우 관리 필요 사용자 비개발자 및 초보 사용자
장점 높은 유연성과 확장성 시각화된 관리와 디버깅 직관적 설계 및 빠른 프로토타이핑

 

 

추가로 아래 글에서 LLM에 대한 기초 지식을 쉽게 정리해놨습니다.

지식 한 스푼 얻어가세요!

 

[LLM] ChatGPT, Claude, Gemini 같은 LLM이란? 초보도 쉽게 알기

요즘 같은 AI 시대에 ChatGPT를 한 번쯤은 들어봤을 것 같은데요,조금만 더 깊게 들어가면 LLM이라는 개념이 나옵니다.그렇다면 LLM은 무엇일까요? Large Language Model, 즉 LLM이란,대규모 언어 모델의 약

develiro.tistory.com