Perplexity 통합

Perplexity 통합 (채팅/검색/임베딩)

Perplexity는 단순한 채팅 모델을 넘어서, 검색 기능을 에이전트에 바로 연결할 수 있는 통합을 제공해요. LangChain과 결합하면 채팅, 리트리버, 도구, 임베딩까지 한 번에 다룰 수 있어서 굉장히 쓸모가 많아요.

출처: 공식문서

Perplexity는 무제한 Pro Search, 업그레이드된 AI 모델, 무제한 파일 업로드, 이미지 생성, API 크레딧까지 갖춘 강력한 인터넷 검색 서비스예요. 이용 가능한 모델 목록은 공식 문서에서 확인할 수 있어요.

설치와 설정

Perplexity x LangChain 통합 패키지를 설치해요.

pip install langchain-perplexity

uv를 쓴다면 이렇게 추가할 수 있어요.

uv add langchain-perplexity

API 키는 Perplexity API 키 대시보드에서 발급받아 환경 변수 PERPLEXITY_API_KEY(또는 PPLX_API_KEY)로 설정해요. 자세한 내용은 Perplexity 시작 가이드를 참고하세요.

채팅 모델

다양한 Perplexity 사용 예시를 확인할 수 있어요.

from langchain_perplexity import ChatPerplexity

ChatPerplexityuse_responses_api=True를 넘기거나 tools=[{"type": "web_search"}]를 전달하면(이때 자동으로 활성화돼요) Perplexity Agent API를 타깃으로 삼을 수도 있어요. 자세한 내용과 예시는 채팅 페이지의 Agent API 지원을 참고하세요.

리트리버

PerplexitySearchRetriever를 사용하면 Perplexity Search API의 웹 검색 결과를 표준 리트리벌 파이프라인에서 Document 객체로 가져올 수 있어요.

from langchain_perplexity import PerplexitySearchRetriever

도구

Perplexity를 에이전트 도구로 사용해서, 에이전트가 Perplexity Search API에 접근하게 만들 수도 있어요.

PerplexitySearchResults

Perplexity Search API를 조회해 결과(제목, URL, 스니펫, 날짜, 마지막 업데이트)를 JSON 배열로 반환하는 도구예요.

from langchain_perplexity import PerplexitySearchResults

임베딩 모델

PerplexityEmbeddings를 사용하면 Perplexity Embeddings API로 임베딩을 생성할 수 있어요.

from langchain_perplexity import PerplexityEmbeddings

Deep Agents Code

Perplexity를 Deep Agents Code에서 일급(first-class) 프로바이더로 사용할 수 있어요.

Perplexity extra와 함께 Deep Agents Code를 설치하고,

uv tool install 'deepagents-code[perplexity]'

PERPLEXITY_API_KEY를 설정한 뒤, 인터랙티브한 /model 스위처나 config에서 perplexity: 접두사를 붙인 모델(예: perplexity:sonar-pro)을 참조하면 돼요.

컴포넌트 참조

클래스 추상화 Import 경로 설명
ChatPerplexity 채팅 모델 from langchain_perplexity import ChatPerplexity 근거 기반 채팅 완성을 위해 Perplexity API를 감싸는 채팅 모델
PerplexitySearchRetriever 리트리버 from langchain_perplexity import PerplexitySearchRetriever Perplexity Search API에서 Document 객체를 반환하는 리트리버
PerplexitySearchResults 도구 from langchain_perplexity import PerplexitySearchResults 에이전트를 위해 Perplexity Search API 결과를 JSON 배열로 반환하는 도구
PerplexityEmbeddings 임베딩 from langchain_perplexity import PerplexityEmbeddings Perplexity Embeddings API를 감싸는 임베딩 모델

더 알아보기 (Learn more)