AlphaからActionへ:AISDK5がAIネイティブCRM構築をいかに支援したか

VVercel
AI/미래기술창업/스타트업컴퓨터/소프트웨어

Transcript

00:00:00(アップビートな音楽)こんにちは、お招きいただきありがとうございます。
00:00:11私はジャック、同僚のニキータと一緒にLightfieldというAIネイティブなCRMを開発しました。
00:00:191月にAI SDK V4を使い始め、6月にV5がアルファ版でリリースされると同時に採用しました。
00:00:26今日は、
00:00:26顧客データへの安全で完全な読み取り・書き込みアクセス権を持つAIエージェントでシステムをどう構築したか、
00:00:34人間の判断が必要なワークフローの処理方法、
00:00:36そしてそれを実現させた設計判断についてお話しします。
00:00:40私たちが発見したパターン、
00:00:42そして検討したトレードオフ、
00:00:44さらにAI SDKが迅速な開発を可能にした方法についてご説明します。
00:00:49ですが、まずはCRMが抱える問題と、その重要性についてお話しします。
00:00:54CRMに詳しい方はいますか?
00:00:59いるかな?
00:01:00エンジニアの人とか?
00:01:01では、本来はこうなるはずですよね。
00:01:03顧客と話し始めます。
00:01:05創業者で営業をしているかもしれません。
00:01:07営業チームにいるかもしれません。
00:01:10最初は管理できます。
00:01:11みんなのことを覚えています。
00:01:13会話が全部頭に残っています。
00:01:16そして顧客が10社、
00:01:1720社、
00:01:1750社と増えていくと、
00:01:18営業チームのメンバーに聞かれるんです。「ねえ、
00:01:21AcmeのSarahは、
00:01:22うちの価格設定について何と言ってましたか?企業向けプランについて懸念はありましたか?」
00:01:26そこでSlackを検索します。
00:01:31メールを検索します。
00:01:32Googleドキュメントを検索します。
00:01:34まだ文字起こしされていないZoomの録画かもしれません。
00:01:382週間前のスレッドに埋もれているのを見つけますが、結局スプレッドシートを更新していなかったことに気づきます。
00:01:44そこでCRMを導入します。
00:01:47これが唯一の情報源になると約束しますが、結局もう一つ更新忘れの場所が増えるだけです。
00:01:52ここが問題です。
00:01:54従来のCRMは数十年前に、人間が手動でデータ入力するという前提で構築されました。
00:02:01決まった項目と事前定義されたスキーマを用意しましたが、
00:02:05会話の実際の背景や細かいニュアンスはメール、
00:02:09Slack、
00:02:09会議のメモなど、
00:02:11いろいろな場所に分散しています。
00:02:13そしてCRMは営業部長のためのレポート作成ツールになってしまい、営業活動を支援するツールにはなりません。
00:02:20だから、別の方法があるに違いないと考えました。
00:02:22もしシステムが単に情報を覚えていたら?
00:02:25すべてをインテリジェントにキャプチャして、あなたの代わりに行動を起こせたら?
00:02:30それがLightfieldです。
00:02:31つまりLightfieldは、CRMの概念を再定義するものです。
00:02:35スタートアップのための記憶と行動のシステムです。
00:02:39自動キャプチャ機能があります。
00:02:41会話、会議、メール、すべてが手作業なしで自動的にキャプチャされ、構造化されます。
00:02:50無損失メモリがあります。
00:02:52スキーマのリストとカスタマイズ可能なスキーマに対応しています。
00:02:54最初から何を追跡すべきかを知る必要はありませんし、設定のためにコンサルタントを雇う必要もありません。
00:02:58そして記憶を行動に変えます。
00:03:02Lightfieldは、
00:03:03構造化データと会話データの両方をキャプチャした情報を使って、
00:03:06フォローアップを下書きしたり、
00:03:08インサイトを浮き彫りにしたり、
00:03:10ワークフローを自動化したりします。
00:03:11従来、
00:03:12CRMは営業チームが営業案件を追跡するために構築されていますが、
00:03:16Lightfieldがこのすべての会話データをキャプチャして構造化するため、
00:03:20顧客との関係を覚えておく必要があり、
00:03:22それに基づいて行動する必要がある誰にとっても本当に強力になります。
00:03:26先週のオンボーディングで最もリクエストされた機能は何ですか?
00:03:31カスタマーサクセスチームがサポート会話全体のパターンを理解する。
00:03:35同じシステムで異なる質問ですが、すべてその同じメモリレイヤーで動きます。
00:03:40これが製品です。
00:03:41実際にどのように見えるのか示しましょう。
00:03:43これはLightfieldエージェントに質問する例です。
00:03:48停止している案件を5つ見つけて、それぞれに対してパーソナライズされたメールを下書きするよう求めています。
00:03:55AI SDKで構築したエージェントを使って、顧客情報全体を検索できます。
00:04:02停止している案件が何かを理解して、その情報を使ってすべての人々に対してカスタマイズ可能なメールを作成できます。
00:04:23これは一例です。
00:04:25そして、ユーザーは今、そのメールを送信するかどうか選択できます。
00:04:29では、このすべてはどのように機能しているのでしょうか?
00:04:34内部で何が起こっているかを一緒に見てみましょう。
00:04:37ユーザーがアクションを実行します。
00:04:39これはチャットメッセージを送信することかもしれません。
00:04:41メールやミーティング終了など、外部イベントやトリガーかもしれません。
00:04:47エージェントはすぐにコンテキストを得ます。
00:04:50ユーザーはアプリのどこにいますか?
00:04:52最近何をしていますか?
00:04:54そしてユーザーの意図は何ですか?
00:04:55どのツールが利用可能ですか?
00:04:57そしてLightfieldが起動します。
00:04:59関連データを検索してCRMで行動し、レコードと応答を更新します。
00:05:05これらすべてはUIに力を与える同じ統合データレイヤーを通じて起こります。
00:05:10どのようにこれを行うかお見せします。
00:05:11これがこれすべてを機能させる設計です。
00:05:15ここに3つの異なるインターフェースがあります。
00:05:19人間用のUI、自然言語用のエージェント、自動化用のワークフロージョブ。
00:05:26ここが重要です。
00:05:27これらはすべて同じ統合層、ドメインオブジェクトを通じて相互作用します。
00:05:32同じ権限を持ちます。
00:05:33エージェントはエージェントを実行しているユーザーと同じ権限を持ちます。
00:05:37同じビジネスロジックと同じデータアクセスパターン。
00:05:41異なるルールや制限されたアクセスを持つ別個のエージェントAPIはありません。
00:05:46ここでは、さまざまなシステムからストレージをまとめます。
00:05:51構造化データ、オブジェクトストレージ、そしてさまざまな検索プラットフォームにインデックスされています。
00:05:57同じ機能と同じインターフェースを提供します。
00:06:01プラットフォームを構築するために使用する原則の1つは、エージェントUIの同等性です。
00:06:10ユーザーがアクセスできれば、エージェントもアクセスできます。
00:06:14すべてのデータにわたる完全な読み取り、作成、更新機能。
00:06:19同じ権限、同じ可視性、同じ操作。
00:06:24これはプロダクトで、私たちが最初の日から行った設計上の選択です。
00:06:28これが、レガシーシステムにエージェントを追加するのではなく、AIネイティブから一から構築する理由です。
00:06:34Lightfieldのエージェントは、UIに力を与える同じデータレイヤーを通じて同じ権限であなたの代わりに行動します。
00:06:42彼らはあなたのデータへの別のインターフェースに過ぎません。
00:06:44つまり、
00:06:45Lightfieldを構築するツールを選ぶときは、
00:06:48エージェント対ユーザーで異なるアーキテクチャに私たちを強制しないプリミティブが必要でした。
00:06:54その制約は、私たちが選んだAIフレームワークを含む、スタック全体に影響を与えました。
00:06:58そして2025年のAI製品を構築することについてのことは、誰も完全なプレイブックを持っていないということです。
00:07:10つまり、完璧さよりも学習速度を最適化しようとしています。
00:07:14実は、Lightfieldでこの概念をドッグフードします。
00:07:19私たちのエンジニアリングチームが顧客の問題を理解する必要があるとき、彼らはCRMをナビゲートする必要はありません。
00:07:25ただそれを尋ねるだけです。
00:07:26つまり、自然言語は本当に私たちがそこで欲しいインターフェースです。
00:07:35AISDKは私たちに、すべてを書き直すことなく、これを繰り返す柔軟性を与えてくれました。
00:07:41ですが、重要なのはマインドセットです。
00:07:43私たちはフレームワークと戦ったり、
00:07:45抽象化を過度に設計したりするのではなく、
00:07:47機能を構築し、
00:07:48実際の問題を解決することに焦点を当てました。
00:07:50ここでの重要なポイントは、迅速に行動し、素早く学ぶことです。
00:07:53私たちは何度もこの引用に戻ってきました。
00:08:02Sandy Metzの「重複は誤った抽象化よりはるかに安い」。
00:08:08そしてこれは今日のAI製品の構築で非常に蔓延していると思います。
00:08:13今、ソフトウェアを迅速に構築するのは非常に高速です。
00:08:171年前よりもさらに高速です。
00:08:19そして、適切なフレームワークが存在することを確認することは本当に重要です。
00:08:23そして間違った抽象化を持つことはさらに費用がかかる可能性があります。
00:08:27では、これについてもっと実践的に話しましょう。
00:08:34Lightfieldを構築してきた中で、今年1月からAISDKを開発し始めました。
00:08:43モデル切り替えをサポートするために採用し、ストリームテキストの種類のプリミティブを使用し始めました。
00:08:54そして数週間で、特定のエージェントに初期タスクを出荷できました。
00:08:58そしてますますエージェントを構築し、チャット機能を追加し始めました。
00:09:042025年6月、リリースされたカスタム転送オプションのために、特にuseChat APIの採用を開始しました。
00:09:16ここでの主な点は、AISDKを採用でき、V4からアルファV5に移行できているということです。
00:09:25つまり、V6はかなり迅速に機能が移行するリリースされるようです。
00:09:34実は社内で冗談があって、AISDKから必要な機能を特定すると、翌日AISDKチームからツイートが見えるんです。
00:09:46そして今朝これを知ったんですが、Nicoはそれらのツイートを生成するエージェントを持っています。
00:09:51だから見るのは本当に面白いです。
00:09:53つまり、それはフレームワークから正確に欲しいものです。
00:09:57書き直しを強制したり、遅くなったりするのではなく、あなたと一緒に成長します。
00:10:00これは行動中のLightfieldの例です。
00:10:05チャットでは、質問を入力しています。このアカウントの次は何?
00:10:16Jordan Leeは最後の通話で何と言いましたか?
00:10:19ユーザーが何をしなかったかに注目してください。
00:10:21アカウントがStreamlined Protocolであることを言うか、
00:10:26特定のミーティングについて具体的に尋ねる必要はありませんでした。
00:10:30AISDKを使ってこれを構築したので、Adaptive Context Buildingと呼ぶ機能があります。
00:10:37ユーザーからの信号とインテリジェントな検索を組み合わせて、実際に重要なことを把握します。
00:10:45では、SDKを使ってこれを行う方法の例をいくつか共有させてください。
00:10:49SDKにはData Partsと呼ばれるAPIがあり、
00:10:54これを使ってコンテキストを構築しているサーバーにクライアントから信号を提供します。
00:11:01クライアント側では、
00:11:03異なるエンティティを使用し、
00:11:04Data Parts APIを使用して異なる信号を提供し、
00:11:08サーバー側で完全にこれをハイドレートできます。
00:11:11同僚のニキータに、Data Partsを使ってここでさらに多くの機能を構築する方法についてもっと話してもらいます。
00:11:19(アップビートな音楽)
00:11:24(アップビートな音楽)- ありがとうございました、ジャック。
00:11:28Adaptive Context Buildingと同様の別の例は、ファイルをチャットスレッドに挿入する方法です。
00:11:35AISDKはこれを非常に簡単に行う方法を提供しています。
00:11:39useChat フックからsend message関数を使用して、
00:11:44ユーザーのクエリとファイルリストを提供するだけで、
00:11:47そのまますべてのプロバイダーで機能します。
00:11:50ですが、これはスケーラビリティに関する実際的な懸念が生じます。
00:11:54例えば、ファイルを直接エンコードしている場合、データをデータベースに直接永続化しないようにするにはどうすればいいですか?
00:12:01S3 URLを使用している場合、
00:12:03プライベートユーザーデータをパブリックに誤って公開しないようにするにはどうすればいいですか?
00:12:09私たちの解決策は、
00:12:11クライアントがバックエンドに、
00:12:13私たち自身のデータストア内にアップロードされたファイルを参照する内部IDを送信することです。
00:12:21バックエンド側では、すべてのファイルパーツをイテレートして、それらの内部識別子を署名付きS3 URLに置き換えます。
00:12:30これにより、
00:12:31外部LMプロバイダーがこれらのアタッチされたファイルを引き続き表示できますが、
00:12:36署名付きURLの有効期限により、
00:12:39不正なアクセスが防止されます。
00:12:41Lightfieldでユーザーデータを保護する方法のもう1つの例は、
00:12:46コンテキスト付きツールコレクションのこの概念を通じてです。
00:12:50ユーザーがLightfieldのチャット製品と相互作用するときはいつでも、
00:12:56そのユーザーに特化したツールセットを動的に構築します。
00:13:00それらの依存関係をツールに直接挿入します。
00:13:03例えば、このデータ検索ツールでは、ユーザーのIDsをツール自体に直接挿入します。
00:13:11LLMは直接データベースにクエリを発行することはありません。
00:13:15常にCRMのUIの残りの部分を通じてユーザーがアクセスする同じ統合データレイヤーを通過します。
00:13:23つまり、CRMのUIとエージェントの機能の間の同等性を維持する設計哲学があります。
00:13:34ユーザーがUI内のこのモーダルインターフェースを通じてアカウント、
00:13:38オポチュニティ、
00:13:39連絡先などのCRMエンティティを作成できるように、
00:13:42チャットベースのインターフェースを通じて同じことを実行できるようにしたいと考えています。
00:13:48LLMはこれらのアカウントを作成するツール呼び出しを発行でき、
00:13:52ユーザーインターフェース内に表示されるのと同じ入力をレンダリングします。
00:13:57AISDKの人間の判断が必要なワークフローの抽象化を活用してこれを構築しました。
00:14:03これが基本的に機能する方法は、
00:14:05LLMが確認が必要なツール呼び出しを発行すると、
00:14:09そのツール呼び出しをフロントエンドクライアントに転送することです。
00:14:13クライアントはインターフェースをレンダリングしてツール結果を追加して、ユーザーのアクションに応じて追加します。
00:14:20バックエンド側では、その出力をLLMに送信する直前に、ユーザーが送信したものに応じて機能を実行します。
00:14:31私たちがこれをどのように行ったかについて説明するスキーマがここに表示されます。
00:14:37ユーザーの最初の入力はこのツール呼び出しです。
00:14:43LLMは入力値のセットを提案します。この場合、アカウント名とそのドメインを表す項目の配列です。
00:14:51ユーザーが値を編集した後、
00:14:53出力はユーザーの編集された値に、
00:14:56その特定の項目を承認したかどうかを示す追加フィールドになります。
00:15:03実際の関数が実行された後、LLMに送信される前に、その結果をツール出力に追加します。
00:15:11例えば、アカウント作成が成功したか、アカウントがCRMに既に存在するなど、何らかの理由で失敗したかどうか。
00:15:19これにより、LLMは相互作用の履歴を完全に可視化できます。
00:15:26元々提案された値と出力全体の流れが表示されます。
00:15:33これにより、適切に次のステップを提案する能力が与えられます。
00:15:38つまり、ユーザーがCRMを彼らのニーズに合わせて形作ることを可能にするという設計原則もあります。
00:15:45すべてのビジネスは自分たちについてのユニークな側面とユニークな営業プロセスを持っています。
00:15:52CRMをカスタマイズして、
00:15:54エージェントとのあなたの経験をカスタマイズしてあなたの特定のニーズに合わせることができるようにしたいのです。
00:16:00Lightfield内では、CRMエンティティのそれぞれについてカスタムデータモデルを構築できます。
00:16:08例えば、
00:16:09B2B事業の生産性ツールで、
00:16:11あなたのコーディングツールをスタートアップに売ろうとしている場合、
00:16:16顧客のテックスタック、
00:16:18エンジニアリングチームのサイズ、
00:16:20そしておそらく共通の投資家を追跡することに特に関心があるかもしれません。
00:16:26Lightfield内では、これらのタイプされたフィールドをすべて指定できます。
00:16:30そしてエージェントがそのプロセスでこれらのフィールドをどのように使用すべきかを指定できます。
00:16:38これらのフィールドの意味と、
00:16:40様々なバックグラウンドワークフローでそれらを更新するときにどのように使用すべきかについて、
00:16:46追加の指示を提供できます。
00:16:48例えば、
00:16:48フィールドを作成した場合、
00:16:51ウェブでの深い調査を行うことでそれをバックフィルするようにエージェントに要求でき、
00:16:57システム内のすべてのアカウントでこれらのフィールドを充実させます。
00:17:03または、
00:17:03会議の記録、
00:17:04メール、
00:17:05およびそのアカウントとの他の相互作用を含むCRMレコードを検索することでバックフィルするよう要求できます。
00:17:13バックエンドでのこれがどのように見えるかについては、
00:17:19あなたの会社の特定の構成に基づいてスキーマでこのツールをランタイムで作成します。
00:17:28実際のツールスキーマ自体はそのデータベースから派生しています。
00:17:32そしてLLMが値を提案するとき、スキーマと一致することを確認するためにタイプを検証します。
00:17:38これにより、これらの非常に柔軟で信頼性の高いツールを構築できます。
00:17:42Lightfield内では、ビジネスについてLLMに追加のコンテキストを提供できる知識セクションも設定できます。
00:17:53会社の製品に関する情報と、
00:17:56会議準備などのバックグラウンドワークフローをLLMがどのように実行すべきかについての指示を提供できます。
00:18:06すべてのミーティングの前に、
00:18:08Lightfieldはあなたのためにドキュメントを準備し、
00:18:12あなたをその議論のために準備させます。
00:18:15主要な参加者とそれらに関する追加情報をリストアップします。
00:18:19あなたが会っている特定のアカウントについての情報、および他の重要な主要なディスカッションポイントをリストアップします。
00:18:27ミーティング後、あなたが議論したことに基づいて、フォローアップアクションアイテムと推奨されるフィールド更新を提案します。
00:18:35これらすべての基本的な構成要素は、強力な新機能をロック解除するために組み合わります。
00:18:42Lightfieldはすべての営業相互作用の完全なコンテキストを持ち、
00:18:47高度なカスタマイズされた知識を持っているため、
00:18:51あなたの代わりに高品質なメールを迅速に生成するために協力できます。
00:18:56例えば、ミーティング後、このツールを使ってGoogleカレンダーにアクセスしてあなたの可用性を表示できます。
00:19:05このドラフトメールアーティファクトが生成されると、
00:19:08あなたの以前のディスカッションに基づいて適切にフォローアップ時間を提案できます。
00:19:14これらのドラフトメールはまだユーザー承認の背後にあるので、
00:19:18LLMエージェントが明示的な承認なしに行動を起こさないことを確信できます。
00:19:25これらのフォローアップアクションアイテムとメールドラフトがあなたのために準備され、
00:19:30あなたに通知が送信されるので、
00:19:32あなたが取り組んでいるすべてのディールの上にとどまることを確認するのに役立ちます。
00:19:37さて、これをすべてまとめるために、ジャックに戻ります。
00:19:43- ええ。
00:19:46(観客の拍手)ありがとう、ニキータ。
00:19:53Lightfieldを構築しながら発見したコア原則。
00:19:59原則1、エージェントUI安全同等性。
00:20:03最初の日から設計されたもの。
00:20:05エージェントは人間が使用する同じデータレイヤーを通じて完全な読み取り・書き込みアクセスが必要です。
00:20:09別個のエージェントAPIを構築しないでください。
00:20:11複数のシステムを保守することになり、どちらも完全には感じられません。
00:20:15原則2、完璧な抽象化よりも高速な反復。
00:20:19早期に完璧さではなく学習速度を最適化します。
00:20:23チャットエージェント、API機能、バックグラウンドワークフローの全体で同様に見えるコードがありました。
00:20:28特にコンベンションが形成されている場合、いくつかの複製は本当に間違った抽象化よりも安いです。
00:20:35原則3、ユーザーが信頼する人間の判断が必要なワークフロー。
00:20:41人々は特に高リスクの相互作用で管理下にある必要があります。
00:20:45ツールレイヤーをインターセプトしました。
00:20:48エージェントは元の提案、ユーザーの編集、実行結果を見ます。
00:20:53完全な透明性、完全な履歴。
00:20:56それが信頼を勝ち取ることです。
00:20:58原則4、プログラム可能なシステム、ユーザーとエージェント。
00:21:02実際の顧客にはカスタムデータモデルが必要です。
00:21:04すべてのビジネスは異なる方法で物事を追跡します。
00:21:07ユーザーとエージェントの両方が新しいフィールドを定義でき、システムがそれに適応できます。
00:21:13これは、顧客がデータを構造化する方法に製品が形作られ、その逆ではないことを意味します。
00:21:18構築するのはより複雑ですが、人々が容認する製品と、なくては生きられない製品の違いです。
00:21:24あなたが構築しているもの、発見しているパターンについて聞きたいです。
00:21:28後で私たちを見つけるか、lightfield.appで確認してこれらの原則を実際に見てください。
00:21:34ありがとうございました。
00:21:35(アップビートな音楽)

