Vertex AI 기반 LangChain

Vertex AI 기반 LangChain (미리보기)을 사용하면 LangChain 오픈소스 라이브러리를 활용하여 커스텀 생성형 AI 애플리케이션을 빌드하고 모델, 도구, 배포에 Vertex AI를 사용할 수 있습니다. Vertex AI용 LangChain(미리보기 버전)을 사용하면 다음 단계를 수행할 수 있습니다.

  • 작업할 대규모 언어 모델(LLM)을 선택합니다.
  • 외부 API에 액세스하는 데 사용할 도구를 정의합니다.
  • 조정 프레임워크에서 사용자와 시스템 구성요소 간의 인터페이스를 구조화합니다.
  • 관리형 런타임에 프레임워크를 배포합니다.

이점

  • 맞춤설정 가능: LangChain의 표준화된 인터페이스를 활용하여, Vertex AI용 LangChain을 다양한 종류의 애플리케이션을 구축하는 데 채택할 수 있습니다. 애플리케이션의 로직을 맞춤설정하고 모든 프레임워크를 통합하여 높은 수준의 유연성을 제공할 수 있습니다.
  • 배포 간소화: Vertex AI용 LangChain은 LangChain과 동일한 API를 사용하여 LLM과 상호작용하고 애플리케이션을 빌드합니다. Vertex AI용 LangChain은 Vertex AI LLM을 사용하여 배포를 단순화하고 속도를 높입니다. Reasoning Engine 런타임은 라이브러리를 기반으로 호환되는 API를 생성하기 위한 단일 클릭 배포를 지원하기 때문입니다.
  • Vertex AI 생태계와 통합: Vertex AI용 LangChain의 Reasoning Engine은 Vertex AI의 인프라 및 사전 빌드된 컨테이너를 사용하여 LLM 애플리케이션 배포를 지원합니다. Vertex AI API를 사용하여 Gemini 모델, 함수 호출, 확장 프로그램과 통합할 수 있습니다.
  • 안전성, 비공개성, 확장성: 개발 프로세스를 직접 관리하는 대신 단일 SDK 호출을 사용할 수 있습니다. Reasoning Engine 관리형 런타임을 사용하면 애플리케이션 서버 개발, 컨테이너 만들기, 인증 구성, IAM, 확장과 같은 태스크를 할 필요가 없습니다. Vertex AI는 자동 확장, 리전 확장, 컨테이너 취약점을 처리합니다.

사용 사례

엔드 투 엔드 예시를 통해 Vertex AI용 LangChain에 대해 알아보려면 다음 리소스를 참조하세요.

사용 사례 설명 링크
공개 API에 연결하여 생성형 AI 애플리케이션 빌드 통화 간 변환.

모델에서 '오늘 달러 대비 유로 환율 어때?'와 같은 쿼리에 정확한 답변을 제공할 수 있도록 환율 앱에 연결하는 함수를 만듭니다.
Vertex AI SDK for Python 노트북 - Reasoning Engine을 사용하여 에이전트 빌드 및 배포 소개
커뮤니티 태양열 프로젝트 설계

잠재적 위치를 파악하고 관련 정부 기관 및 공급업체를 조회한 후 지역과 건물의 위성 이미지와 태양광 잠재 발전량을 검토하여 태양광 패널을 설치할 최적의 위치를 찾습니다.
Vertex AI SDK for Python 노트북 - Vertex AI Reasoning Engine을 사용하여 Google 지도 API 에이전트 빌드 및 배포
데이터베이스에 연결하여 생성형 AI 애플리케이션 빌드 AlloyDB 및 CloudSQL PostgreSQL과 통합 블로그 게시물 - AlloyDB 및 PostgreSQL용 Cloud SQL을 위한 Vertex AI용 LangChain 발표

Vertex AI SDK for Python 노트북 - Vertex AI용 LangChain에 PostgreSQL용 Cloud SQL을 사용하여 RAG 애플리케이션 배포

Vertex AI SDK for Python 노트북 - Vertex AI용 LangChain에 AlloyDB를 사용하여 RAG 애플리케이션 배포
자연어를 사용하여 정형 데이터 스토어 쿼리 및 이해 Vertex AI SDK for Python 노트북 - Vertex AI Search에서 Vertex AI Reasoning Engine과 RAG를 사용하여 대화형 검색 에이전트 빌드
자연어를 사용하여 그래프 데이터베이스 쿼리 및 이해 블로그 게시물 - LangChain 및 Neo4j와 함께 Vertex AI Reasoning Engine을 사용하는 GenAI GraphRAG 및 AI 에이전트
자연어를 사용하여 벡터 저장소 쿼리 및 이해 블로그 게시물 - MongoDB Atlas 및 Vertex AI Reasoning Engine을 사용하여 생성형 AI RAG 간소화
OSS 프레임워크를 사용하여 생성형 AI 애플리케이션 빌드 OneTwo 오픈소스 프레임워크를 사용하여 에이전트 빌드 및 배포 블로그 게시물 - OneTwo 및 Vertex AI Reasoning Engine: Google Cloud에서 고급 AI 에이전트 개발 살펴보기
LangGraph 오픈소스 프레임워크를 사용하여 에이전트 빌드 및 배포 Vertex AI SDK for Python 노트북 - Vertex AI Reasoning Engine으로 LangGraph 애플리케이션 빌드 및 배포
생성형 AI 애플리케이션 디버깅 및 최적화 OpenTelemetry 및 Cloud Trace를 사용하여 에이전트 빌드 및 추적 Vertex AI SDK for Python 노트북 - 에이전트 디버깅 및 최적화: Vertex AI Reasoning Engine 추적 가이드

