<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0">
  <channel>
    <title><![CDATA[Valerio Arvizzigno - Elasticsearch Labs]]></title>
    <description><![CDATA[Articles and tutorials from the Search team at Elastic]]></description>
    <copyright><![CDATA[© 2026. Elasticsearch B.V. All Rights Reserved]]></copyright>
    <image>
      <title><![CDATA[Valerio Arvizzigno - Elasticsearch Labs]]></title>
      <url>https://static-www.elastic.co/v3/assets/bltefdd0b53724fa2ce/blt1121c0bf0e8a6e65/6a88da6340a1841030ef456f/search-labs-thumbnail.png</url>
      <link>https://www.elastic.co/kr/search-labs/author/valerio-arvizzigno</link>
    </image>
    <link>https://www.elastic.co/kr/search-labs/author/valerio-arvizzigno</link>
    <atom:link href="https://www.elastic.co/kr/search-labs/rss/author/valerio-arvizzigno.xml" rel="self" type="application/rss+xml"/>
    <language><![CDATA[kr]]></language>
    <lastBuildDate>Sat, 17 Oct 2026 00:34:34 GMT</lastBuildDate>
  <item>
    <title><![CDATA[A2A 프로토콜을 통해 Elastic 에이전트를 Gemini Enterprise에 연결하기]]></title>
    <description><![CDATA[에이전트 빌더를 사용하여 사용자 정의 Elastic 에이전트를 A2A 프로토콜을 통해 Gemini Enterprise와 같은 외부 서비스에 노출하는 방법을 알아보세요.]]></description>
    <content:encoded><![CDATA[<p><strong>Elastic 에이전트 빌더는</strong> Elasticsearch에서 직접 데이터 기반 AI 에이전트를 생성하기 위한 일련의 기능입니다. <a href="https://www.elastic.co/search-labs/blog/series/context-aware-ai-agentic-workflows-with-elastic">시리즈의</a> 이전 게시물에서는 사용자 지정 상담원에게 복잡한 작업을 수행할 수 있는 툴을 제공하고 이들의 행동을 안내하는 일련의 사용자 지정 지침을 제공하는 방법에 대해 설명했습니다.</p><p>하지만 이미 사용하고 있는 애플리케이션 및 생산성 도구와 함께 사용자 지정 상담원을 사용하려면 어떻게 해야 할까요?</p><p>이것이 바로 <strong>에이전트 간(A2A) 프로토콜이</strong> 필요한 이유입니다. A2A는 상호 운용성을 위한 <a href="https://github.com/a2aproject/A2A">개방형 표준으로</a>, 서로 다른 플랫폼의 상담원들이 소통하고 협업할 수 있도록 합니다. 그리고 이를 Elastic 에이전트 빌더에 직접 구축했습니다.</p><p>오늘은 구축한 사용자 지정 상담원을 다른 서비스, 특히 <strong>Gemini Enterprise </strong>(이전의 Agentspace)에 노출하는 방법을 보여드리겠습니다.</p><h2>개방형 표준의 힘: A2A가 중요한 이유</h2><p>블로그 게시물 <a href="https://www.elastic.co/search-labs/blog/ai-agent-builder-elasticsearch">첫 번째 Elastic 에이전트에서</a> 시장 데이터에 안전하게 액세스할 수 있는 <em>금융 지원</em> 에이전트와 같은 사용자 정의 에이전트를 구축하는 방법을 보여드렸습니다. 그러나 작업을 재구축하지 않고 Gemini Enterprise와 같은 다른 환경에서 인사이트를 사용할 수 없다면 그 가치는 제한적입니다.</p><p>이러한 상호운용성 문제가 에이전트 AI의 발목을 잡고 있습니다. 에이전트는 여러 플랫폼에서 소통하기 위해 공통 언어가 필요하며, 이것이 바로 A2A 프로토콜의 역할입니다. 상담원과 직접 소통할 수 있는 표준 커뮤니케이션 계층을 제공할 뿐만 아니라 조직 전체의 전문 상담원이 협업하고 인사이트를 공유할 수 있는 미래를 열어줍니다.</p><p>이를 가능하게 하기 위해 Elastic 에이전트 빌더는 기본적으로 모든 에이전트에 대해 두 개의 표준 엔드포인트를 통해 A2A 프로토콜을 지원합니다:</p><ol><li><p>상담원 <strong>카드 엔드포인트(</strong><strong><code>GET {your-kibana-url}/api/agent_builder/a2a/{agentId}.json</code></strong><strong>) - </strong>사용자 지정 상담원의 명함 역할을 합니다. A2A 호환 서비스에 상담원에 대한 메타데이터(이름, 설명, 기능 등)를 제공합니다.</p></li><li><p><strong>A2A 프로토콜 엔드포인트 (</strong><strong><code>POST {your-kibana-url}/api/agent_builder/a2a/{agentId}</code></strong><strong>)</strong> - 통신 채널입니다. 다른 상담원이 여기로 요청을 보내면 상담원이 이를 처리하고 응답을 반환하며, 이 모든 과정은 <a href="https://a2a-protocol.org/latest/specification/">A2A 프로토콜 사양에</a> 따라 이루어집니다.</p></li></ol><h2>A2A 인스펙터로 에이전트 테스트하기</h2><p>에이전트를 프로덕션 시스템에 연결하기 전에 에이전트가 제대로 통신하고 있는지 확인하는 것이 좋습니다. 가장 쉬운 방법은 A2A 통합 테스트 및 디버깅을 위해 특별히 설계된 도구인 <strong>A2A 인스펙터를</strong> 사용하는 것입니다.</p><p>인스펙터를 실행하는 방법은 간단합니다. <a href="https://github.com/a2aproject/a2a-inspector">a2a-inspector</a> 리포지토리를 복제하고 README 지침에 따라 <a href="https://github.com/a2aproject/a2a-inspector?tab=readme-ov-file#3-run-the-application">애플리케이션을 실행할</a> 수 있습니다. 시작하면 기본적으로 <code>http://localhost:5001/</code> 에서 UI를 사용할 수 있습니다.</p><p>A2A 인스펙터를 상담원과 연결하려면 두 가지 주요 정보를 제공해야 합니다:</p><ul><li><p>상담원 카드 URL: 상담원을 설명하는 엔드포인트입니다. <a href="https://www.elastic.co/search-labs/blog/ai-agent-builder-elasticsearch">이전 게시물의 재무 도우미 상담</a>원의 경우 이 URL은 <code>{your-kibana-url}/api/agent_builder/a2a/financial_assistant.json</code> 입니다.</p></li><li><p>인증 헤더: 인증에 표준 API 키를 사용합니다.</p></li></ul><p>인스펙터의 UI에 이러한 세부 정보를 입력하면 바로 상담원과 연결하여 채팅을 시작할 수 있습니다.</p><img src="https://static-www.elastic.co/v3/assets/bltefdd0b53724fa2ce/blt6381135e3fb297df/6a17ef4bec0f898b0c5a66ea/7231c72bf30bed2a854f58658c1eca2843f43bfc-1600x1296.png" alt="A2A 상담원 카드 및 상담원 인스펙터 설정" /><p>이 간단한 검증을 통해 에이전트가 올바르게 구성되었으며 다음 단계로 넘어갈 준비가 되었다는 확신을 가질 수 있습니다.</p><h2>라이브 시작! Gemini Enterprise의 사용자 지정 에이전트</h2><p>이제 흥미로운 부분인 맞춤형 재무 설계사 에이전트를 Gemini Enterprise(이전의 Agentspace) 내에서 구현하는 것입니다. 이 통합은 <a href="https://console.cloud.google.com/marketplace/product/elastic-prod/elastic-ai-agent">Google Cloud Marketplace에서 사용할 수 있는 Elastic AI 에이전트에</a> 의해 구동됩니다.</p><p>연결되면 Gemini Enterprise는 A2A 프로토콜을 사용하여 상담원과 직접 통신합니다. 이제 사용자는 익숙한 환경을 벗어나지 않고도 사용자 정의 Elasticsearch 에이전트의 심층적인 데이터 기반 인사이트에 액세스할 수 있습니다. 상담원 목록에서 사용자 정의 Elastic 에이전트를 확인할 수 있습니다:</p><img src="https://static-www.elastic.co/v3/assets/bltefdd0b53724fa2ce/blt7f54f0bb15216d8e/6a17ef4d6df73107d90a0fdb/37a39e92ebf3d72c6c8014397cd8e846336173a4-1600x834.png" alt="Google 상담원 공간 목록에서 사용자 지정 상담원 보기" /><p>Gemini Enterprise의 사용자가 다음과 같이 질문한다고 상상해 보세요:</p><p><em>"시장 심리가 걱정됩니다. 어떤 고객이 악재로 인해 가장 위험에 처해 있는지 알려주실 수 있나요?</em>"</p><p>뒤에서 Gemini Enterprise는 A2A 프로토콜을 통해 이 쿼리를 사용자 정의 Elastic 에이전트로 라우팅합니다. 그런 다음 상담원이 전문화된 도구를 사용하여 데이터를 쿼리하고 답변을 작성하여 다시 전송합니다. 최종 사용자에게는 매끄러운 경험이 제공됩니다.</p><img src="https://static-www.elastic.co/v3/assets/bltefdd0b53724fa2ce/blte130c332ee0648a6/6a17ef4fe9ea874426a9c6bb/e5f126c1a27a51c6e69a767aa87c9f746b62e39c-1600x1044.png" alt="사용자가 에이전트스페이스에 쿼리를 요청하면 백그라운드에서 쿼리가 어떻게 되는지 알아보기" /><p>그리고 여기서 멈추지 않습니다! 이제 Elastic 에이전트로 검색된 답변을 다른 전문 에이전트를 트리거할 수 있는 다음 질문의 컨텍스트로 사용할 수 있습니다(예. 투자 플랫폼 에이전트를 통해 상장사에 대한 노출을 조정할 수 있습니다). 검색창을 떠나지 않고도 이 모든 것이 가능합니다.</p><p>A2A가 포함된 Gemini Enterprise에 배포된 Elastic 에이전트를 사용하면 사용자가 데이터 및 도구와 대화할 수 있는 단일 UI를 제공하여 액세스, 오케스트레이션, 워크플로우를 통합하여 AI, 검색, 엔터프라이즈 시스템 간의 마찰을 제거할 수 있으며, 모두 맥락에 맞게 사용할 수 있습니다. 사용자 입장에서는 도구 전환이 줄어들고 직관적이고 유능한 AI 비서가 더 많아진다는 뜻입니다. 조직에게는 일관된 거버넌스, 확장성 및 상호 운용성이 내장되어 있다는 의미입니다.</p><h2>구축할 차례</h2><p>이제 어디서나 Elastic 에이전트를 사용할 수 있는 도구가 생겼습니다. 개방형 A2A 프로토콜을 활용하면 데이터를 인식하는 맞춤형 상담원의 범위를 확장할 수 있습니다.</p><p>이 게시물에서는 주요 단계를 안내해 드렸습니다:</p><ul><li><p>A2A 에이전트 카드 및 프로토콜 엔드포인트를 통해 에이전트를 노출합니다.</p></li><li><p>A2A 인스펙터로 연결을 테스트합니다.</p></li><li><p>Google의 Gemini Enterprise와 같은 외부 서비스에 상담원을 실시간으로 통합합니다.</p></li></ul><p>상담원을 더 이상 격리할 필요가 없습니다. 여러분이 만든 강력하고 상호 연결된 시스템을 빨리 보고 싶어요. 행복한 건물!</p><p>가장 쉽게 시작할 수 있는 방법은 <a href="https://console.cloud.google.com/marketplace/product/elastic-prod/elastic-cloud?pli=1">Google Cloud Marketplace에서</a>Elastic Cloud 무료 체험판을 사용하는 것입니다.</p>]]></content:encoded>
    <link>https://www.elastic.co/search-labs/blog/a2a-protocol-elastic-agent-builder-gemini-enterprise</link>
    <guid isPermaLink="true">https://www.elastic.co/search-labs/blog/a2a-protocol-elastic-agent-builder-gemini-enterprise</guid>
    <category><![CDATA[에이전틱 AI]]></category>
    <category><![CDATA[AI]]></category>
    <dc:creator><![CDATA[Jedr Blaszyk,Valerio Arvizzigno,Joe McElroy]]></dc:creator>
    <enclosure url="https://static-www.elastic.co/v3/assets/bltefdd0b53724fa2ce/blt63d7675adc5bc211/6a17ef51ddf97d38e8910bdf/5be8a425fab55dca2f9717d2e50812b0450fa625-1440x840.png" length="0" type="image/png"/>
    <pubDate>Thu, 09 Oct 2025 00:00:00 GMT</pubDate>
  </item>
  <item>
    <title><![CDATA[구글 클라우드의 버텍스 AI 플랫폼에서 기본 접지를 위한 Elasticsearch 벡터 데이터베이스]]></title>
    <description><![CDATA[Google Cloud의 Vertex AI를 위한 최초의 써드파티 기본 접지 엔진인 Elasticsearch가 어떻게 기업 데이터에 Gemini 모델을 접지하여 맞춤형 GenAI 환경을 구축할 수 있는지 알아보세요.]]></description>
    <content:encoded><![CDATA[<p>Elastic은 이제 Elasticsearch 벡터 데이터베이스가 기본적으로 지원되는 정보 검색 엔진으로 Google Cloud의 Vertex AI 플랫폼에 통합되어 사용자가 Google Gemini 모델의 멀티모달 강점을 Elasticsearch의 고급 AI 기반 시맨틱 및 하이브리드 검색 기능과 함께 활용할 수 있게 되었음을 발표하게 되어 기쁘게 생각합니다.</p><p>이제 개발자는 통합된 여정 내에서 로우코드의 유연한 방식으로 개인 데이터에 기반한 채팅 경험을 제공하는 RAG 애플리케이션을 만들 수 있습니다. 고객과 내부 직원을 위한 AI 에이전트를 구축하든, 소프트웨어 내에서 LLM 생성을 활용하든, Vertex AI 플랫폼은 최소한의 구성으로 손쉽게 Elasticsearch 정확도를 제공합니다. 이러한 통합을 통해 프로덕션 사용 사례에서 Gemini 모델을 더 쉽고 빠르게 채택할 수 있으며, GenAI를 PoC에서 실제 시나리오로 끌어올릴 수 있습니다.</p><p>이 블로그에서는 원활한 데이터 기반을 마련하고 완전히 사용자 정의 가능한 GenAI 애플리케이션을 구축하기 위해 Elasticsearch를 Google Cloud의 Vertex AI 플랫폼과 통합하는 방법을 안내해드립니다. 방법을 알아보세요.</p><h2>Elasticsearch를 통해 데이터에 기반한 Google Cloud의 Vertex AI 및 Gemini 모델</h2><p>이제 GenAI 애플리케이션을 만들기 위해 버텍스 AI 서비스 및 도구를 활용하는 사용자는 새로운 '접지' 옵션에 액세스하여 자신의 개인 데이터를 자동으로 대화 상호작용으로 가져올 수 있습니다. Elasticsearch는 이제 이 기능의 일부이며 두 가지 모두에서 사용할 수 있습니다:</p><ul><li><p>생성 시점에 Google의 Gemini 모델을 직접 강화하는 Vertex AI <a href="https://cloud.google.com/vertex-ai/generative-ai/docs/model-reference/inference">LLM API</a>(선호);</p></li><li><p>버텍스 AI 에이전트 빌더 에코시스템에서 에이전트 경험을 구축하는 데 사용되는 <a href="https://cloud.google.com/generative-ai-app-builder/docs/grounded-gen">Grounded Generation API입니다</a>.</p></li></ul><p>이 통합을 통해 가장 많이 다운로드되고 배포된 <a href="https://www.elastic.co/kr/elasticsearch/vector-database">벡터 데이터베이스인</a> Elasticsearch는 내부 최종 고객 대면 채팅에서 필요한 곳이면 어디든 관련 엔터프라이즈 데이터를 가져올 수 있으며, 이는 GenAI를 비즈니스 프로세스에 실제로 도입하는 데 매우 중요한 역할을 합니다.</p><p>앞서 언급한 API를 통해 개발자는 이 새로운 파트너 기능을 코드에 적용할 수 있습니다. 그러나 신속한 엔지니어링 및 테스트는 애플리케이션 개발의 중요한 단계이며 초기 발견의 놀이터 역할을 합니다. 이를 지원하기 위해 Elasticsearch는 사용자가 Vertex AI Studio 콘솔 도구 내에서 쉽게 평가할 수 있도록 설계되었습니다.</p><p>아래 그림과 같이 UI의 "사용자 정의 접지" 탭에서 원하는 매개변수(검색할 인덱스, 검색할 문서 수, 원하는 검색 템플릿)로 Elastic 엔드포인트를 구성하는 몇 가지 간단한 단계만 거치면 됩니다(작동하려면 UI와 아래 코드 예제에서 "ApiKey" 라는 단어와 함께 API 키를 입력해야 합니다). 이제 개인 지식으로 생성할 준비가 되었습니다!</p><img src="https://static-www.elastic.co/v3/assets/bltefdd0b53724fa2ce/blt7d313968acca1fea/6a17e624b1e113278079f250/69b3d979d18fa90742d9397f57975c586edf5d9f-1003x710.gif" alt="Elasticsearch를 통해 데이터에 기반한 Google Cloud의 Vertex AI 및 Gemini 모델" /><h2>손쉽게 프로덕션에 사용할 수 있는 GenAI 애플리케이션</h2><p>Elastic과 Google Cloud는 개발자 우선의 포괄적이고 즐거운 경험을 제공하기 위해 노력하고 있습니다. LLM과 접지 생성 API 모두에서 기본적으로 Elastic에 연결하면 하나의 통합 호출로 접지하면서 불필요한 추가 API와 데이터 오케스트레이션을 피하고, Vertex AI에서 GAI 애플리케이션을 구축하는 동안 복잡성과 오버헤드를 줄일 수 있습니다.</p><p>두 시나리오에서 어떻게 작동하는지 살펴보겠습니다.</p><p>첫 번째 예제는 LLM API로 실행됩니다:</p>curl -X POST \
  -H "Authorization: Bearer $(gcloud auth print-access-token)" \
  -H "Content-Type: application/json" \https://us-central1-aiplatform.googleapis.com/v1beta1/projects/&lt;PROJECT_ID&gt;/locations/us-central1/publishers/google/models/gemini-2.0-flash-001:generateContent \
  -d '
{
  "contents": [
    {
      "role": "user",
      "parts": [
        {
          "text": "What's my company car policy?"
        }
      ]
    }
  ],
  "tools": [{
    "retrieval": {
      "externalApi": {
        "api_spec": "ELASTIC_SEARCH",
    "endpoint": "https://&lt;my-elastic-cluster&gt;.gcp.elastic-cloud.com:9243",
    "apiAuth": {
      "apiKeyConfig": {
            "apiKeyString": "ApiKey &lt;API_KEY&gt;"
      }
    },
    "elasticSearchParams": {
      "index": "&lt;my-index&gt;",
      "searchTemplate": "&lt;my-search-template&gt;"
    }
      }
    }
  }]
}<p>위의 예제에서 API의 <code>retrieval</code> 필드가 Gemini 2.0 Flash에 콘텐츠 생성을 요청하는 경우, 요청에 대한 검색 엔진을 컨텍스트에 맞게 설정할 수 있습니다. <code>api_spec</code> 을 "ELASTIC_SEARCH"로 설정하면 API 키와 클러스터 엔드포인트(요청을 Elastic 클러스터로 라우팅하는 데 필요), 데이터를 검색할 인덱스, 검색 로직에 사용할 검색 템플릿과 같은 추가 구성 매개변수를 사용할 수 있습니다.</p><p>마찬가지로 접지 생성 API를 사용하여 <code>groundingSpec</code> 파라미터를 설정하면 동일한 결과를 얻을 수 있습니다:</p>curl -X POST -H "Authorization: Bearer $(gcloud auth print-access-token)" -H "Content-Type: application/json" https://us-discoveryengine.googleapis.com/v1alpha/projects/&lt;PROJECT_ID&gt;/locations/global:generateGroundedContent -d '
{
  "contents": [{
    "role": "user",
    "parts": [{
      "text": "What do I need to patch a hole in my drywall?"
    }]
  }],
  "groundingSpec": {
    "groundingSources": [{
      "elasticSource": {
        "endpoint": "https://&lt;my-elastic-cluster&gt;.gcp.elastic-cloud.com:9243",
        "index": "&lt;my-index&gt;",
        "searchTemplate": "&lt;my-search-template",
        "apiKey": "projects/&lt;PROJECT_ID&gt;/secrets/api-key/versions/latest"
      }
    }]
  }
}
'<p>두 가지 접근 방식 모두에서 응답은 쿼리를 지원하기 위해 Elasticsearch에서 찾은 가장 관련성이 높은 비공개 문서와 연결된 관련 데이터 소스로 답변을 제공합니다.</p><p>하지만 단순함을 특정 요구사항과 사용 사례를 충족하기 위한 개인화 부족과 혼동해서는 안 됩니다. 이를 염두에 두고 검색 구성을 사용자의 시나리오에 맞게 완벽하게 조정할 수 있도록 설계했습니다.</p><h2>손끝에서 완벽하게 사용자 지정 가능한 검색: 검색 템플릿</h2><p>검색 시나리오를 최대한 맞춤 설정할 수 있도록 Google은 Google Cloud와 협력하여 잘 알려진 <a href="https://www.elastic.co/kr/guide/en/elasticsearch/reference/current/search-template.html">검색 템플릿을</a> 기반으로 환경을 구축했습니다. Elasticsearch 검색 템플릿은 동적이고 재사용 가능하며 유지 관리가 가능한 검색 쿼리를 생성하기 위한 훌륭한 도구입니다. 쿼리 구조를 미리 정의하고 재사용할 수 있습니다. 개발 시간을 절약하고 오류 발생 가능성을 줄이기 때문에 다른 매개변수로 유사한 쿼리를 실행할 때 특히 유용합니다. 템플릿에는 변수에 대한 자리 표시자를 포함할 수 있으므로 다양한 검색 요구 사항에 맞게 쿼리를 동적으로 조정할 수 있습니다.</p><p>접지를 위해 Vertex AI API와 Elasticsearch를 사용하는 동안, 위의 코드 스니펫과 같이 원하는 검색 템플릿을 참조해야 하며, 여기서 검색 로직이 구현되어 Elasticsearch로 푸시됩니다. Elastic 파워 유저는 검색 접근 방식을 비동기적으로 관리, 구성 및 업데이트하고 특정 인덱스, 모델 및 데이터에 맞게 조정할 수 있으며, Vertex AI 사용자, 웹 앱 개발자 또는 AI 엔지니어는 접지 API에서 템플릿의 이름만 지정하면 됩니다.</p><p>이 설계를 통해 완벽한 사용자 정의가 가능하여 광범위한 Elasticsearch 검색 기능을 Google Cloud AI 환경에서 마음대로 사용할 수 있으며, Elastic에 익숙하지 않은 개발자도 모듈성, 투명성, 사용 편의성을 보장합니다.</p><p>BM25 검색, 시맨틱 검색 또는 이 둘의 하이브리드 접근 방식이 필요할 때마다(이미 <a href="https://www.elastic.co/kr/guide/en/elasticsearch/reference/current/retrievers-overview.html">검색기를</a> 사용해 보셨나요?)? 단일 검색 API 호출로 구성 가능한 검색 기술), 검색 템플릿에서 사용자 지정 로직을 정의하면 Vertex AI가 자동으로 이를 활용할 수 있습니다.</p><p>이는 벡터와 결과를 관리하기 위해 선택한 임베딩 및 재랭크 모델에도 적용됩니다. 사용 사례에 따라 Elastic의 ML 노드에서 모델을 호스팅하거나, 추론 API를 통해 타사 서비스 엔드포인트를 사용하거나, 온프레미스에서 로컬 모델을 실행할 수 있습니다. 검색 템플릿을 통해 이 작업을 수행할 수 있으며, 다음 섹션에서 그 방법을 살펴보겠습니다.</p><h2>참조 템플릿으로 시작한 다음 나만의 템플릿을 만들 수 있습니다.</h2><p>빠르게 시작할 수 있도록 초기 참조용으로 사용할 수 있는 호환 가능한 검색 템플릿 샘플 세트를 제공했으며, 이를 기반으로 사용자 지정 템플릿을 수정하고 구축할 수 있습니다:</p><ul><li><p>ELSER 모델을 사용한 시맨틱 검색(스파스 벡터 및 청킹)</p></li><li><p>e5 다국어 모델을 사용한 시맨틱 검색(고밀도 벡터 및 청킹)</p></li><li><p>버텍스 AI 텍스트 임베딩 모델을 사용한 하이브리드 검색</p></li></ul><p>이 <a href="https://github.com/elastic/elasticsearch-labs/tree/main/supporting-blog-content/Cloud-Vertex-AI/search-templates">GitHub 리포지토리에서</a> 찾을 수 있습니다.</p><p>한 가지 예를 들어 보겠습니다. 제품 카탈로그에 Google Cloud의 Vertex AI API를 사용하여 임베딩을 생성하는 것입니다. 먼저, 아래와 같이 Elasticsearch에서 검색 템플릿을 생성해야 합니다:</p>PUT _scripts/google-template-knn
{
  "script": {
    "lang": "mustache",
    "source": {
      "_source": {
        "excludes": [ "title_embedding", "description_embedding", "images" ]
      },
        "size": "{{num_hits}}",
          "knn" : [
          { 
            "field": "description_embedding",
            "k": 5,
            "num_candidates": 10,
            "query_vector_builder": {
              "text_embedding": {
                "model_id": "googlevertexai_embeddings_004",
                "model_text": "{{query}}"
              }
            },
            "boost": 0.4
          },
          {
            "field": "title_embedding",
            "k": 5,
            "num_candidates": 10,
            "query_vector_builder": {
              "text_embedding": {
                "model_id": "googlevertexai_embeddings_004",
                "model_text": "{{query}}"
            }
          },
          "boost": 0.6
          }
          ]
    }  
  }
}<p>이 예에서는 하나의 검색 내에서 두 개의 필드에 대해 KNN 검색을 실행합니다: <code>title_embedding</code> - 제품 이름이 포함된 벡터 필드와 제품 설명이 포함된 <code>description_embedding</code> 필드입니다.</p><p><code>excludes</code> 구문을 활용하여 처리 과정에서 노이즈를 유발하고 최종 답변의 품질에 영향을 줄 수 있는 불필요한 필드를 LLM에 반환하지 않도록 할 수 있습니다. 이 예제에서는 벡터와 이미지 URL이 포함된 필드를 제외했습니다.</p><p>벡터는 이전에 다음과 같이 정의된 Vertex AI 임베딩 API( <code>googlevertexai_embeddings_004</code>)에 대한 추론 엔드포인트를 통해 제출된 입력에 대해 쿼리 시점에 즉석에서 생성됩니다:</p>PUT /_inference/text_embedding/googlevertexai_embeddings_004
{
    "service": "googlevertexai",
    "service_settings": {
        "service_account_json": "&lt;your_service_account_key&gt;",
        "model_id": "text-embedding-004",
        "location": "us-central1",
        "project_id": "&lt;your_gcp_project&gt;"
    }
}<p>Elastic의 추론 API를 사용하는 방법에 대한 추가 정보는 <a href="https://www.elastic.co/kr/guide/en/elasticsearch/reference/current/inference-apis.html">여기에서</a> 확인할 수 있습니다.</p><p>이제 템플릿 검색을 테스트할 준비가 되었습니다:</p>GET product-catalog-with-embeddings/_search/template
{
  "id": "google-template-knn",
  "params": {
    "query": "What do I need to patch a hole in my drywall?",
    "index_name": "product-catalog-with-embeddings",
    "num_hits": 3
  }
}<p><code>params</code> 필드는 템플릿 스크립트에서 설정한 변수를 이중 중괄호 괄호로 대체합니다. 현재 Vertex AI LLM 및 Grounded Generation API는 다음과 같은 입력 변수를 Elastic에 전송할 수 있습니다:</p><ul><li><p>"쿼리" - 검색할 사용자 쿼리</p></li><li><p>"index_name" - 검색할 인덱스의 이름입니다.</p></li><li><p>"num_hits" - 최종 출력에서 검색할 문서 수</p></li></ul><p>다음은 샘플 출력입니다:</p>{
        "_index": "product-catalog-with-embeddings",
        "_id": "9ZQCm5IBcrGI1ivqV-f_",
        "_score": 0.4925191,
        "_ignored": [
          "description.keyword",
          "images.keyword"
        ],
        "_source": {
          "description": "DAP Eclipse Rapid Wall Repair Patch is a new, revolutionary product solution for repairing drywall damage. No more waiting for spackling to dry or messy sanding. DAP Eclipse allows you to patch drywall damage and paint immediately, allowing you to finish your project faster. This all-in-1, mess free solution not only provides a permanent, long-lasting repair but also superior impact resistance for areas that may see reoccurring impact, such as behind a door.",
          "availability": "InStock",
          "model_id": "googlevertexai_embeddings_004",
          "title": "4 in. Eclipse Wall Repair Patch (2-Pack)",
          "url": "https://www.myDIYwebsite.com/p/DAP-4-in-Eclipse-Wall-Repair-Patch-2-Pack-7079809164/317967195",
          "price": 23.96,
          "product_id": 317967195,
          "currency": "USD",
          "brand": "DAP"
        }<p>위의 쿼리는 바로 이전에 생성된 검색 템플릿을 참조할 때 Google Cloud의 Vertex AI가 Elasticsearch에서 백그라운드에서 실행하는 쿼리입니다. "건식 벽체에 어떤 패치가 필요하나요?"라고 질문하면 채팅 상담원이 일반적인 제안 대신 구체적인 제품을 추천해 드립니다!</p><img src="https://static-www.elastic.co/v3/assets/bltefdd0b53724fa2ce/blte88a0c34242df6fa/6a17e6263e03d704504f2c2e/8c8b1374da7e9b2c17df8758acb448eed5b74e2d-1473x913.png" alt="Google의 Vertex AI 플랫폼에서 프롬프트 만들기" /><h2>Elastic과 Google Cloud를 통한 엔드투엔드 GenAI 여정</h2><p>Elastic은 Google Cloud와 협력하여 프로덕션에 바로 사용할 수 있는 엔드투엔드 GenAI 환경과 솔루션을 개발합니다. 방금 살펴본 바와 같이, Elastic은 벡터 검색 기능을 사용하여 원활하고 근거가 있는 Gemini 모델 프롬프트와 에이전트를 지원하는 Vertex AI 플랫폼의 UI와 SDK에 직접 통합된 최초의 ISV입니다. 또한, Elastic은 <a href="https://www.elastic.co/kr/guide/en/elasticsearch/reference/current/infer-service-google-vertex-ai.html">Vertex AI</a> 및 <a href="https://www.elastic.co/kr/guide/en/elasticsearch/reference/current/infer-service-google-ai-studio.html">Google AI Studio의</a>임베딩, 재순위 지정, 완성 모델과 통합되어 Google Cloud 환경을 벗어나지 않고도 벡터를 생성하고 순위를 지정하여 <a href="https://cloud.google.com/responsible-ai?hl=en">책임감 있는 AI </a>원칙을 보장합니다. 멀티모달 접근 방식을 지원함으로써 다양한 데이터 형식의 애플리케이션을 공동으로 촉진합니다.</p><p><a href="https://www.elastic.co/kr/search-labs/blog/vertex-ai-elasticsearch-playground-fast-rag-apps">플레이그라운드를</a> 통해 GenAI 검색 코드를 조정, 테스트 및 내보낼 수 있습니다.</p><img src="https://static-www.elastic.co/v3/assets/bltefdd0b53724fa2ce/blt6a978835a5418eb9/6a17e628fbc5f8abff491a6a/b1fc48dba1713cd01c4d7f3296587d0c4e6e7e0c-862x651.png" alt="Elastic과 Google Cloud를 통한 엔드투엔드 GenAI 여정 " /><p>하지만 검색 앱 구축에만 그치지 않습니다. Elastic은 Gemini 모델을 활용하여 <a href="https://www.elastic.co/kr/blog/elastic-google-vertex-ai-integration">Elastic AI 어시스턴트, 공격 탐색, 자동 가져오기 기능과</a> 같은 IT 운영을 강화함으로써 보안 분석가와 SRE가 저가치 작업에 대한 일상적인 피로를 줄이고 비즈니스 개선에 집중할 수 있도록 지원합니다. 또한 Elastic은 응답 시간, 토큰, 리소스와 같은 메트릭과 로그를 추적하여 최적의 성능을 보장하기 위해 <a href="https://www.elastic.co/kr/guide/en/integrations/current/gcp_vertexai.html">Vertex AI 사용량을 포괄적으로 모니터링할 수 있습니다.</a> 데이터 수집 및 임베딩 생성부터 하이브리드 검색을 통한 근거 마련에 이르기까지 전체 GenAI 라이프사이클을 함께 관리하며, LLM 기반 작업을 통해 GenAI 도구의 강력한 가시성 및 보안을 보장합니다.</p><h2>자세히 알아보고 사용해 보세요!</h2><p>이 기능을 사용해 보고 싶으신가요? 이 기능은 현재 구글 클라우드 프로젝트에서 정식 버전으로 출시되었습니다!</p><p>아직 시작하지 않으셨다면, Elastic Search AI Platform을 시작하고 기능을 살펴보는 가장 쉬운 방법 중 하나는 <a href="https://cloud.elastic.co/registration">무료 Elastic Cloud 체험판을</a> 사용하시거나 <a href="https://console.cloud.google.com/marketplace/product/elastic-prod/elastic-cloud?pli=1">Google Cloud Marketplace를</a> 통해 구독하는 것입니다.</p><p><em>이 게시물에 설명된 모든 기능의 출시와 시기는 Elastic의 단독 재량에 따라 결정됩니다. 현재 사용할 수 없는 기능이나 기능은 제때 또는 전혀 제공되지 않을 수 있습니다. Elastic, Elasticsearch 및 관련 상표는 미국 및 기타 국가에서 Elasticsearch N.V.의 상표, 로고 또는 등록 상표입니다. 기타 모든 회사 및 제품명은 해당 소유자의 상표, 로고 또는 등록 상표입니다.</em></p>]]></content:encoded>
    <link>https://www.elastic.co/search-labs/blog/elasticsearch-google-cloud-vertex-ai-native-grounding</link>
    <guid isPermaLink="true">https://www.elastic.co/search-labs/blog/elasticsearch-google-cloud-vertex-ai-native-grounding</guid>
    <category><![CDATA[벡터 데이터베이스]]></category>
    <dc:creator><![CDATA[Valerio Arvizzigno]]></dc:creator>
    <enclosure url="https://static-www.elastic.co/v3/assets/bltefdd0b53724fa2ce/blt973959b32f2070d6/6a17e62a6317304ec1585a5e/d1f1c8860f1f0b989ad698a882f869de7284ab78-1200x628.png" length="0" type="image/png"/>
    <pubDate>Wed, 09 Apr 2025 00:00:00 GMT</pubDate>
  </item>
  </channel>
</rss>