Open Models, Open Runtime, Open Harness - Building your own AI agent with LangChain and Nvidia
Video

Open Models, Open Runtime, Open Harness - Building your own AI agent with LangChain and Nvidia

2026.03.19
·YouTube·by 이호민
#AI Agent#LangChain#Nvidia#Open Source#Runtime

핵심 포인트

  • 1이 비디오는 NVIDIA Neotron 3 Super Model을 Model로, NVIDIA OpenShell을 Runtime으로, LangChain의 Deep Agents를 Harness로 활용하여 자체 agents를 구축하는 방법을 설명합니다.
  • 2OpenShell은 정책 기반의 보안 Sandbox를 제공하여 agent의 실행 환경을 제어하며, Deep Agents는 파일 시스템 도구, skills, sub-agents 및 Context Engineering을 통해 Model과 Runtime을 유연하게 연결하고 orchestrate합니다.
  • 3시연을 통해 agents가 Sandbox 내에서 코드 실행, 파일 쓰기 및 읽기, 메모리 업데이트를 수행하며, OpenShell의 보안 정책에 따라 네트워크 접근이 제한될 수 있음을 보여줍니다.

이 비디오는 Claude Code, Manis, OpenAI의 CodeX와 같은 AI 에이전트를 NVIDIA Neotron 3 Super Model (모델), NVIDIA OpenShell (런타임), 그리고 Langchain의 Deep Agents (하네스)를 포함하는 오픈 소스 기술 스택을 사용하여 구축하는 방법을 설명합니다.

핵심 구성 요소:

  1. 모델 (Model): NVIDIA Neotron 3 Super Model은 최근 출시된 모델로, 정확도와 속도 면에서 뛰어난 성능을 자랑하며, OpenAI의 GPTOS 모델보다 우수하다고 강조됩니다. 에이전트의 응답성에 중요한 역할을 하는 빠른 처리 속도가 특징입니다.
  2. 런타임 (Runtime): NVIDIA OpenShell은 에이전트를 위한 런타임 환경입니다. 보안 관련 기능이 내장되어 있어 에이전트가 수행할 수 있는 작업에 대한 다양한 권한 집합(permission sets)을 설정할 수 있습니다. 로컬 환경에서 실행 가능하며, GPU 가속 라이브러리를 활용하여 GPU 가속 환경에서 실행하는 데 최적화되어 있습니다.
  3. 하네스 (Harness): Langchain Deep Agents는 오픈 소스 에이전트 하네스입니다. 런타임에 연결하기 위한 다양한 도구(예: 파일 시스템 도구)를 제공하며, "deep agents"라는 이름처럼 에이전트가 특정 영역을 더 깊이 탐색할 수 있도록 스킬(skills)과 서브 에이전트(sub-agents)를 활용합니다. 또한, 컨텍스트 윈도우(context window)가 한계에 도달했을 때 요약(summarization)과 같은 일반적인 컨텍스트 엔지니어링 작업을 자동으로 처리합니다.

에이전트 구축 방법 (Core Methodology):

  1. 환경 설정:
    • OpenShell을 설치합니다.
    • OpenShell gateway start 명령어를 사용하여 OpenShell 게이트웨이를 시작합니다.
    • OpenShellsandboxcreate<sandboxname>keepOpenShell sandbox create <sandbox_name> --keep 명령어를 통해 지속적인(persistent) 샌드박스를 생성합니다.
    • 환경 변수(.env 파일)를 설정합니다. 여기에는 NVIDIA API 키, 생성한 샌드박스 이름, 그리고 에이전트의 관찰 및 평가를 위한 Langsmith API 키가 포함됩니다.
  1. 에이전트 정의 (main.py):
    • 모델 통합: NVIDIA API 키와 함께 NVIDIAEmbeddings를 사용하여 Neotron 3 모델을 로드하고, 필요한 매개변수를 설정합니다.
    • 시스템 프롬프트 (System Prompt): 에이전트의 고정된 초기 지침을 포함합니다. 이는 에이전트의 워크플로우, 코드 분해 및 실행, 반복, 보고 방식, 그리고 샌드박스 사용 가이드라인(예: 네트워크 접근 정책이 샌드박스 정책에 따라 결정됨)을 설명합니다. 시스템 프롬프트는 에이전트에 의해 수정될 수 없습니다.
    • 에이전트 메모리 (Agent Memory): agent.mmd와 같은 별도의 파일에 저장된 지침으로, 에이전트 자체에 의해 동적으로 업데이트될 수 있습니다. 이는 시스템 프롬프트와의 주요 차이점입니다.
    • 백엔드 생성 (create_backend 함수):
      • OpenShell 백엔드: Deep Agents가 OpenShell 샌드박스 세션을 사용하여 코드를 실행하는 기본 환경입니다.
      • Composite 백엔드: Deep Agents는 CompositeBackend 추상화를 사용하여 다양한 파일 시스템을 계층화합니다. 이를 통해 로컬에 저장된 메모리 및 스킬 파일(예: agent.mmd)을 에이전트의 실행 환경으로 미러링하여 에이전트가 접근하고 수정할 수 있도록 합니다. 이 방식은 메모리와 스킬이 샌드박스 외부에서 지속되어 세션 또는 샌드박스 간에 영속성을 유지할 수 있게 합니다.
  1. 에이전트 실행 및 상호작용:
    • langraph dev 명령줄 유틸리티를 사용하여 에이전트와 상호작용할 수 있는 Langsmith Studio 인터페이스를 실행합니다.
    • Langsmith Studio:
      • 그래프 뷰(Graph View): 에이전트의 내부 아키텍처(메모리 미들웨어, 툴 호출 패치 미들웨어, 모델 툴 루프)를 시각적으로 보여줍니다.
      • 채팅 박스(Chat Box): 에이전트와 대화형으로 상호작용할 수 있는 인터페이스입니다.
      • 툴 호출 가시성(Tool Calls Visibility): 에이전트가 실행하는 execute 툴 호출과 그 결과를 시각적으로 확인할 수 있습니다. 이를 통해 에이전트가 명령을 실행하거나, 파일을 쓰거나, 스크립트를 실행하는 등의 활동을 모니터링할 수 있습니다.
      • 샌드박스 정책 테스트: OpenShell의 보안 기능을 시연하기 위해 에이전트에게 evil.com으로 POST 요청을 보내도록 지시하면, 샌드박스 정책에 의해 네트워크 접근이 차단되는 것을 확인할 수 있습니다.
      • 메모리 업데이트 시연: 에이전트에게 agent.mmd 파일을 업데이트하여 스페인어로 응답하도록 지시하면, 샌드박스 외부의 agent.mmd 파일이 실제로 수정되어 메모리의 외부 지속성 및 업데이트 가능성을 보여줍니다.

이 프레임워크는 오픈 소스 모델, 런타임, 하네스를 결합하여 에이전트의 보안, 지속성, 확장 가능성을 제공하며, 개발자가 GPU 가속 환경에서 복잡한 데이터 처리 및 코드 실행이 가능한 에이전트를 구축할 수 있는 기반을 마련합니다.