시스템 구성요소

OSS LangChain 및 Vertex AI를 사용하여 커스텀 생성형 AI 애플리케이션을 빌드하고 배포하는 과정은 4가지 구성요소로 구성됩니다.

구성요소설명
LLM

커스텀 애플리케이션에 쿼리를 제출하면 LLM이 쿼리를 처리하고 응답을 제공합니다.

외부 API와 통신하는 도구 집합을 정의하고 이를 모델에 제공할 수 있습니다. 쿼리를 처리하는 동안 모델은 특정 태스크를 도구에 위임합니다. 이는 파운데이션 또는 미세 조정된 모델에 대한 하나 이상의 모델 호출을 의미합니다.

자세한 내용은 모델 버전 및 수명 주기를 참조하세요.

도구

외부 API(예: 데이터베이스)와 통신하는 도구 집합을 정의하고 이를 모델에 제공할 수 있습니다. 쿼리를 처리하는 동안 모델은 특정 태스크를 도구에 위임할 수 있습니다.

Vertex AI의 관리형 런타임을 통한 배포는 Gemini 함수 호출 기반 도구를 사용하도록 최적화되어 있지만 LangChain 도구/함수 호출을 지원합니다. Gemini 함수 호출에 대한 자세한 내용은 함수 호출을 참조하세요.

조정 프레임워크

Vertex AI 기반 LangChain을 사용하면 Vertex AI에서 LangChain 조정 프레임워크를 사용할 수 있습니다. LangChain을 사용하여 애플리케이션이 얼마나 확률론적이어야 하는지 결정합니다.

이미 LangChain을 사용하고 있다면 기존 LangChain 코드를 사용하여 Vertex AI에 애플리케이션을 배포할 수 있습니다. 아니면 자체 애플리케이션 코드를 만들고 Vertex AI의 LangChain 템플릿을 활용하는 조정 프레임워크에서 이를 구조화할 수 있습니다.

자세한 내용은 애플리케이션 개발을 참조하세요.

관리형 런타임 Vertex AI 기반 LangChain을 사용하면 애플리케이션을 Reasoning Engine 관리형 런타임에 배포할 수 있습니다. 이 런타임은 Vertex AI 통합의 모든 이점(보안, 개인 정보 보호, 관측 가능성, 확장성)을 제공하는 Vertex AI 서비스입니다. API 호출로 애플리케이션을 프로덕션화하고 확장하여 로컬 테스트를 거친 프로토타입을 엔터프라이즈용 배포로 빠르게 전환할 수 있습니다. 자세한 내용은 애플리케이션 배포를 참조하세요.

도구, 커스텀 함수, Gemini와 같은 모델 위에 계층화하여 에이전트 기능을 사용하는 커스텀 생성형 AI 애플리케이션의 프로토타입을 제작하고 빌드하는 다양한 방법이 있습니다. 애플리케이션을 프로덕션으로 이동할 때는 에이전트와 기본 구성요소를 배포하고 관리하는 방법을 고려해야 합니다.

Vertex AI에서 LangChain 구성요소 사용의 목표는 Google에서 배포, 확장, 패키징, 버전 등을 처리하는 동안, 사용자가 커스텀 함수, 에이전트 동작, 모델 매개변수 등 가장 중요한 에이전트 기능의 측면에 집중하고 맞춤설정할 수 있도록 지원하는 것입니다. 스택의 하위 수준에서 작업하는 경우 원치 않게 더 많은 항목을 관리해야 할 수 있습니다. 스택의 상위 수준에서 작업하는 경우 원하는 만큼의 개발자 제어 권한을 갖지 못할 수 있습니다.

런타임에서 시스템 흐름

사용자가 쿼리를 작성하면 정의된 에이전트가 해당 쿼리를 LLM용 프롬프트 형식으로 지정합니다. LLM은 프롬프트를 처리하고 도구를 사용할지 여부를 결정합니다.

LLM이 도구를 사용하기로 선택하면 도구 호출에 사용할 이름과 매개변수를 사용하여 FunctionCall이 생성됩니다. 에이전트가 FunctionCall을 사용하여 도구를 호출하고 도구의 결과를 LLM에 다시 제공합니다. LLM에서 도구를 사용하지 않도록 선택하면 콘텐츠가 생성되고 에이전트가 사용자에게 이를 다시 릴레이합니다.

다음 다이어그램은 런타임에서 실행되는 시스템 흐름을 보여줍니다.

런타임에서 시스템 흐름 

생성형 AI 애플리케이션 만들기 및 배포

생성형 AI 애플리케이션을 빌드하는 워크플로는 다음과 같습니다.

단계 설명
1. 환경 설정 Google 프로젝트를 설정하고 Vertex AI SDK for Python의 최신 버전을 설치합니다.
2. 애플리케이션 개발 Reasoning Engine에 배포할 수 있는 LangChain 애플리케이션을 개발합니다.
3. 애플리케이션 배포 Reasoning Engine에 애플리케이션을 배포합니다.
4. 애플리케이션 사용 Reasoning Engine에 응답을 쿼리합니다.
5. 배포된 애플리케이션 관리 Reasoning Engine에 배포한 애플리케이션을 관리하고 삭제합니다.
6. (선택사항) 애플리케이션 템플릿 맞춤설정 새 애플리케이션의 템플릿을 맞춤설정합니다.

단계는 다음 다이어그램에 나와 있습니다.

생성형 AI 애플리케이션 만들기 및 배포 

다음 단계