動機
Gensparkを使っての勉強がめちゃくちゃ捗ったのでみんなに知ってほしくて、とりあえず実体験を書きなぐろうと思った次第です
対象の読者
- エンジニア
- 調べものをよくする人
- 新しい技術への探求をしたい人
- ブログを読むのが好きな人
Gensparkって何?
https://www.genspark.ai/
AIを使った検索エンジンです。
せっかくなので本人に答えてもらいました
Gensparkの概要
Gensparkは、2023年に設立されたAI駆動の検索エンジンで、特に情報の収集と整理に特化しています。このサービスは、ユーザーからの質問に基づいて複数の情報源を参照し、要約された情報を提供することが特徴です。
こんな感じで記事にしてくれたりもします
https://www.genspark.ai/spark/genspark%E3%81%A8%E3%81%AF%E4%BD%95%E3%81%A7%E3%81%99%E3%81%8B/65e81fa5-60b6-4a4e-84fd-fb491c137b13
私の体験
出発
AWSの新しいサービスって、ぱっと見で「すごい!」って思っても、どこでどう使うのかがいまいちイメージがわかない事って多いですよね?
そんな時はQiitaとかで誰かがサンプルコード書いていないかな~って探したり、実際に自分でちょっと書いてみたりして理解を深めて、プロダクトのどこかで使いたいなーって思って知見を温めたりって事よくあると思うんですよ
ただこれって、自分が本当に欲しい情報を手に入れられるまでにかなりの量の文献を読んで、実際に読んだ文献が的外れだったり、古かったり、本当に知りたい情報からちょっとだけずれていたりって事がよくあると思うんですよね
「エンジニアはググる力が重要」とはよく言ったものですが、今はAIの時代なのでAIに調べてもらいました
実際にやったこと
生成AIを使ったチャットボットを作る時に、AWSのサービスだったら何を使うべきかってところを調べてもらいました
みんなAWS大好きですからね
ChatGPTとか言っているけど実はAWSで出来るならAWSでやりたいですよねわかります
ただこれを1から全部調べるとなると大変なので、Gensparkに調べてまとめてもらいました
その結果がこちらになります
https://www.genspark.ai/spark/aws%E7%94%9F%E6%88%90ai%E3%83%81%E3%83%A3%E3%83%83%E3%83%88%E3%82%B7%E3%82%B9%E3%83%86%E3%83%A0%E3%81%AE%E8%A8%AD%E8%A8%88%E3%81%A8%E5%AE%9F%E8%A3%85/7dc06d0f-c76d-443c-8314-8d80f14872aa
プロンプトは?
今回は「ディープサーチ」という機能を使って検索をしてもらいました
最初の指示はこれだけ
AWSで生成AIを使って自動応答チャットを作る構成図のサンプルをください
そうすると思考プロセスを挟んで以下のレスポンスが来ました
構成図の詳細要件を正確に把握するため、いくつか確認させてください。これにより実際のユースケースに最適なサンプルを提案できます。
- 想定している生成AIの種類(AWS Bedrockの組み込みモデル vs 独自LLM/ChatGPT等)は決まっていますか?
- 主要な統合要件(他システム連携/ユーザー認証方式/マルチ言語対応)について教えてください
- 特に重視する要件(コスト最適化/低レイテンシ/監査機能)はありますか?
なるほど、確かにどう活用するかで提案は変わってきますね
というわけでこんな返答をしました
今回の質問の意図は技術調査にあります
AWSの生成AI分野に活用出来るサービスの理解を深める事が今回一番重要な事なので、特にそこに留意してサンプルを提示してください
ユーザーのインターフェースにあたる部分についてはそれほど重要ではありません
webアクセスから生成AIサービスに渡す部分やデータのやり取りの保持方式を重点的に確認したいです
なので、外部サービスについての考慮は不要です
そうすると、こんな感じで実際に検索とまとめに進んで良いかと確認が入ります
まず主要AWS生成AIサービスの機能比較から開始し、次にデータフロー中心のアーキテクチャパターンを分析します。具体的には(1)AI処理サービス選定 (2)Webリクエスト処理パイプライン構成 (3)中間データ管理方式の3段階で要件分解。各ステップでサービス仕様・通信方式・データ保存方法を抽出し、最終的にAPI Gateway→Lambda→Bedrock→DynamoDBの基本フローを明確化します。
- AWSが提供する生成AIサービス(Bedrock/SageMaker/JumpStart等)の入力出力仕様・API対応状況・統合可能性に関する技術仕様を収集
- API Gateway・Lambdaを介したリクエスト処理フローの代表的なパターンとエラーハンドリング方式を特定
- DynamoDB/S3/Redshiftを用いたログ保管・会話履歴保存の実装パターンを分析
最初に、「構成図をくれ」って言ったものの、この提案を見てアプリケーション層の実装がわからないと結局具体的にプログラムを書くところまでイメージがしにくいなと思い、プランの編集依頼をして以下を追加注文しました
Lambdaではnodejsを使う前提で考えてください
また、Bedrockへの接続方法についてアプリケーションレイヤーでのサンプルコードや必要ライブラリについても言及があると嬉しいです
また、会話ログを元に返答が適切だったかの強化学習を行いたいので、生成AIの層に対してプロンプトの修正やナレッジの共有、返答の正誤判定などのフローを考慮してください
それで改めて提示されたプランがこちら
技術調査の進め方: まずAWSの生成AIサービス(Bedrock/SageMaker/JumpStart)のAPI仕様と統合パターンを比較します。次にNode.jsのLambda関数からBedrockを呼び出す具体的なコード例(認証処理・リクエストフォーマット・エラーハンドリング)を収集。DynamoDBのテーブル設計パターン(会話セッション管理、プロンプトバージョン管理)と、ログ分析を用いた強化学習フロー(Amazon Kinesis Data Analyticsによるフィードバック分析)を整理します。最後にこれらの要素を組み合わせたリファレンスアーキテクチャを作成します。
- AWS BedrockのREST APIエンドポイント仕様、リクエスト/レスポンス形式、Node.js用SDK/ライブラリの具体的な実装方法を特定。Lambdaのランタイム環境における依存関係管理パターンを整理
- 会話セッションの追跡に必要な主キー設計、タイムスタンプ管理、プロンプトバージョニングを考慮したテーブル構造を調査。TTL設定によるログ保持期間管理方法を含む
- ユーザーフィードバックの収集方法、返答品質評価指標の定義、評価結果をBedrockに反映するパイプライン設計を明確化
まあ良さそうな方針だと思い実行指示を出したところ、まとめられた記事が先に共有したURLとなります
もう一言
実際に全てのタスクが終わった後に、以下のセクションが追加されました
興味深い事実
この研究は、OpenAIのo3-mini-highやDeepSeek R1のようなトップ推論モデル間の協力を通じて実施され、GPT、Claude、Geminiのようなエージェントによって洞察が検証されました。このマルチエージェントアプローチは信頼性と深さを高め、高品質なレポートを生み出します。
Gensparkエージェントによって調査された134のソースの総語数は、67,000字から107,200字と推定されています。平均読書速度が1分あたり200から250語の場合、それは8時間近い読書 - ほぼ1日の作業に相当します。
でも、その時間と脳力を費やす必要はありません。Gensparkエージェントがすべての重労働を引き受けます:読む、分析する、処理する - だからあなたは本当に重要なことに集中できます。
これはマジでそう
普通にAWSサービスの扱いとか構成の中のどこに組み込むのか、組み込めるのかみたいなのを調べてたら半日とか1日とかあっという間に過ぎてしまいますからね
ものの15分ぐらいでこれだけの情報がまとまって出てくるのですから時代は変わったなと思った次第です
まとめ
AIを使ったサービスが続々と出てきていますが、今後はこういったサービスをうまく活用出来るかが生産性に直結するんだなと改めて思い知らされました
あとはこういったサービスを作る側にいかに回るか、みたいな問題とかを考えたり、情報収集の効率化が進んだ結果、情報のノイズによる雑学の獲得の機会が奪われていくのかなと思ったりとか、とにかく新しい時代を感じております
時代に食らいついていきたいものです