Key Takeaway

AI SDKを基盤に、ユーザーとエージェントが同じデータレイヤーとロジックを共有する設計原則に基づいて、AIネイティブなCRMシステムを構築し、営業チームの記憶と行動を効率化する。

Highlights

AI SDKを活用することで、従来のCRMシステムの更新忘れと情報分散の課題を解決するAIネイティブCRMを実現

エージェント・UI安全同等性の原則により、ユーザーと同じデータレイヤーと権限でAIエージェントを操作

Data Partsなどの技術を使用して、クライアント側からサーバー側にコンテキストを構築し、スケーラブルで安全なファイル処理を実現

人間の判断が必要なワークフローをツール呼び出しの層で中断・検証することで、ユーザーの信頼を獲得

カスタムデータモデルと知識セクションにより、企業固有のビジネスプロセスに合わせてシステムを柔軟にカスタマイズ可能

完璧な抽象化よりも学習速度を優先し、重複したコードを許容することで、迅速な反復開発を実現

ミーティング前後の自動準備と推奨されるアクションアイテムにより、営業チームの生産性を大幅に向上

Timeline

発表者紹介とLightfieldの概要

ジャックとニキータが、1月にAI SDK V4を導入し、6月にV5のアルファ版でLightfieldというAIネイティブCRMを開発したことを紹介します。本発表では、顧客データへの安全で完全な読み取り・書き込みアクセスを持つAIエージェントの構築方法、人間の判断が必要なワークフローの処理、そしてそれを実現させた設計判断について説明することを予告しています。発見したパターン、検討したトレードオフ、AI SDKが迅速な開発を可能にした方法について詳しく述べる予定です。

