NLP를 배포하는 방법: 텍스트 임베딩 및 벡터 검색

illustration-industries-retail.png

자연어 처리(Natural Language Processing, NLP) 블로그 시리즈의 일환으로, 텍스트 임베딩 모델을 사용하여 텍스트 콘텐츠의 벡터 표현을 생성하고 생성된 벡터에 대한 벡터 유사성 검색을 시연하는 예를 살펴보려고 합니다. Elasticsearch에서 공개적으로 사용 가능한 모델을 배포하고 이를 수집 파이프라인에서 사용하여 텍스트 문서에서 임베딩을 생성해 보겠습니다. 그런 다음, 벡터 유사성 검색에서 이러한 임베딩을 사용하여 해당 쿼리에 대해 의미론적으로 유사한 문서를 찾는 방법을 보여드리겠습니다.

벡터 유사성 검색 또는 일반적으로 시맨틱 검색(의미 기반 검색)이라고 하는 것은 전통적인 키워드 기반 검색을 넘어 공통 키워드가 없을 수 있지만 의미론적으로 유사한 문서를 사용자가 찾을 수 있도록 하여 더 넓은 범위의 결과를 제공합니다. 벡터 유사성 검색은 밀집 벡터에 대해 작동하며 유사한 벡터를 찾기 위해 k-최근접 유사 항목 탐색을 사용합니다. 이를 위해, 텍스트 형식의 콘텐츠를 먼저 텍스트 임베딩 모델을 사용하여 숫자 벡터 표현으로 변환해야 합니다.

시연을 위해, 우리는 MS MARCO 단락 순위화 작업의 공개 데이터 세트를 사용하겠습니다. 이것은 Microsoft Bing 검색 엔진의 실제 질문들과 이 질문들에 대해 인간이 생성한 답변들로 이루어집니다. 이 데이터 세트는 벡터 유사성 검색을 테스트하는 데 완벽한 리소스입니다. 첫째, 질문-답변은 벡터 검색에 대한 가장 일반적인 사용 사례 중 하나이기 때문입니다. 둘째, MS MARCO 리더보드의 상위 논문은 어떤 형태로든 벡터 검색을 사용합니다.

이 예제에서는 이 데이터 세트의 샘플로 작업하고, 모델을 사용하여 텍스트 임베딩을 생성한 다음, 이에 대해 벡터 검색을 실행하게 됩니다. 벡터 검색에서 생성된 결과의 품질에 대한 빠른 검증도 할 수 있기를 바랍니다.

1. 텍스트 임베딩 모델 배포

첫 번째 단계는 텍스트 임베딩 모델을 설치하는 것입니다. 우리 모델의 경우, Hugging Facemsmarco-MiniLM-L-12-v3을 사용합니다. 이것은 문장이나 단락을 가져와서 384차원의 밀집 벡터에 이를 매핑하는 Sentence Transformer 모델입니다. 이 모델은 시맨틱 검색에 최적화되었으며 MS MARCO Passage 데이터 세트에 대해 특별히 훈련되어 우리의 작업에 적합합니다. 이 모델 외에도 Elasticsearch는 텍스트 임베딩을 위한 여러 다른 모델을 지원합니다. 전체 목록은 여기에서 찾아보실 수 있습니다.

우리는 NER 예에서 구축한 Eland Docker 에이전트로 모델을 설치합니다. 아래 스크립트를 실행하면 우리 모델을 로컬 클러스터로 가져와 이를 배포합니다.

eland_import_hub_model \
  --url https://<user>:<password>@localhost:9200/ \
  --hub-model-id sentence-transformers/msmarco-MiniLM-L-12-v3 \
  --task-type text_embedding \
  --start

이번에는 --task-typetext_embedding으로 설정되고 --start 옵션이 Eland 스크립트로 전달되어 모델이 모델 관리 UI에서 시작할 필요 없이 자동으로 배포됩니다. 추론 속도를 높이기 위해, inference_threads 매개 변수를 사용하여 추론 스레드 수를 늘릴 수 있습니다.

