For the complete documentation index, see llms.txt. This page is also available as Markdown.

Perception Encoder

Dedicated Deployment 또는 자체 호스팅 Inference에서 이미지 및 텍스트 임베딩을 계산하기 위해 Meta의 Perception Encoder를 사용하세요.

Perception Encoder는 Meta의 비전-언어 임베딩 모델입니다. 이미지를 텍스트와 함께 공유 임베딩 공간으로 매핑하여 유사도 검색, 제로샷 분류, 검색에 사용됩니다.

Perception Encoder는 Serverless Cloud API에서 사용할 수 없습니다. 다음에서 실행하세요 전용 배포 또는 자가 호스팅 추론.

Perception Encoder 엔드포인트는 세 가지를 지원합니다:

  • /perception_encoder/embed_image - 이미지를 임베드

  • /perception_encoder/embed_text - 문자열을 임베드

  • /perception_encoder/compare - 이미지와 텍스트 프롬프트 목록 간의 유사도를 계산

코드 예시

1

API 키 받기

Roboflow 계정을 만들고, 다음에서 키를 찾으세요. Roboflow API 설정 페이지 에서 다음과 같이 셸에서 사용할 수 있도록 합니다:

export ROBOFLOW_API_KEY="your-key-here"
2

의존성 설치

이 패키지들은 이미지를 가져와 API를 호출합니다:

pip install -U requests opencv-python supervision
3

모델 실행

아래 샘플은 이미지를 다음으로 전송합니다 /perception_encoder/embed_image 그리고 임베딩의 모양을 출력합니다. 다음을 설정하세요 URL 전용 배포 URL 또는 로컬 Inference 서버로.

import base64
import os
import cv2
import requests
import supervision as sv

URL = "https://your-deployment.roboflow.cloud"

image = sv.load_image_from_url("https://media.roboflow.com/notebooks/examples/dog.jpeg")

_, buffer = cv2.imencode(".jpg", image)
image_base64 = base64.b64encode(buffer).decode("utf-8")

response = requests.post(
    f"{URL}/perception_encoder/embed_image",
    json={
        "api_key": os.environ["ROBOFLOW_API_KEY"],
        "image": {"type": "base64", "value": image_base64},
    },
)
result = response.json()
embedding = result["embeddings"][0]
print(f"임베딩 길이: {len(embedding)}")
print(f"첫 번째 값들: {embedding[:5]}")

위 코드는 터미널에 임베딩의 모양을 출력합니다:

임베딩 길이: 1024
첫 번째 값들: [0.0545, -0.0338, -0.0355, -0.0062, 0.0154]

추론 속도

지연 시간 측정 기준: Roboflow Inference 1x NVIDIA L4, 배치 크기 1에서 워밍업 후 평균값.

모델
지연 시간(ms)

perception-encoder

25.2

측정 기준 embed_image 에서 PE-Core-L14-336 체크포인트(이미지 임베딩만).

설정 URL 를 배포 대상에 맞게:

Inference(자가 호스팅)에서 사용

Perception Encoder는 다음을 통해 직접 로드할 수 있습니다: inference 패키지를 사용하면 로컬에서 많은 이미지나 비디오 프레임을 임베딩할 때 가장 빠른 방법입니다.

1

패키지를 설치하세요

사용 inference-gpu[transformers] GPU 머신에서.

2

로컬에서 임베드 및 비교

사용 가능한 체크포인트

model_id 백본을 선택합니다:

  • perception_encoder/PE-Core-B16-224

  • perception_encoder/PE-Core-L14-336

  • perception_encoder/PE-Core-G14-448

CLIP 스타일 인터페이스만 지원됩니다. 언어 정렬 및 공간 정렬 Perception Encoder 변형은 아직 사용할 수 없습니다.

Perception Encoder는 다음과 같은 API 형식을 사용합니다 CLIP: embed_image, embed_text, 그리고 compare 동일한 인수를 사용하고 동일한 응답 형식을 반환하므로, CLIP에 맞춰 작성된 코드는 모델만 바꾸면 Perception Encoder에서 작동합니다.

Workflows에서 사용

Perception Encoder는 다음에서 사용할 수 있습니다 Workflows 다음을 통해 Perception Encoder 임베딩 모델 블록에서 코드 작성 없이 이미지 또는 텍스트 임베딩을 생성합니다.

마지막 업데이트

도움이 되었나요?