従来のCRMシステムの課題と問題点

従来のCRM導入前は、創業者や営業チームが顧客情報をすべて頭で管理していましたが、顧客数が増えると情報が分散化することが課題となります。Slackメール、Googleドキュメント、文字起こしされていないZoom録画など、複数の場所に顧客情報が散在し、必要な情報を見つけるのに時間がかかってしまいます。従来のCRMは数十年前に人間の手動入力を前提に構築された数十の定義済みスキーマを提供していますが、実際の会話の背景やニュアンスは依然として異なるツールに分散しています。その結果、CRMは営業部長のレポート作成ツールになってしまい、営業活動を支援するツールにはなりません。

Lightfieldの新しいアプローチ:記憶と行動のシステム

Lightfieldは、CRMの概念を再定義するスタートアップ向けの記憶と行動のシステムです。会話、会議、メールがすべて手作業なしで自動的にキャプチャされ構造化される自動キャプチャ機能を備えています。スキーマのリストとカスタマイズ可能なスキーマに対応しており、最初から何を追跡すべきかを知る必要も、設定のためにコンサルタントを雇う必要もありません。Lightfieldは構造化データと会話データの両方をキャプチャした情報を使用して、フォローアップを下書きしたり、インサイトを浮き彫りにしたり、ワークフローを自動化したりします。営業チーム以外に、カスタマーサクセスチームがサポート会話全体のパターンを理解するなど、様々なユースケースに対応できます。