Kibana 콘솔에서 다음 예를 사용하여 모델의 성공적인 배포를 테스트할 수 있습니다.

POST /_ml/trained_models/sentence-transformers__msmarco-minilm-l-12-v3/deployment/_infer
{
  "docs": {
    "text_field": "how is the weather in jamaica"
  }
}

예측된 밀집 벡터가 테스트 결과로 나와야 합니다.

{
  "predicted_value" : [
    0.3345310091972351,
    -0.305600643157959,
    0.2592800557613373,
    …
  ]
}

2. 초기 데이터 로딩

서론에서 언급했듯이, 우리는 MS MARCO 단락 순위화 데이터 세트를 사용합니다. 데이터 세트는 꽤 크며, 800만 개가 넘는 단락으로 이루어져 있습니다. 우리 예제의 경우, 2019 TREC 딥 러닝 트랙의 테스트 단계에서 사용된 그 하위 집합을 사용합니다. 재순위화 작업에 사용되는 dataset msmarco-passagetest2019-top1000.tsv에는 200개의 쿼리와 각 쿼리에 대해 간단한 IR 시스템에서 추출된 관련 텍스트 단락 목록이 포함되어 있습니다. 해당 데이터 세트에서 모든 고유한 단락을 그 ID와 함께 추출하여 개별적인 tsv 파일에 저장했는데, 단락은 총 182469개입니다. 이 파일을 우리의 데이터 세트로 사용합니다.

우리는 Kibana의 파일 업로드 기능을 사용하여 이 데이터 세트를 업로드합니다. Kibana 파일 업로드를 통해 필드에 대한 사용자 정의 이름을 제공할 수 있습니다. 단락 id의 경우, long 데이터 유형을 가진 id로, 단락 콘텐츠의 경우, text 데이터 유형을 가진 text로 부르겠습니다. 인덱스 이름은 collection입니다. 업로드를 한 후에, 182469개의 문서가 있는 collection이라는 인덱스를 볼 수 있습니다.

스크린샷

3. 파이프라인 생성

각 단락에 임베딩을 추가할 추론 프로세서로 초기 데이터를 처리하려고 합니다. 이를 위해, 텍스트 임베딩 수집 파이프라인을 만든 다음 이 파이프라인을 사용하여 초기 데이터를 재색인합니다.

Kibana 콘솔에서 (이전 블로그 포스팅에서처럼) 수집 파이프라인을 만드는데, 이번에는 텍스트 임베딩을 위한 수집 파이프라인을 만들고 이를 text-embeddings라고 부릅니다. 이 단락들은 text라는 필드에 있습니다. 이전과 마찬가지로, field_map을 정의하여 모델이 예상하는 text_field 필드에 텍스트를 매핑하겠습니다. 마찬가지로 on_failure 핸들러는 다음과 같이 실패를 다른 인덱스로 인덱싱하도록 설정됩니다.

PUT _ingest/pipeline/text-embeddings
{
  "description": "Text embedding pipeline",
  "processors": [
    {
      "inference": {
        "model_id": "sentence-transformers__msmarco-minilm-l-12-v3",
        "target_field": "text_embedding",
        "field_map": {
          "text": "text_field"
        }
      }
    }
  ],
  "on_failure": [
    {
      "set": {
        "description": "Index document to 'failed-<index>'",
        "field": "_index",
        "value": "failed-{{{_index}}}"
      }
    },
    {
      "set": {
        "description": "Set error message",
        "field": "ingest.failure",
        "value": "{{_ingest.on_failure_message}}"
      }
    }
  ]
}

4. 데이터 재색인

