Zep 빠른 시작 — SDK 설치와 세 줄 API
Zep 빠른 시작
Zep을 몇 분 안에 붙이는 흐름을 볼게요. 파이썬 프로젝트(가급적 가상환경)를 준비하고 SDK를 설치한 뒤, 사용자와 스레드를 만들고 데이터를 넣고 컨텍스트를 가져오는 순서예요.
SDK 설치
pip install zep-cloud
Python·TypeScript·Go SDK를 제공해요. TypeScript는 다른 설치 방법을 쓰고, Go SDK도 있으니 문서를 참고해요.
클라이언트 초기화
Zep 계정을 만들고 API 키를 발급받아 환경변수로 설정한 뒤, 앱 시작 시 한 번 초기화하고 계속 재사용해요.
from zep_cloud.client import Zep
client = Zep(api_key=API_KEY)
# You can choose any user ID, but we recommend using your internal user ID
user_id = "your_internal_user_id"
new_user = client.user.add(
user_id=user_id,
email="[email protected]",
first_name="Jane",
last_name="Smith",
)
예제 이메일이라 직접 쓸 때는 실제 값을 넣어야 해요.
스레드 생성
사용자가 에이전트와 새 대화를 시작할 때마다 해당 사용자의 스레드를 만들어요. 스레드는 사용자의 사용자 그래프에 기록되고, 기본적으로 그 사용자의 모든 스레드에 추가된 메시지는 사용자 그래프로 들어가요.
데이터 넣기 (그래프에 에피소드 추가)
비즈니스 이벤트나 메시지를 그래프에 넣는 예시예요.
from zep_cloud.client import Zep
import json
client = Zep(api_key=API_KEY)
# Example: User listened to a song in your application
event_data = {
"user_id": "user123",
"user_name": "Jane Smith",
"event_type": "song_played",
"song_title": "Bohemian Rhapsody",
"artist": "Queen",
"duration_seconds": 354
}
client.graph.add(
user_id="user123",
type="json",
data=json.dumps(event_data)
)
컨텍스트 블록 조회
AI 응답을 생성하기 전에 thread.get_user_context()로 컨텍스트 블록을 가져와요. 기본 컨텍스트 블록은 의미 검색(semantic search), 전문 검색(full text search), 너비 우선 검색(breadth first search)을 결합해 사용자 메시지에 가장 관련 있는 정보를 조립해 줘요.
커스텀 컨텍스트 템플릿을 만들고 싶다면 thread.get_user_context()에 template_id를 넘기면 돼요.