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

캐시 가져오기

캐시 항목에서 이전에 저장된 값을 가져옵니다.

이미지의 비디오 식별자를 네임스페이스로 사용하여 이전에 메모리 캐시에 키로 저장된 값을 검색합니다. 이를 통해 워크플로 단계 간 데이터 공유, 중간 결과 캐싱, 그리고 동일한 워크플로 실행 컨텍스트 내에서 중복 계산을 방지할 수 있습니다.

이 블록의 작동 방식

이 블록은 Cache Set 블록을 사용해 이전에 저장된 메모리 캐시에서 값을 가져옵니다. 이 블록은 다음을 수행합니다:

  1. 이미지와 캐시 키를 받습니다:

    • 캐시 네임스페이스를 결정하기 위해 입력 이미지를 받습니다

    • 가져올 값을 식별하는 캐시 키(문자열)를 받습니다

  2. 캐시 네임스페이스를 결정합니다:

    • 이미지의 비디오 메타데이터에서 비디오 식별자를 추출합니다

    • 비디오 식별자를 캐시 네임스페이스로 사용합니다(비디오/스트림별로 캐시 항목을 분리함)

    • 비디오 식별자가 없으면 "default" 네임스페이스를 사용합니다

  3. 캐시된 값을 조회합니다:

    • 결정된 네임스페이스의 메모리 내 캐시 딕셔너리에 접근합니다

    • 캐시에서 지정된 키를 검색합니다

    • 찾으면 캐시된 값을 반환하고, 키가 없으면 False를 반환합니다

  4. 검색된 값을 반환합니다:

    • 캐시된 값을 출력합니다(문자열, 숫자, 리스트, 감지 결과 등 어떤 데이터 타입이든 가능함)

    • 캐시에서 키를 찾지 못하면 False를 반환합니다

    • 출력 타입은 Cache Set으로 원래 저장된 값과 일치합니다

캐시는 비디오 식별자별로 네임스페이스가 지정되므로, 서로 다른 비디오나 스트림은 별도의 캐시 저장소를 가집니다. 이를 통해 여러 비디오를 처리하는 워크플로에서 각 비디오별로 별도의 캐시를 유지할 수 있습니다. 캐시는 메모리에 저장되며, 워크플로 실행이 완료되거나 블록이 제거되면 지워집니다. Cache Get은 Cache Set과 함께 사용해야 합니다. 값은 Cache Set으로 저장되고, 동일한 키와 네임스페이스(동일한 비디오 식별자로 결정됨)를 사용한 Cache Get으로 검색됩니다.

일반적인 사용 사례

  • 단계 간 공유 상태: 워크플로의 한 단계에 중간 결과를 저장하고 다른 단계에서 이를 검색합니다(예: 나중 분석을 위해 감지 결과 저장, 필터링을 위해 분류 예측 캐싱, 블록 간 메타데이터 공유). 이를 통해 상태 공유 워크플로를 활성화합니다

  • 중복 계산 방지: 비용이 큰 계산 결과를 캐시하고 여러 워크플로 단계에서 재사용합니다(예: 모델 예측 캐싱, 처리된 이미지 저장, 변환 결과 재사용). 이를 통해 계산 캐싱 워크플로를 활성화합니다

  • 비디오 프레임 컨텍스트: 프레임별 데이터를 저장하여 비디오 프레임 전반에 걸쳐 컨텍스트를 유지합니다(예: 이전 프레임 감지 결과 캐싱, 프레임 시퀀스 메타데이터 저장, 추적 상태 유지). 이를 통해 프레임 컨텍스트 워크플로를 활성화합니다

  • 조건부 워크플로 로직: 이후 단계의 워크플로 실행을 제어하는 결정 결과나 플래그를 저장합니다(예: 필터링 결정 캐싱, 검증 결과 저장, 워크플로 상태 유지). 이를 통해 조건부 실행 워크플로를 활성화합니다

  • 데이터 집계: 값을 캐시에 저장하고 검색/업데이트함으로써 워크플로 단계 전반에 걸쳐 데이터를 누적합니다(예: 감지 개수 집계, 통계 누적, 결과 컬렉션 생성). 이를 통해 데이터 집계 워크플로를 활성화합니다

  • 임시 저장소: 워크플로 그래프를 거치지 않고 여러 워크플로 단계에서 접근해야 하는 값을 위한 임시 저장소로 캐시를 사용합니다(예: 단계 간 데이터 저장, 임시 상태 유지, 비선형 워크플로 데이터 공유). 이를 통해 임시 저장소 워크플로를 활성화합니다

다른 블록에 연결하기

