LangChain을 위한 LLMOps
Portkey는 LangChain에 프로덕션 준비 상태를 제공합니다. Portkey를 사용하면 다음을 수행할 수 있습니다:- 통합 API를 통해 150개 이상의 모델에 연결
- 모든 요청에 대한 42개 이상의 메트릭 및 로그 확인
- semantic cache를 활성화하여 지연 시간 및 비용 절감
- 실패한 요청에 대한 자동 재시도 및 fallback 구현
- 더 나은 추적 및 분석을 위해 요청에 custom tags 추가 및 더 많은 기능
Quickstart - Portkey & LangChain
Portkey는 OpenAI signature와 완전히 호환되므로ChatOpenAI 인터페이스를 통해 Portkey AI Gateway에 연결할 수 있습니다.
base_url을PORTKEY_GATEWAY_URL로 설정createHeaders헬퍼 메서드를 사용하여 Portkey에 필요한 헤더를 사용하도록default_headers추가
ChatOpenAI 모델을 업데이트하여 Portkey AI Gateway에 연결할 수 있습니다
provider로 라우팅됩니다. Portkey는 또한 계정의 모든 요청을 로깅하기 시작하여 디버깅을 매우 간단하게 만듭니다.
AI Gateway를 통해 150개 이상의 모델 사용하기
AI gateway의 강력함은 위의 코드 스니펫을 사용하여 AI gateway를 통해 지원되는 20개 이상의 제공업체에서 150개 이상의 모델에 연결할 수 있을 때 나타납니다. 위의 코드를 수정하여 Anthropic의claude-3-opus-20240229 모델을 호출해 보겠습니다.
Portkey는 **Virtual Keys**를 지원하며, 이는 보안 vault에서 API key를 저장하고 관리하는 쉬운 방법입니다. Virtual Key를 사용하여 LLM 호출을 시도해 보겠습니다. Portkey의 Virtual Keys 탭으로 이동하여 Anthropic용 새 키를 생성할 수 있습니다.
virtual_key 매개변수는 사용 중인 AI 제공업체의 인증 및 제공업체를 설정합니다. 우리의 경우 Anthropic Virtual key를 사용하고 있습니다.
해당 인증이 사용되지 않으므로 api_key는 비워둘 수 있습니다.
ChatOpenAI 클래스를 확장하여 모든 제공업체와 모든 모델을 호출할 수 있는 단일 인터페이스로 만듭니다.
고급 라우팅 - Load Balancing, Fallbacks, Retries
Portkey AI Gateway는 구성 우선 접근 방식을 통해 load-balancing, fallback, 실험 및 canary 테스트와 같은 기능을 LangChain에 제공합니다. 두 개의 대형 모델을 테스트하기 위해gpt-4와 claude-opus 간에 트래픽을 50:50으로 분할하려는 예제를 살펴보겠습니다. 이에 대한 gateway 구성은 다음과 같습니다:
gpt-4와 claude-3-opus-20240229에 요청을 분산합니다.
더 많은 config 예제는 여기에서 찾을 수 있습니다.
Chains & Agents 추적
Portkey의 LangChain 통합은 agent 실행에 대한 완전한 가시성을 제공합니다. 인기 있는 agentic workflow의 예를 살펴보겠습니다. 위와 같이 AI Gateway를 사용하도록ChatOpenAI 클래스만 수정하면 됩니다.
추가 문서는 여기에서 확인할 수 있습니다:
- Observability - portkey.ai/docs/product/observability-modern-monitoring-for-llms
- AI Gateway - portkey.ai/docs/product/ai-gateway-streamline-llm-integrations
- Prompt Library - portkey.ai/docs/product/prompt-library
Connect these docs programmatically to Claude, VSCode, and more via MCP for real-time answers.