LoginSignup
0
0

Amazon Kendra使いがVertex AI Search and Conversationやってみた

Posted at

普段AWSばかりですが、他社の動向も知っておきたいと思って、Vertex AI Search and Conversationを試しました。

先入観としては、Amazon KendraのAzure版だと思って始めました。うまく行けばRAGの情報源にしてKendraと比較がしたいと目論んでおります。
Google Cloudに詳しい方のツッコミお待ちしております(笑)

Kendraについてはここを見るとわかった気になれます。

「Azure AI Searchをやってみた」はこちら

Vertex AI Search and Conversationを作ってみた。

ポチポチします。

  1. コンソールで検索と会話を開く。(日本語はこれが正式名称ですか?)
    新しいアプリをクリック

    console.cloud.google.com_gen-app-builder_engines_hl=ja&project=develop-414913(1280x720).png

  2. 検索を選択
    console.cloud.google.com_gen-app-builder_engines_hl=ja&project=develop-414913.png

  3. 汎用を選択。Enterprise edition featuresAdvanced LLM featuresはオフにしました。
    console.cloud.google.com_gen-app-builder_engines_hl=ja&project=develop-414913 (1).png

  4. アプリ名と会社名を入力して、続行
    console.cloud.google.com_gen-app-builder_engines_hl=ja&project=develop-414913 (2).png

  5. CREATE DATA STOREをクリック

    console.cloud.google.com_gen-app-builder_engines_hl=ja&project=develop-414913 (3).png

  6. Cloud Storageを選択

    console.cloud.google.com_gen-app-builder_engines_hl=ja&project=develop-414913 (4).png

  7. フォルダーを選択。この画面でフォルダーを作成することも可能
    console.cloud.google.com_gen-app-builder_engines_hl=ja&project=develop-414913(1280x720) (1).png

  8. Document chunkingを有効にし、Include ancestor headings in chunksにチェック
    データストア名を入力し、作成をクリック
    console.cloud.google.com_gen-app-builder_engines_hl=ja&project=develop-414913 (10).png

  9. 作成をクリック

    console.cloud.google.com_gen-app-builder_engines_hl=ja&project=develop-414913 (11).png

  10. しばらくするとドキュメントが登録されます。

    console.cloud.google.com_gen-app-builder_locations_global_engines_app_1712235562885_data_documents_hl=ja&project=develop-414913(1280x720).png

Vertex AI Search and Conversationを使ってみた。

プレビューメニューから検索ができます。

console.cloud.google.com_gen-app-builder_locations_global_engines_app_1712235562885_data_documents_hl=ja&project=develop-414913(1280x720) (1).png

自前で検索サイトを作った気分。すてき

LangChainのRetrieverをやってみた。

LangChainのドキュメントを参考に実施します。

まずはこちらを参考にgcloud CLIをインストールします。
Ubuntu環境の場合はこんな感じ。

sudo apt-get update
sudo apt-get install apt-transport-https ca-certificates gnupg curl
curl https://packages.cloud.google.com/apt/doc/apt-key.gpg | sudo gpg --dearmor -o /usr/share/keyrings/cloud.google.gpg
echo "deb [signed-by=/usr/share/keyrings/cloud.google.gpg] https://packages.cloud.google.com/apt cloud-sdk main" | sudo tee -a /etc/apt/sources.list.d/google-cloud-sdk.list
sudo apt-get update && sudo apt-get install google-cloud-cli

インストールができたら次のコマンドでログインします。

gcloud auth application-default login

Pythonのライブラリーをインストールします。

pip install -U google-cloud-discoveryengine
from langchain_community.retrievers.google_vertex_ai_search import (
    GoogleVertexAISearchRetriever,
)

PROJECT_ID = "*****"  # Set to your Project ID
LOCATION_ID = "global"  # Set to your data store location
SEARCH_ENGINE_ID = "app_*****"  # Set to your search app ID
DATA_STORE_ID = "datastore_*****"  # Set to your data store ID

retriever = GoogleVertexAISearchRetriever(
    project_id=PROJECT_ID,
    location_id=LOCATION_ID,
    data_store_id=DATA_STORE_ID,
    query_expansion_condition=0,
)

query = "DXとはなんですか?"

result = retriever.get_relevant_documents(query)
for doc in result:
    print(doc)

実行するとエラー

FailedPrecondition: 400 Cannot use enterprise edition features (website search, multi-modal search, extractive answers/segments, etc.) in a standard edition search engine. Please follow https://cloud.google.com/generative-ai-app-builder/docs/enterprise-edition#toggle-enterprise to enable Enterprise edition. Data store: datastore_*****

エンタープライズ機能が有効じゃないとLangChainで使えないのでしょうか?
エンタープライズ機能を有効にして再チャレンジ。

console.cloud.google.com_gen-app-builder_locations_global_engines_app_1712235562885_data_documents_hl=ja&project=develop-414913(1280x720) (2).png

それでも同じエラー。。
うまくいかない。。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0