製品デモ:停止している案件への自動対応

Lightfieldエージェントに「停止している案件を5つ見つけて、それぞれに対してパーソナライズされたメールを下書きする」という自然言語のリクエストを入力する例が紹介されます。AI SDKで構築したエージェントは、顧客情報全体を検索して停止している案件を理解し、その情報を使ってすべての人々に対してカスタマイズ可能なメールを作成することができます。生成されたドラフトメールはユーザーが送信するかどうかを選択することができ、エージェントが明示的な承認なしに行動を起こさないことを確認できます。このような自動化により、営業チームは価値の高い活動に時間を使うことができるようになります。

システムアーキテクチャ:統合データレイヤーの設計原則

Lightfieldのアーキテクチャには、人間用のUI、自然言語用のエージェント、自動化用のワークフロージョブという3つの異なるインターフェースがあり、すべてが同じ統合層とドメインオブジェクトを通じて相互作用します。これら3つのインターフェースは同じ権限、同じビジネスロジック、同じデータアクセスパターンを持っており、別個のエージェントAPIは存在しません。構造化データ、オブジェクトストレージ、検索プラットフォームなど様々なシステムからストレージが統合され、同じ機能と同じインターフェースを提供しています。このエージェント・UI安全同等性の原則により、ユーザーがアクセスできるあらゆるデータに対して、エージェントも完全な読み取り、作成、更新機能を持つようになります。

