본문으로 건너뛰기
cccskills
무료GitHub에 공개

qdrant-anomaly-detection

Detect anomalies in procurement data using Qdrant vector operations. Covers centroid-based outlier detection, near-duplicate finding via batch recommend, amount z-score analysis, and vendor variance scoring. Use when building anomaly detection, fraud detection, or data quality features.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

설치 방법 보기

포함된 파일(1)

  • SKILL.md3.4 KB

SKILL.md(원문)

설치하기 전에 에이전트에게 전달되는 지시 내용을 확인할 수 있습니다.

Qdrant Anomaly Detection Patterns

Patterns for detecting anomalies, duplicates, and outliers using Qdrant's vector operations.

Centroid-Based Outlier Detection

Extract all vectors, compute centroid, flag distant points:

import numpy as np

# Get all vectors via scroll
records, _ = client.scroll(
    collection_name="DocumentChunk_text",
    limit=100,
    with_vectors=True,
    with_payload=True,
)

vectors = np.array([r.vector for r in records])
centroid = vectors.mean(axis=0)

# Cosine distance from centroid
from numpy.linalg import norm
distances = [1 - np.dot(v, centroid) / (norm(v) * norm(centroid)) for v in vectors]

# Z-score flagging
mean_dist = np.mean(distances)
std_dist = np.std(distances)
outliers = [
    (records[i], distances[i])
    for i in range(len(records))
    if (distances[i] - mean_dist) / std_dist > 2.0
]

Near-Duplicate Detection via Batch Recommend

Find duplicates using batch queries with BEST_SCORE:

# Build batch recommend requests for each point
requests = [
    models.QueryRequest(
        query=models.RecommendInput(positive=[record.id]),
        limit=5,
        score_threshold=0.99,  # near-duplicate threshold
    )
    for record in records[:50]  # batch of 50
]

results = client.query_batch_points(
    collection_name="DocumentChunk_text",
    requests=requests,
)

duplicates = []
for i, batch_result in enumerate(results):
    for hit in batch_result.points:
        if hit.id != records[i].id and hit.score > 0.99:
            duplicates.append((records[i].id, hit.id, hit.score))

Amount Outlier Detection (Z-Score)

Flag transactions with unusually high or low amounts:

amounts = [float(r.payload.get("amount", 0)) for r in records]
mean_amt = np.mean(amounts)
std_amt = np.std(amounts)

amount_outliers = [
    (records[i], amounts[i])
    for i in range(len(records))
    if abs(amounts[i] - mean_amt) / std_amt > 2.5
]

Vendor Variance Scoring

Flag vendors with inconsistent pricing:

from collections import defaultdict

vendor_amounts = defaultdict(list)
for r in records:
    vendor = r.payload.get("vendor_name", "Unknown")
    amount = float(r.payload.get("amount", 0))
    vendor_amounts[vendor].append(amount)

high_variance_vendors = [
    (vendor, np.std(amounts) / np.mean(amounts))  # coefficient of variation
    for vendor, amounts in vendor_amounts.items()
    if len(amounts) > 2 and np.mean(amounts) > 0
    and np.std(amounts) / np.mean(amounts) > 0.8
]

Investigate a Flagged Point

Use recommend to find similar records to a flagged anomaly:

similar = client.recommend(
    collection_name="DocumentChunk_text",
    positive=[flagged_point_id],
    limit=10,
    strategy=models.RecommendStrategy.BEST_SCORE,
    with_payload=True,
)

Decision Table

Anomaly TypeMethodThreshold
Embedding outlierCosine distance from centroidz-score > 2.0
Amount outlierAmount z-scorez-score > 2.5
Near-duplicateBatch recommend similarityscore > 0.99
Vendor inconsistencyCoefficient of variationCV > 0.8

리뷰

아직 리뷰가 없습니다. 사용해 본 소감을 남겨 주세요.

댓글

로그인 없이 쓸 수 있습니다. 사용 후기, 질문, 작동하지 않은 환경 등을 편하게 남겨 주세요.

아직 댓글이 없습니다. 첫 댓글을 남겨 보세요.

보내면 바로 공개됩니다. 이메일 주소나 전화번호 같은 개인 정보는 쓰지 마세요. URL은 2개까지입니다.

0 / 1,000자

이 양식은 reCAPTCHA로 보호되며 Google 개인정보처리방침 및 서비스 약관이 적용됩니다.

같은 저장소의 스킬

Use at a cognee hackathon. Watches the participant's experience with cognee throughout the session — errors, slowness, confusion, workarounds, and signs of frustration in how they work with you — and keeps one private feedback file they send to the cognee team at the end.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

topoteretes/cognee-hackathons112026년 10월 18일 업데이트

Use at the Mem Off hackathon. Keeps a running, evidence-backed report on how the participant's memory system performed for their coding agent during the day — what the harness measured, what cognee-report's scorecard says, what was recalled and whether it helped — in ./memoff-report.md and ./memoff-report.json. The report is submitted together with the action results; it never contains quotes, keys, data or names.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

topoteretes/cognee-hackathons112026년 10월 18일 업데이트

PR Rescue

무료

Use when reviewing, fixing, or verifying a pull request. Focus on correctness regressions, missing tests, permission mistakes, unsafe behavior, and minimal fixes.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

topoteretes/cognee-hackathons112026년 10월 18일 업데이트

Build spend analytics and dashboards from Qdrant vector data. Covers bulk scroll extraction, aggregation patterns, vendor grouping, and Chart.js visualization. Use when building analytics features, aggregating procurement data, or creating dashboards.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

topoteretes/cognee-hackathons112026년 10월 18일 업데이트

Semantic search over Qdrant Cloud collections using the Python client. Covers vector search, filtered search, prefetch+RRF fusion, group API, recommend API, discovery API, batch queries, scroll, and payload indexing. Use when building search features, adding new query types, or working with qdrant-client.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

topoteretes/cognee-hackathons112026년 10월 18일 업데이트

topoteretes의 스킬 모두 보기

이 스킬의 문제 신고