LangChain & LangGraph 1.0 알파 릴리스

TMT

https://blog.langchain.com/langchain-langchain-1-0-alpha-releases/

오늘 우리는 Python과 JS 모두에서 ‎⁠langgraph⁠ 및 ‎⁠langchain⁠의 v1.0 알파 릴리스를 발표합니다. LangGraph는 개발자에게 내구성 있는 실행과 세밀한 제어를 제공하여 복잡한 에이전트 시스템을 프로덕션 환경에서 실행할 수 있는 저수준 에이전트 오케스트레이션 프레임워크입니다. LangChain은 표준화된 모델 추상화와 사전 구축된 에이전트 패턴을 통해 개발자가 벤더 종속 없이 복잡한 애플리케이션을 쉽게 구축할 수 있도록 빠르게 AI 기능을 출시할 수 있게 도와줍니다. 우리는 공식 1.0 릴리스를 10월 말에 목표로 하고 있으며, 여기에서 피드백을 주시면 감사하겠습니다!

LangGraph

‎⁠langgraph⁠Uber, LinkedIn, Klarna와 같은 기업들이 프로덕션 환경에서 사용하면서 충분히 검증되었습니다. 우리는 1.0으로 승격하며, 브레이킹 체인지 없이 릴리스합니다. 내장 에이전트 런타임(내구성 있는 실행, 단기 메모리, 휴먼 인 더 루프 패턴, 스트리밍)을 제공하며, 임의의 워크플로우와 에이전트 패턴을 구축하는 데 사용할 수 있습니다.

LangChain

‎⁠langchain⁠은 다양한 에이전트 패턴을 최대한 쉽게 시작할 수 있도록 고수준 인터페이스를 항상 제공해왔습니다. 초창기에는 이러한 패턴이 몇 개뿐이었으며(이것들이 원래 ‎⁠langchain⁠의 모든 체인과 에이전트를 구성했습니다), 지난 2년 동안 우리는 다음과 같은 사실을 깨달았습니다:

  • 여러 사용 사례는 완전히 커스텀 패턴이 필요합니다. 이런 경우에는 ‎⁠langgraph⁠를 사용하여 직접 구축하는 것을 추천합니다.
  • 나머지 사용 사례는 특정 “에이전트” 구현에 집중되었습니다.

이 “에이전트” 추상화는 주로 다음과 같습니다:

  1. LLM에 몇 가지 도구를 사용할 수 있게 한다.
  2. 입력값을 전달한다.
  3. 만약 도구를 호출하면: 3-1. 해당 도구를 실행한다. 3-2. 도구 호출 및 결과를 추가하여 2단계로 돌아간다.
  4. 도구를 호출하지 않으면: 종료한다.

우리는 LangChain 초기부터 이 추상화를 가지고 있었으며 - 2022년 11월에 도입되었습니다. 이후 도구 호출 등 다양한 기능이 등장하면서 진화해왔습니다.

LangChain 1.0에서는 이 추상화에 중심을 두고 ‎⁠langchain⁠ 패키지를 재구성하며, 새로운 ‎⁠create_agent 구현을 도입합니다 - 동일한 고수준 인터페이스이지만 기반이 다릅니다. 이 구현은 ‎⁠langgraph⁠ 위에 구축되어 기본 에이전트 런타임의 이점을 활용합니다. 이는 ‎⁠langchain⁠ 패키지에는 새롭지만, LangChain 생태계에는 새로운 것이 아닙니다. 지난 1년간 ‎⁠langgraph.prebuilts⁠의 일부로 충분히 검증되었습니다. 다음과 같이 쉽게 사용해볼 수 있습니다:

Python: ‎⁠from langchain.agents import create_agent⁠

JS: ‎⁠import { createAgent } from "langchain"⁠

기존 ‎⁠langchain⁠ 체인과 에이전트를 사용 중이라면 걱정하지 마세요. 기존 체인과 에이전트를 계속 사용할 수 있도록 ‎⁠langchain-legacy⁠ 패키지를 출시할 예정이며, 원한다면 새로운 ‎⁠langchain⁠ 1.0으로 업데이트할 수도 있습니다.

LangChain Core

‎⁠langchain⁠의 핵심 부분 중 하나는 통합 추상화입니다. LangChain은 OpenAI, Anthropic 등과 같은 공급업체와의 수천 개의 통합을 포함하고 있습니다. 이러한 추상화는 기술적으로 ‎⁠langchain-core⁠에 존재하며, 이 추상화만을 위해 만든 기본 패키지입니다.

우리는 브레이킹 체인지 없이 ‎⁠langchain-core⁠를 1.0으로 승격하지만, 핵심적인 추가 사항이 있습니다.

‎⁠langchain-core⁠의 중요한 부분은 “메시지”라는 개념, 즉 LLM API와 소통하는 방식입니다. 1.0에서는 이러한 메시지의 포맷에 더 많은 구조를 도입합니다(하위 호환성 유지). LangChain의 큰 가치 중 하나는 LLM과 상호작용하는 표준화된 방식입니다. LLM과 상호작용하는 방식은 시간이 지나며 변화해왔습니다 - 처음에는 문자열, 그 다음은 메시지(각 메시지의 ‎⁠content⁠가 문자열), 이제는 LLM API가 콘텐츠 블록 목록을 반환합니다. 이에 따라 표준 콘텐츠 타입을 가진 새로운 ‎⁠.content_blocks⁠ 속성을 도입합니다. 콘텐츠 블록에 대한 자세한 내용은 여기에서 확인할 수 있습니다.

Documentation

마지막으로, 모든 오픈소스 프로젝트를 위한 새로운 문서 사이트도 출시합니다. 이 문서는 오픈소스 문서를 한 곳에 모으고, Python과 Javascript 모두를 위한 통합 페이지를 제공합니다. 더 중앙화되고 따라가기 쉬운 문서 사이트를 요청해주신 것을 반영했습니다. 이는 앞으로도 계속 중요한 초점이 될 것입니다.

Try it out

오늘 1.0 알파를 발표하게 되어 기쁩니다. 다음과 같이 쉽게 사용해볼 수 있습니다:

JavaScript

LangChain: ‎⁠npm install langchain@next⁠

LangGraph: ‎⁠npm install @langchain/langgraph@alpha⁠

Python

LangChain: ‎⁠pip install langchain==1.0.0a3⁠

LangGraph: ‎⁠pip install langgraph==1.0.0a1⁠

다시 한 번 - 1.0 릴리스(및 문서)에 대한 피드백은 여기에서 주시면 감사하겠습니다. GitHub 토론 항목(LangChain, LangGraph)도 확인할 수 있습니다. 이는 큰 이정표이며, 앞으로 두 달간 커뮤니티와 함께 작업하게 되어 기대가 큽니다.

Edit this page

On this Page