text-embeddings 파이프라인을 통해 문서를 푸시하여 collection 인덱스에서 새로운 collection-with-embeddings로 문서를 재색인하고 collection-with-embeddings 인덱스에 있는 문서가 단락의 임베딩을 위한 추가 필드를 갖도록 하려고 합니다. 그러나 그렇게 하기 전에, 대상 인덱스에 대한 매핑, 특히 수집 프로세서가 임베딩을 저장할 text_embedding.predicted_value 필드에 대한 매핑을 생성하고 정의해야 합니다. 그렇게 하지 않으면, 임베딩이 일반 float 필드로 색인되어 벡터 유사성 검색에 사용될 수 없습니다. 우리가 사용하는 모델은 임베딩을 384차원 벡터로 생성하므로, 다음과 같이 384차원의 색인된 dense_vector 필드 유형을 사용합니다.

PUT collection-with-embeddings
{
  "mappings": {
    "properties": {
      "text_embedding.predicted_value": {
        "type": "dense_vector",
        "dims": 384,
        "index": true,
        "similarity": "cosine"
      },
      "text": {
        "type": "text"
      }
    }
  }
}

마침내, 재색인을 할 준비가 되었습니다. 재색인이 모든 문서를 처리하고 추론하는 데 다소 시간이 걸릴 것을 감안하여, wait_for_completion=false 플래그로 API를 호출하여 백그라운드에서 재색인을 수행합니다.

POST _reindex?wait_for_completion=false
{
  "source": {
    "index": "collection"
  },
  "dest": {
    "index": "collection-with-embeddings",
    "pipeline": "text-embeddings"
  }
}

위와 같이 하면 작업 ID를 반환합니다. 다음 명령을 통해 작업 진행률을 모니터링할 수 있습니다.

GET _tasks/<task_id>

또는 모델 통계 API 또는 모델 통계 UI에서 추론 횟수가 증가하는 것을 관찰하여 진행 상황을 추적합니다.

재색인된 문서는 이제 벡터 임베딩이라는 추론 결과를 포함합니다. 예를 들어, 문서 중 하나는 다음과 같습니다.

{
    "id": "G7PPtn8BjSkJO8zzChzT",
    "text": "This is the definition of RNA along with examples of types of RNA molecules. This is the definition of RNA along with examples of types of RNA molecules. RNA Definition",
    "text_embedding":
    {
     "predicted_value":
        [
            0.057356324046850204,
            0.1602816879749298,
            -0.18122544884681702,
            0.022277727723121643,
            ....
        ],
        "model_id": "sentence-transformers__msmarco-minilm-l-12-v3"
    }
}

5. 벡터 유사성 검색

현재 우리는 검색 요청 중에 쿼리 용어로 임베딩의 암시적 생성을 지원하지 않으므로, 시맨틱 검색은 다음의 2단계 프로세스로 구성됩니다.

  1. 텍스트 쿼리에서 텍스트 임베딩을 가져옵니다. 이를 위해 모델의 _infer API를 사용합니다.
  2. 벡터 검색을 사용하여 의미론적으로 쿼리 텍스트와 유사한 문서를 찾습니다. Elasticsearch v8.0에서는 색인된 dense_vector 필드에 대해 효율적인 최근접 유사 항목(ANN) 검색을 가능하게 하는 새로운 _knn_search 엔드포인트를 도입했습니다. 우리는 가장 가까운 문서를 찾기 위해 _knn_search API를 사용합니다.

예를 들어, "how is the weather in jamaica"라는 텍스트 쿼리를 제공하고, 먼저 _infer API를 실행하여 그 임베딩을 밀집 벡터로 가져옵니다.

POST /_ml/trained_models/sentence-transformers__msmarco-minilm-l-12-v3/deployment/_infer
{
  "docs": {
    "text_field": "how is the weather in jamaica"
  }
}

그런 다음, 다음과 같이 그 결과 밀집 벡터를 _knn_search에 연결합니다.

GET collection-with-embeddings/_knn_search
{
  "knn": {
    "field": "text_embedding.predicted_value",
    "query_vector": [
     0.3345310091972351,
    -0.305600643157959,
    0.2592800557613373,
       …
    ],
    "k": 10,
    "num_candidates": 100
  },
  "_source": [
    "id",
    "text"
  ]
}