AI SDKの採用経緯と迅速な反復開発

Lightfieldの開発チームは1月からAI SDKを採用し始め、モデル切り替えをサポートするためにストリームテキストの種類のプリミティブを使用しました。数週間で特定のエージェントに初期タスクをシップすることができ、その後ますますエージェントを構築してチャット機能を追加しました。2025年6月にカスタム転送オプションのためにuseChat APIの採用を開始しています。重要な点は、V4からアルファV5への移行が可能であり、AI SDKが新機能をかなり迅速にリリースするということです。完璧さよりも学習速度を最適化するというアプローチにより、AI SDKチームが欲しい機能を特定すると翌日にツイートが見えるという社内ジョークもあり、フレームワークがユーザーと一緒に成長することを示しています。

Adaptive Context BuildingとData Partsの活用

Lightfieldのチャットで「このアカウントの次は何か?」「Jordan Leeは最後の通話で何と言ったか?」という質問に、ユーザーが具体的なアカウント名や特定のミーティング情報を指定する必要がないという例が紹介されます。これはAdaptive Context Buildingという機能で、ユーザーからの信号とインテリジェントな検索を組み合わせて、実際に重要なことを把握します。AI SDKのData Parts APIを使用することで、クライアント側から異なるエンティティと信号をサーバー側に提供し、完全にコンテキストをハイドレートできるようにしています。このアプローチにより、複雑なコンテキスト構築を効率的に実現しています。

