12時間でAI気候意思決定エンジンを構築する

ほとんどのカーボンフットプリント・アプリは失敗に終わります。

数値を示すだけ、あるいは一般的なアドバイスを与えるだけです。意識を高めるだけでは、行動は変わりません。自分のフットプリントがCO2 8トンであることを知ったところで、次に何をすべきかは分かりません。

私はこの問題を解決するためにClimbitを構築しました。これは計算機ではありません。意思決定エンジンです。それは一つの問いに答えます。「今すぐ取れる最善の行動は何か?」

The Core Logic

ほとんどのツールは測定に焦点を当てていますが、Climbitは意思決定に焦点を当てています。システムは以下の項目を確認します:

  • 通勤
  • 家庭のエネルギー
  • 食事と食生活
  • 旅行

二酸化炭素削減量、コスト、労力、および関連性に基づいて、行動の優先順位を付けます。

The Engineering Split

私は重要な選択をしました。数学的処理とAIを分離したのです。

大規模言語モデルは数学が苦手です。数値をハルシネーション(捏造)することがあります。Climbitでは、AIが排出量を計算することはありません。

ワークフローは以下の通りです:

  1. テキスト、音声、またはレシートの画像を通じてデータを提供します。
  2. Geminiがデータを構造化されたJSONに抽出します。
  3. TypeScriptエンジンが実際の計算を行います。
  4. AIが結果を解釈し、パーソナライズされたプランを提示します。

これにより、データの正確性とパーソナライズされた体験を両立させています。

The Tech Stack

  • Next.js 15 and React 19
  • TypeScript and Tailwind CSS
  • Supabase and Clerk
  • Google Gemini 1.5 Flash
  • Vitest and Playwright

Solving Real Problems

これを構築するには、困難な技術的問題を解決する必要がありました:

  • Hydration(ハイドレーション):Rechartsがサーバーサイドレンダリング中にエラーを引き起こしました。クライアントがマウントされるまでチャートのレンダリングを遅延させることで解決しました。
  • Security(セキュリティ):トークンバケット方式のレートリミッターを実装しました。これにより、高コストなAIエンドポイントの悪用を防ぎます。
  • Accessibility(アクセシビリティ):セマンティックHTMLとARIAラベルを使用しました。アクセシビリティは後回しにするものではなく、必須要件です。

The Lesson

AIはコーディングを加速させますが、アーキテクチャに取って代わるものではありません。

私は時間の大部分を以下に費やしました:

  • Hydration問題の修正。
  • エッジケースの検証。
  • セキュリティの強化。
  • 信頼性の向上。

デモと製品の違いは、こうした細部にあります。人々が必要としているのは、さらなる気候データではなく、より良い気候に関する意思決定なのです。

Source: https://dev.to/divyanshu_sinha_72e579e28/-building-climbit-an-ai-climate-decision-engine-in-under-12-hours-3pnc

Optional learning community: https://t.me/GyaanSetuAi