결과적으로, 쿼리에 대한 근접성을 기준으로 정렬된 쿼리 문서에 가장 가까운 상위 10개를 얻을 수 있습니다.

"hits" : [
      {
        "_index" : "collection-with-embeddings",
        "_id" : "47TPtn8BjSkJO8zzKq_o",
        "_score" : 0.94591534,
        "_source" : {
          "id" : 434125,
          "text" : "The climate in Jamaica is tropical and humid with warm to hot temperatures all year round. The average temperature in Jamaica is between 80 and 90 degrees Fahrenheit. Jamaican nights are considerably cooler than the days, and the mountain areas are cooler than the lower land throughout the year. Continue Reading."
        }
      },
      {
        "_index" : "collection-with-embeddings",
        "_id" : "3LTPtn8BjSkJO8zzKJO1",
        "_score" : 0.94536424,
        "_source" : {
          "id" : 4498474,
          "text" : "The climate in Jamaica is tropical and humid with warm to hot temperatures all year round. The average temperature in Jamaica is between 80 and 90 degrees Fahrenheit. Jamaican nights are considerably cooler than the days, and the mountain areas are cooler than the lower land throughout the year"
        }
      },
      {
        "_index" : "collection-with-embeddings",
        "_id" : "KrXPtn8BjSkJO8zzPbDW",
        "_score" :  0.9432083,
        "_source" : {
          "id" : 190804,
          "text" : "Quick Answer. The climate in Jamaica is tropical and humid with warm to hot temperatures all year round. The average temperature in Jamaica is between 80 and 90 degrees Fahrenheit. Jamaican nights are considerably cooler than the days, and the mountain areas are cooler than the lower land throughout the year. Continue Reading"
        }
      },
...

6. 빠른 검증

MS MARCO 데이터 세트의 하위 집합만 사용했기 때문에 전체 평가를 수행할 수 없습니다. 대신 우리가 할 수 있는 것은 몇 개의 쿼리에 대한 간단한 검증으로, 무작위적인 결과가 아니라 실제로 정확도가 높은 결과를 얻고 있다는 것을 느낄 수 있는 정도입니다. 단락 순위화 작업에 대한 TREC 2019 딥 러닝 트랙 심사에서, 우리는 마지막 3개의 쿼리를 가져와서, 이를 벡터 유사성 검색에 제출하고, 상위 10개의 결과를 얻고 TREC 심사를 참조하여 우리가 받은 결과가 얼마나 정확도가 높은지 확인합니다. 단락 순위화 작업의 경우, 전혀 정확하지 않음(0), 정확도가 있음(단락이 주제는 동일하지만 질문에 대한 답이 되지 못함)(1), 정확도가 높음(2), 정확도가 완벽함(3)으로 이루어진 4점 척도를 기준으로 단락을 심사합니다.

우리의 검증은 엄격한 평가가 아니며, 우리의 빠른 데모에만 사용된다는 점에 유의하시기 바랍니다. 우리는 쿼리와 관련된 것으로 알려진 단락만 색인했기 때문에, 이는 원래 단락 검색 작업보다 훨씬 쉬운 작업입니다. 앞으로 우리는 MS MARCO 데이터 세트에 대해 엄격한 평가를 수행할 계획입니다.

우리의 벡터 검색에 제출된 쿼리 #1124210 “tracheids are part of _____”는 다음 결과를 반환합니다.

단락 id

정확도 순위

단락

2258591

2 - 정확도가 높음

Tracheid of oak shows pits along the walls. It is longer than a vessel element and has no perforation plates. Tracheids are elongated cells in the xylem of vascular plants that serve in the transport of water and mineral salts.Tracheids are one of two types of tracheary elements, vessel elements being the other. Tracheids, unlike vessel elements, do not have perforation plates.racheids provide most of the structural support in softwoods, where they are the major cell type. Because tracheids have a much higher surface to volume ratio compared to vessel elements, they serve to hold water against gravity (by adhesion) when transpiration is not occurring.

2258592

3 - 정확도가 완벽함

Tracheid. a dead lignified plant cell that functions in water conduction. Tracheids are found in the xylem of all higher plants except certain angiosperms, such as cereals and sedges, in which the water-conducting function is performed by vessels, or tracheae.Tracheids are usually polygonal in cross section; their walls have annular, spiral, or scalene thickenings or rimmed pores.racheids are found in the xylem of all higher plants except certain angiosperms, such as cereals and sedges, in which the water-conducting function is performed by vessels, or tracheae. Tracheids are usually polygonal in cross section; their walls have annular, spiral, or scalene thickenings or rimmed pores.

2258596

2 - 정확도가 높음

Woody angiosperms have also vessels. The mature tracheids form a column of superposed, cylindrical dead cells whose end walls have been perforated, resulting in a continuous tube called vessel (trachea). Tracheids are found in all vascular plants and are the only conducting elements in gymnosperms and ferns. Tracheids have Pits on their end walls. Pits are not nearly as efficient for water translocation as Perforation Plates found in vessel elements. Woody angiosperms have also vessels. The mature tracheids form a column of superposed, cylindrical dead cells whose end walls have been perforated, resulting in a continuous tube called vessel (trachea). Tracheids are found in all vascular plants and are the only conducting elements in gymnosperms and ferns

2258595

2 - 정확도가 높음

Summary: Vessels have perforations at the end plates while tracheids do not have end plates. Tracheids are derived from single individual cells while vessels are derived from a pile of cells. Tracheids are present in all vascular plants whereas vessels are confined to angiosperms. Tracheids are thin whereas vessel elements are wide. Tracheids have a much higher surface-to-volume ratio as compared to vessel elements. Vessels are broader than tracheids with which they are associated. Morphology of the perforation plate is different from that in tracheids. Tracheids are thin whereas vessel elements are wide. Tracheids have a much higher surface-to-volume ratio as compared to vessel elements. Vessels are broader than tracheids with which they are associated. Morphology of the perforation plate is different from that in tracheids.

131190

3 - 정확도가 완벽함

Xylem tracheids are pointed, elongated xylem cells, the simplest of which have continuous primary cell walls and lignified secondary wall thickenings in the form of rings, hoops, or reticulate networks.

7443586

2 - 정확도가 높음

1 The xylem tracheary elements consist of cells known as tracheids and vessel members, both of which are typically narrow, hollow, and elongated. Tracheids are less specialized than the vessel members and are the only type of water-conducting cells in most gymnosperms and seedless vascular plants.

181177

2 - 정확도가 높음

In most plants, pitted tracheids function as the primary transport cells. The other type of tracheary element, besides the tracheid, is the vessel element. Vessel elements are joined by perforations into vessels. In vessels, water travels by bulk flow, as in a pipe, rather than by diffusion through cell membranes.

2947055

0 - 전혀 정확하지 않음

Cholesterol belongs to the groups of lipids called _______.holesterol belongs to the groups of lipids called _______.

6541866

2 - 정확도가 높음

In most plants, pitted tracheids function as the primary transport cells. The other type of tracheary element, besides the tracheid, is the vessel element. Vessel elements are joined by perforations into vessels. In vessels, water travels by bulk flow, as in a pipe, rather than by diffusion through cell membranes. In most plants, pitted tracheids function as the primary transport cells. The other type of tracheary element, besides the tracheid, is the vessel element. Vessel elements are joined by perforations into vessels. In vessels, water travels by bulk flow, as in a pipe, rather than by diffusion through cell membranes.


쿼리 #1129237 “hydrogen is a liquid below what temperature”는 다음 결과를 반환합니다.

단락 id

정확도 순위

단락

8588222

0 - 전혀 정확하지 않음

Answer to: Hydrogen is a liquid below what temperature? By signing up, you'll get thousands of step-by-step solutions to your homework questions.... for Teachers for Schools for Companies

128984

3 - 정확도가 완벽함

Hydrogen gas has the molecular formula H 2. At room temperature and under standard pressure conditions, hydrogen is a gas that is tasteless, odorless and colorless. Hydrogen can exist as a liquid under high pressure and an extremely low temperature of 20.28 kelvin (−252.87°C, −423.17 °F). Hydrogen is often stored in this way as liquid hydrogen takes up less space than hydrogen in its normal gas form. Liquid hydrogen is also used as a rocket fuel.

8588219

3 - 정확도가 완벽함

User: Hydrogen is a liquid below what temperature? a. 100 degrees C c. -183 degrees C b. -253 degrees C d. 0 degrees C Weegy: Hydrogen is a liquid below 253 degrees C. User: What is the boiling point of oxygen? a. 100 degrees C c. -57 degrees C b. 100 degrees C c. -57 degrees C b. The boiling point of oxygen is -183 degrees C.

3905057

3 - 정확도가 완벽함

Hydrogen is a colorless, odorless, tasteless gas. Its density is the lowest of any chemical element, 0.08999 grams per liter. By comparison, a liter of air weighs 1.29 grams, 14 times as much as a liter of hydrogen. Hydrogen changes from a gas to a liquid at a temperature of -252.77°C (-422.99°F) and from a liquid to a solid at a temperature of -259.2°C (-434.6°F). It is slightly soluble in water, alcohol, and a few other common liquids.

4254811

3 - 정확도가 완벽함

At STP (standard temperature and pressure) hydrogen is a gas. It cools to a liquid at -423 °F, which is only about 37 degrees above absolute zero. Eleven degrees cooler, at … -434 °F, it starts to solidify.

2697752

2 - 정확도가 높음

Hydrogen's state of matter is gas at standard conditions of temperature and pressure. Hydrogen condenses into a liquid or freezes solid at extremely cold... Hydrogen's state of matter is gas at standard conditions of temperature and pressure. Hydrogen condenses into a liquid or freezes solid at extremely cold temperatures. Hydrogen's state of matter can change when the temperature changes, becoming a liquid at temperatures between minus 423.18 and minus 434.49 degrees Fahrenheit. It becomes a solid at temperatures below minus 434.49 F.Due to its high flammability, hydrogen gas is commonly used in combustion reactions, such as in rocket and automobile fuels.

6080460

3 - 정확도가 완벽함

Hydrogen can exist as a liquid under high pressure and an extremely low temperature of 20.28 kelvin (−252.87°C, −423.17 °F). Hydrogen is often stored in this way as liquid hydrogen takes up less space than hydrogen in its normal gas form. Liquid hydrogen is also used as a rocket fuel. Hydrogen is found in large amounts in giant gas planets and stars, it plays a key role in powering stars through fusion reactions. Hydrogen is one of two important elements found in water (H 2 O). Each molecule of water is made up of two hydrogen atoms bonded to one oxygen atom.

128989

3 - 정확도가 완벽함

Confidence votes 11.4K. At STP (standard temperature and pressure) hydrogen is a gas. It cools to a liquid at -423 °F, which is only about 37 degrees above absolute zero. Eleven degrees cooler, at -434 °F, it starts to solidify.

1959030

0 - 전혀 정확하지 않음

While below 4 °C the breakage of hydrogen bonds due to heating allows water molecules to pack closer despite the increase in the thermal motion (which tends to expand a liquid), above 4 °C water expands as the temperature increases. Water near the boiling point is about 4% less dense than water at 4 °C (39 °F)

3905800

0 - 전혀 정확하지 않음

Hydrogen is the lightest of the elements with an atomic weight of 1.0. Liquid hydrogen has a density of 0.07 grams per cubic centimeter, whereas water has a density of 1.0 g/cc and gasoline about 0.75 g/cc. These facts give hydrogen both advantages and disadvantages.


쿼리 #1133167 "how is the weather in jamaica"는 다음과 같은 결과를 반환합니다.

단락 id

정확도 순위

단락

434125

3 - 정확도가 완벽함

The climate in Jamaica is tropical and humid with warm to hot temperatures all year round. The average temperature in Jamaica is between 80 and 90 degrees Fahrenheit. Jamaican nights are considerably cooler than the days, and the mountain areas are cooler than the lower land throughout the year.

4498474

3 - 정확도가 완벽함

The climate in Jamaica is tropical and humid with warm to hot temperatures all year round. The average temperature in Jamaica is between 80 and 90 degrees Fahrenheit. Jamaican nights are considerably cooler than the days, and the mountain areas are cooler than the lower land throughout the year.

190804

3 - 정확도가 완벽함

Quick Answer. The climate in Jamaica is tropical and humid with warm to hot temperatures all year round. The average temperature in Jamaica is between 80 and 90 degrees Fahrenheit. The average temperature in Jamaica is between 80 and 90 degrees Fahrenheit. Continue Reading.

1824479

3 - 정확도가 완벽함

A: The climate in Jamaica is tropical and humid with warm to hot temperatures all year round. The average temperature in Jamaica is between 80 and 90 degrees Fahrenheit. Jamaican nights are considerably cooler than the days, and the mountain areas are cooler than the lower land throughout the year.

1824480

3 - 정확도가 완벽함

Quick Answer. The climate in Jamaica is tropical and humid with warm to hot temperatures all year round. The average temperature in Jamaica is between 80 and 90 degrees Fahrenheit. Jamaican nights are considerably cooler than the days, and the mountain areas are cooler than the lower land throughout the year.

1824488

2 - 정확도가 높음

Learn About the Weather of Jamaica The weather patterns you'll encounter in Jamaica can vary dramatically around the island Regardless of when you visit, the tropical climate and warm temperatures of Jamaica essentially guarantee beautiful weather during your vacation. Average temperatures in Jamaica range between 80 degrees Fahrenheit and 90 degrees Fahrenheit, with July and August being the hottest months and February the coolest.

4922619

2 - 정확도가 높음

Weather. Jamaica averages about 80 degrees year-round, so climate is less a factor in booking travel than other destinations. The days are warm and the nights are cool. Rain usually falls for short periods in the late afternoon, with sunshine the rest of the day.

190806

2 - 정확도가 높음

It is always important to know what the weather in Jamaica will be like before you plan and take your vacation. It is always important to know what the weather in Jamaica will be like before you plan and take your vacation. Luckily, the weather in Jamaica is always vacation friendly. You will hardly experience long periods of rain fall, and you will become accustomed to weeks upon weeks of sunny weather.

2613296

2 - 정확도가 높음

Average temperatures in Jamaica range between 80 degrees Fahrenheit and 90 degrees Fahrenheit, with July and August being the hottest months and February the coolest. Temperatures in Jamaica generally vary approximately 10 degrees from summer to winter

1824486

2 - 정확도가 높음

The climate in Jamaica is tropical and humid with warm to hot temperatures all year round. The average temperature in Jamaica is between 80 and 90 degrees Fahrenheit. Jamaican nights are considerably...


3개의 쿼리 모두에 대해 볼 수 있듯이, Elasticsearch는 대부분 정확도가 있는 결과를 반환했고, 모든 쿼리에 대한 상위 결과는 대부분 정확도가 높거나 정확도가 완벽했습니다.

직접 사용해 보세요

NLP는 흥미로운 로드맵을 갖춘 Elastic Stack의 강력한 기능입니다. Elastic Cloud에서 클러스터를 구축하여 새로운 기능을 알아보고 최신 개발 정보를 받아 보세요. 오늘 무료 14일 체험판에 등록하고 이 블로그의 예제를 직접 사용해 보세요.

다른 NLP 관련 글을 읽고 싶으시면 다음을 참조하세요.