ファイルアップロードのセキュリティ実装

ニキータが、useChat フックのsend message関数を使用してファイルをチャットスレッドに挿入する方法を説明します。これはすべてのプロバイダーで機能しますが、スケーラビリティに関する課題が生じます。ファイルを直接エンコードしている場合、データがデータベースに直接永続化されないようにし、S3 URLを使用している場合、プライベートユーザーデータが誤ってパブリックに公開されないようにする必要があります。解決策として、クライアントがバックエンドに内部IDを送信し、バックエンド側でこれらの内部識別子を署名付きS3 URLに置き換えます。これにより、外部LMプロバイダーがファイルを表示できますが、署名付きURLの有効期限により不正なアクセスが防止されます。

コンテキスト付きツールコレクションによるセキュリティと権限管理

Lightfieldのチャット製品と相互作用するときは、そのユーザーに特化したツールセットが動的に構築されます。ユーザーのIDがツール自体に直接挿入されるため、LLMは直接データベースにクエリを発行することなく、常にCRMのUI全体と同じ統合データレイヤーを通じてアクセスします。このコンテキスト付きツールコレクションのアプローチにより、CRMのUIとエージェント機能の間で同等性を維持する設計哲学が実現されます。ユーザーがUIのモーダルインターフェースを通じてアカウント、オポチュニティ、連絡先などのCRMエンティティを作成できるように、チャットベースのインターフェースを通じても同じ操作ができるようになります。

