문서
엣지 & 그래프
버킷 내 벡터 간 타입이 지정된 가중치 관계를 관리하여 지식 그래프를 구축합니다.
Edge API는 노드(벡터) 간 타입이 지정된 가중치 관계를 추가하여 플랫 벡터 버킷을 지식 그래프로 전환합니다. 인용, 계층 구조, 인과 관계, 상충 관계를 모델링할 수 있습니다.
엣지 추가
bashPOST /v1/buckets/{bucket_id}/edges| 필드 | 타입 | 기본값 | 설명 |
|---|---|---|---|
edges | EdgeInput[] | -- | 추가할 엣지 배열 (최대 10,000개) |
edges[].source | string | -- | 소스 노드(벡터) ID |
edges[].target | string | -- | 타겟 노드(벡터) ID |
edges[].relation | string | related_to | 관계 타입 |
edges[].weight | float | 1.0 | 엣지 가중치 (0.0 ~ 1.0) |
사용 가능한 관계 타입: contradicts, supersedes, caused_by, is_a, related_to, has_child, follows.
bashcurl -X POST https://api.schift.io/v1/buckets/{bucket_id}/edges \
-H "Content-Type: application/json" \
-H "Authorization: Bearer $SCHIFT_API_KEY" \
-d '{
"edges": [
{"source": "doc-1", "target": "doc-2", "relation": "supersedes"},
{"source": "doc-3", "target": "doc-1", "relation": "contradicts", "weight": 0.9}
]
}'엣지 조회
bashGET /v1/buckets/{bucket_id}/edges/{node_id}| 쿼리 파라미터 | 타입 | 기본값 | 설명 |
|---|---|---|---|
direction | string | both | outgoing, incoming, 또는 both |
relation | string | -- | 관계 타입으로 필터링 |
bash# 노드의 모든 엣지
curl https://api.schift.io/v1/buckets/{bucket_id}/edges/doc-1 \
-H "Authorization: Bearer $SCHIFT_API_KEY"
# outgoing supersedes 엣지만 조회
curl "https://api.schift.io/v1/buckets/{bucket_id}/edges/doc-1?direction=outgoing&relation=supersedes" \
-H "Authorization: Bearer $SCHIFT_API_KEY"엣지 삭제
bashDELETE /v1/buckets/{bucket_id}/edgesbashcurl -X DELETE https://api.schift.io/v1/buckets/{bucket_id}/edges \
-H "Content-Type: application/json" \
-H "Authorization: Bearer $SCHIFT_API_KEY" \
-d '{"source": "doc-1", "target": "doc-2", "relation": "supersedes"}'