이 블록은 캐시된 값을 검색하며 워크플로 전반에서 사용할 수 있습니다:

  • Cache Set 블록 후 이전에 저장된 값을 검색하기 위해(예: 저장된 감지 결과 검색, 캐시된 예측 가져오기, 저장된 메타데이터 접근). 이를 통해 캐시 검색 워크플로를 활성화합니다

  • 워크플로 분기에서 병렬 또는 조건부 실행 경로에서 공유 캐시 값에 접근하기 위해(예: 공유 상태 검색, 캐시된 결과 접근, 공통 데이터 가져오기). 이를 통해 분기 조정 워크플로를 활성화합니다

  • 캐시된 데이터가 필요한 블록 앞에서 캐시된 값을 입력으로 제공하기 위해(예: 캐시된 감지 결과를 분석에 제공, 필터링에 캐시된 예측 사용, 처리에 캐시된 메타데이터 전달). 이를 통해 캐시 입력 워크플로를 활성화합니다

  • 조건부 로직 워크플로에서 Cache Set에 저장된 플래그나 결정을 검색하기 위해(예: 캐시된 검증 결과 가져오기, 결정 플래그 검색, 조건 상태 접근). 이를 통해 조건부 로직 워크플로를 활성화합니다

  • 비디오 처리 워크플로와 함께 프레임별 또는 비디오별 캐시 네임스페이스를 유지하기 위해(예: 프레임 컨텍스트 검색, 비디오별 캐시 접근, 스트림별 데이터 가져오기). 이를 통해 비디오 컨텍스트 워크플로를 활성화합니다

  • 출력 또는 싱크 블록 앞에서 최종 결과에 캐시된 데이터를 포함하기 위해(예: 캐시된 집계 포함, 캐시된 통계 출력, 캐시된 결과 반환). 이를 통해 출력 워크플로를 활성화합니다

요구 사항

이 블록은 저장된 값을 조회하기 위해 입력 이미지(비디오 식별자를 통해 캐시 네임스페이스를 결정하는 데 사용됨)와 캐시 키(문자열)를 필요로 합니다. 이 블록은 LOCAL 실행 모드에서만 동작하며, 다른 실행 모드에서 사용하면 NotImplementedError를 발생시킵니다. 값은 동일한 키와 네임스페이스(동일한 비디오 식별자)를 사용하여 Cache Set 블록으로 이전에 저장되어 있어야 합니다. 캐시는 메모리에 저장되며 워크플로 실행이 완료되면 자동으로 지워집니다. 캐시는 비디오 식별자별로 네임스페이스가 지정되므로 서로 다른 비디오에는 별도의 캐시 저장소가 있습니다. 캐시에서 키를 찾지 못하면 블록은 False를 반환합니다. 캐시된 값은 원래 저장된 내용에 따라 문자열, 숫자, 리스트, 감지 결과, 이미지 등 어떤 데이터 타입이든 될 수 있습니다.

유형 식별자

단계에서 다음 식별자를 사용하세요 "type" 필드: roboflow_core/cache_get@v1 워크플로우에 이 블록을 단계로 추가하려면.

속성

이름

유형

설명

참조

name

str

이 단계에 대한 고유 식별자를 입력하세요..

str

캐시에서 어떤 값을 가져올지 식별하는 캐시 키(문자열)입니다. 이 키는 Cache Set 블록으로 값을 저장할 때 사용한 키와 일치해야 합니다. 캐시에 키가 없으면 블록은 False를 반환합니다. 키는 대소문자를 구분하며 정확히 일치해야 합니다. 서로 다른 캐시 값을 식별하기 위해 설명적인 키를 사용하세요(예: 'detections', 'classification_result', 'frame_metadata')..

참조 열은 워크플로우 런타임에서 사용 가능한 동적 값으로 속성을 매개변수화할 수 있는 가능성을 나타냅니다 워크플로우 런타임입니다. 자세한 내용은 바인딩 을 참조하세요.

런타임 호환성

하드 - 실행 원격 : 캐시 블록은 LOCAL 워크플로 단계 실행만 지원하며, 원격 단계 실행은 NotImplementedError를 발생시킵니다.

입력 및 출력 바인딩

사용 가능한 연결은 바인딩 유형에 따라 달라집니다. 어떤 바인딩 유형인지 확인하세요 캐시 가져오기 버전 v1 을 가지고 있는지.

입력 및 출력 바인딩
  • 입력

    • 이미지 (이미지): 캐시 네임스페이스를 결정하는 데 사용되는 입력 이미지입니다. 이 블록은 이미지의 비디오 메타데이터에서 비디오 식별자를 추출하여 캐시 네임스페이스로 사용합니다. 비디오 식별자가 없으면 블록은 네임스페이스로 'default'를 사용합니다. 네임스페이스는 캐시 항목을 분리하므로 서로 다른 비디오나 스트림은 별도의 캐시 저장소를 갖습니다. 동일한 캐시 네임스페이스에 접근하려면 Cache Set과 Cache Get 블록 모두에 동일한 이미지(동일한 비디오 식별자 포함)를 사용하세요..

    • (string): 캐시에서 어떤 값을 가져올지 식별하는 캐시 키(문자열)입니다. 이 키는 Cache Set 블록으로 값을 저장할 때 사용한 키와 일치해야 합니다. 캐시에 키가 없으면 블록은 False를 반환합니다. 키는 대소문자를 구분하며 정확히 일치해야 합니다. 서로 다른 캐시 값을 식별하기 위해 설명적인 키를 사용하세요(예: 'detections', 'classification_result', 'frame_metadata')..

  • 출력

    • 출력 (*): 어떤 요소와도 동일한 값.

예시 JSON 정의

마지막 업데이트

도움이 되었나요?