人間の判断が必要なワークフローの実装

AI SDKの人間の判断が必要なワークフロー抽象化を活用して、LLMが確認が必要なツール呼び出しを発行する際、そのツール呼び出しをフロントエンドクライアントに転送する実装が説明されます。クライアントはインターフェースをレンダリングしてツール結果を追加し、ユーザーのアクションに応じて追加します。バックエンド側では、その出力をLLMに送信する直前に、ユーザーが送信したものに応じて機能を実行します。このプロセスにより、LLMは元々提案された値、ユーザーの編集、実行結果までの完全な履歴を可視化できるようになり、適切に次のステップを提案する能力が与えられます。完全な透明性と完全な履歴により、ユーザーはシステムを信頼できるようになります。

カスタムデータモデルとビジネス固有のニーズへの対応

ユーザーがCRMを自分たちのニーズに合わせて形作ることができるという設計原則が説明されます。すべてのビジネスは自分たちについてのユニークな側面とユニークな営業プロセスを持っており、B2B事業の場合、顧客のテックスタック、エンジニアリングチームのサイズ、共通の投資家などを追跡したいかもしれません。Lightfield内では、CRMエンティティのそれぞれについてタイプされたフィールドを指定でき、エージェントがそのプロセスでこれらのフィールドをどのように使用すべきかを指定できます。スキーマは会社の特定の構成に基づいてランタイムで作成され、LLMが値を提案するとき、スキーマと一致することを確認するためにタイプが検証されます。これにより、これらの非常に柔軟で信頼性の高いツールが構築できます。

