0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

チュートリアル: Higressを使用したDeepSeek Web Searchの実装

Last updated at Posted at 2025-03-14

本記事はこちらのブログを参考にしています。
翻訳にはアリババクラウドのModelStudio(Qwen)を使用しております。

HigressでDeepSeekウェブ検索をサポートするためのステップバイステップガイド

以前、HigressがDeepSeekウェブ検索をサポートする記事をこちらに公開しましたが、ステップバイステップのガイドが不足していました。この記事ではそれを補足し、この機能に興味のある方々を支援することを目指します。Higressのインストールプロセスについては繰り返しません。代わりに、すでにインストールされているHigressのインスタンスから始めましょう。

ステップ 0: DeepSeek APIキーの設定

Higressのインストール中にDeepSeek APIキーを入力しなかった場合、ここで設定できます。

ステップ 1: 検索エンジンAPIドメインの設定

まず、Higressコンソールで、さまざまな検索エンジンのドメイン名をサービスオリジンを作成して設定します。

  • Google検索APIドメイン: customsearch.googleapis.com
  • Bing検索APIドメイン: api.bing.microsoft.com
  • Quark検索APIドメイン: cloud-iqs.aliyuncs.com
  • Arxiv APIドメイン: export.arxiv.org

設定後、対応するAPIキーの申請も必要です。Quark検索のAPIキー申請について(GoogleとBingはオンライン情報が豊富なので詳細は省略、Arxivは無料でAPIキーは不要):
まず、Alibaba Cloudアカウントが必要です。次に、Alibaba CloudコンソールでIQSを検索し、IQSコンソールに入り、APIキーを生成します。

詳細はIQSのドキュメントをご覧ください: https://help.aliyun.com/document_detail/2870227.html

ステップ 2: AI検索プラグインの設定

Higressバージョン2.1.0より前の場合、AI検索プラグインをカスタムプラグイン経由でインポートする必要があります。

プラグインのOCIイメージアドレスに注意してください: higress-registry.cn-hangzhou.cr.aliyuncs.com/plugins/ai-search:latest
最新版のAI検索プラグインを使用する場合、安定版を希望する場合はタグを1.0.0に変更してください。デフォルトの実行ステージを選択し、実行優先度を100より大きい値に設定します(これにより、AI検索プラグインがLLMプロバイダーへの転送直前に実行され、プロンプトを変更します)。プラグイン追加後、以下のように設定します。

設定例:yaml

needReference: true # 結果にウェブページの参照情報を含める場合はtrueに設定
promptTemplate: | # 組み込みテンプレートを使用する場合は設定をスキップ可能

以下の内容はユーザーが送信したクエリに基づく検索結果です:

{search_results}
私が提供する検索結果では、各結果は「[webpage X begin]...[webpage X end]」の形式で表示されます。Xは各記事のインデックス番号を表します。適切な箇所で文末に引用を追加してください。回答内の対応部分には引用番号]の形式を使用してください。ある文が複数の文脈から派生している場合、関連するすべての引用番号をリストアップしてください(例: [3][5])。引用を文末にまとめるのではなく、回答の該当部分にリスト化してください。回答時には次の点に注意してください:

  • 北京時間での今日の日付は: {cur_date}です。
  • 検索結果のすべてのコンテンツがユーザーの質問と密接に関連しているわけではありません。質問に基づいて検索結果を判断し、フィルタリングしてください。
  • リスト型の質問(例: すべてのフライト情報をリスト化)の場合、回答は10項目以内に収め、完全な情報を確認するには検索元をチェックするようユーザーに通知してください。最も包括的で関連性の高い情報を優先的に提供し、検索結果にない情報を自発的に提供しないでください(必要な場合を除く)。
  • 創作型の質問(例: 論文作成)の場合、本文中に関連する参考文献を引用し(例: [3][5])、記事の最後にのみ記載するのではなく、ユーザーのトピック要件を解釈・要約し、適切なフォーマットを選択し、検索結果を最大限活用して重要な情報を抽出し、ユーザーの要求を満たす回答を生成してください。深く考え、創造的で専門的なアプローチを取り入れてください。可能な限り長さを延ばし、各ポイントにおけるユーザーの意図を仮定し、できるだけ多くの角度から情報を提供し、内容を充実させ、詳細な議論を行ってください。
  • 回答が長い場合、要約を段落に分けて構造化してください。ポイントごとに回答する場合、5項目以内に収め、関連する内容を統合してください。
  • 客観的なQ&Aの場合、回答が非常に短い場合は、内容を充実させるために1つか2つの関連する文を追加してください。
  • ユーザーの要件や回答内容に応じて、適切で美的なフォーマットを選択し、高い可読性を確保してください。
  • 回答は複数の関連するウェブページを統合して応答し、単一のウェブページを繰り返し引用しないようにしてください。
  • ユーザーが別の言語を指定しない限り、質問と同じ言語で回答してください。

ユーザーのメッセージは:

{question}
searchFrom: # 以下は設定済みの検索エンジンオプションのリストです。必要なものだけ設定してください

  • type: quark
    apiKey: your-quark-api-key # 👈 ここにあなたのキーを入力
    serviceName: quark.dns
    servicePort: 443
  • type: google
    apiKey: your-google-api-key # 👈 ここにあなたのキーを入力
    cx: your-search-engine-id # 👈 ここにあなたのエンジンIDを入力
    serviceName: google.dns
    servicePort: 443
  • type: bing
    apiKey: bing-key # 👈 ここにあなたのキーを入力
    serviceName: bing.dns
    servicePort: 44
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

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?