

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

# FT.CREATE
<a name="vector-search-commands-ft.create"></a>

`FT.CREATE` 명령은 빈 인덱스를 생성하고 채우기 프로세스를 시작합니다. 각 인덱스는 여러 필드 정의로 구성됩니다. 각 필드 정의는 필드 이름, 필드 유형 및 각 인덱싱된 키 내의 경로를 지정하여 선언된 유형의 값을 찾습니다. 일부 필드 유형 정의에는 추가 하위 유형 지정자가 있습니다.

HASH 키의 인덱스의 경우 경로는 해시 멤버 이름과 동일합니다. 원하는 경우 선택적 `AS`절을 사용하여 필드의 이름을 바꿀 수 있습니다. 필드 이름을 바꾸는 것은 멤버 이름에 특수 문자가 포함된 경우에 특히 유용합니다.

JSON 키의 인덱스의 경우 경로는 선언된 유형의 데이터에 대한 JSON 경로입니다. JSON 경로에는 항상 특수 문자가 포함되어 있으므로 `AS`절이 필요합니다.

**구문**

```
FT.CREATE <index-name>
ON HASH | JSON
[PREFIX <count> <prefix1> [<prefix2>...]]
SCHEMA 
(<field-identifier> [AS <alias>] 
| VECTOR [HNSW|FLAT] <attr_count> [<attribute_name> <attribute_value>])
| TAG [SEPARATOR <sep>] [CASESENSITIVE] 
| NUMERIC 
)+
```

**<index-name>(필수):** 인덱스에 지정한 이름입니다. 동일한 이름의 인덱스가 이미 있는 경우 오류가 반환됩니다.

**ON HASH \$1 JSON(선택 사항):** 지정된 유형과 일치하는 키만 이 인덱스에 포함됩니다. 생략하면 HASH가 가정됩니다.

**PREFIX <prefix-count> <prefix>(선택 사항):** 이 절을 지정하면 지정된 접두사 중 하나 이상과 동일한 바이트로 시작하는 키만 이 인덱스에 포함됩니다. 이 절을 생략하면 올바른 유형의 모든 키가 포함됩니다. 길이가 0인 접두사는 올바른 유형의 모든 키와도 일치합니다.

**필드 유형:**
+ TAG: 태그 필드는 하나 이상의 태그 값을 포함하는 문자열입니다.
  + SEPARATOR <sep>(선택 사항): 개별 태그를 구분하는 데 사용되는 `,.<>{}[]"':;!@#$%^&*()-+=~` 문자 중 하나입니다. 생략 시 기본값은 `,`입니다.
  + CASESENSITIVE(선택 사항): 있는 경우 태그 비교는 대/소문자를 구분합니다. 기본값은 태그 비교는 대/소문자를 구분하지 않는다는 것입니다.
+ NUMERIC: 숫자 필드에는 숫자가 포함됩니다.
+ VECTOR: 벡터 필드에는 벡터가 포함됩니다. 현재 HNSW(Hierarchical Navigable Small World)와 FLAT(brute force)라는 두 가지 벡터 인덱싱 알고리즘이 지원됩니다. 각 알고리즘에는 추가 속성 세트가 있으며, 그 중 몇 가지는 필수이고 나머지는 선택 사항입니다.
  + FLAT: Flat 알고리즘은 정확한 답변을 제공하지만 인덱싱된 벡터 수에 비례하여 런타임이 있으므로 대규모 데이터세트에 적합하지 않을 수 있습니다.
    + DIM <number>(필수): 벡터의 차원 수를 지정합니다.
    + TYPE FLOAT32(필수): 데이터 형식, 현재 FLOAT32만 지원됩니다.
    + DISTANCE\$1METRIC [L2 \$1 IP \$1 COSINE](필수): 거리 알고리즘을 지정합니다.
    + INITIAL\$1CAP <size>(선택 사항): 초기 인덱스 크기입니다.
  + HNSW: HNSW 알고리즘은 대략적인 답변을 제공하지만 FLAT보다 훨씬 빠르게 작동합니다.
    + DIM <number>(필수): 벡터의 차원 수를 지정합니다.
    + TYPE FLOAT32(필수): 데이터 형식, 현재 FLOAT32만 지원됩니다.
    + DISTANCE\$1METRIC [L2 \$1 IP \$1 COSINE](필수): 거리 알고리즘을 지정합니다.
    + INITIAL\$1CAP <size>(선택 사항): 초기 인덱스 크기입니다.
    + M <number>(선택 사항): 각 계층의 그래프에 있는 각 노드에 허용되는 최대 발신 엣지 수입니다. 계층 0에서 발신 엣지의 최대 수는 2\$1M입니다. 기본값은 16이고 최댓값은 512입니다.
    + EF\$1CONSTRUCTION <number>(선택 사항): 인덱스 생성 중에 검사되는 벡터 수를 제어합니다. 이 파라미터의 값이 높을수록 인덱스 생성 시간이 길어지는 대신 재현율이 향상됩니다. 기본값은 200입니다. 최대값은 4,096입니다.
    + EF\$1RUNTIME <number>(선택 사항): 쿼리 작업 중에 검사할 벡터 수를 제어합니다. 기본값은 10이고 최댓값은 4096입니다. 실행하는 각 쿼리에 대해 이 파라미터 값을 설정할 수 있습니다. 값이 높을수록 쿼리 시간이 늘어나지만 쿼리 재현율은 향상됩니다.

**RESPONSE:** OK 또는 오류입니다.