知識セクションとミーティング準備の自動化

Lightfield内では、ビジネスについてLLMに追加のコンテキストを提供できる知識セクションも設定できます。会社の製品に関する情報と、ミーティング準備などのバックグラウンドワークフローをLLMがどのように実行すべきかについての指示を提供できます。すべてのミーティング前に、Lightfieldはドキュメントを準備して主要な参加者とそれらに関する追加情報をリストアップし、会っている特定のアカウント情報と他の重要な主要ディスカッションポイントをリストアップします。ミーティング後には、議論内容に基づいてフォローアップアクションアイテムと推奨されるフィールド更新を提案します。これらのドラフトメール、ミーティング前の準備資料、ミーティング後の推奨事項は、営業チームがすべてのディールの上にとどまることを確認するのに役立ちます。

コア設計原則の総括と実装への影響

Lightfieldを構築しながら発見した4つのコア設計原則が総括されます。第1に、エージェント・UI安全同等性であり、最初の日から設計されたもので、エージェントは人間が使用する同じデータレイヤーを通じて完全な読み取り・書き込みアクセスが必要とされます。第2に、完璧な抽象化よりも高速な反復で、早期に完璧さではなく学習速度を最適化することです。第3に、ユーザーが信頼する人間の判断が必要なワークフローで、人々は特に高リスクの相互作用で管理下にある必要があります。第4に、プログラム可能なシステムで、ユーザーとエージェントの両方が新しいフィールドを定義でき、システムがそれに適応できるようにします。これらの原則により、人々が容認する製品ではなく、なくては生きられない製品が構築できるということが述べられています。

Community Posts

View all posts