## コンプライアンスチェックWebサービス開発
### 使用言語やツール
フロントエンド:React, TypeScript
バックエンド: TypeScript, Lambda (Hono API) , ElectroDB
インフラ構築: AWS, CDK
バージョン管理ツール:GitHub
コミニケーションツール:Slack
### 担当箇所
フロントコーディング・設計・実装・テスト
バックエンド実装、メンテナンス
インフラ構築
## 機能開発
#### AIエージェントを利用した自動化ワークフローの構築
- 0 -> 1 のプロジェクト立ち上げから開発チームとして関わりました。プロダクト開発では Claude Code での AI 開発を積極的に取り入れたことで、インフラ、バックエンド、フロントエンド全体の開発スピードの向上、品質の向上に繋がりました。
また、立ち上げ時ということで、ビジネス側での顧客インタビューや、企画などにも積極的に参加し、仮説を立てて開発側が自ら要件定義を行うなど、ビジネス側、開発側という役割にとらわれず、より良いプロダクトを作るために密にプロジェクトを進めていくことで、ストイックなロードマップだったのにも関わらず、期間どうりに達成することが出来ました。
- 開発で特に難しかったこと
通常のワークフロー開発では、一定のパターンが想定できるので調整などもやりやすいのですが、ワークフロー内に AI の推論を含めることで、AI の出力がプロンプトや設定値を厳重に設定したとしても、出力が不安定になってしまう & AI がブラックボックスのため修正方法も検討がつかない状態でした。また、AI でのチャット機能に関しては Web に情報はあるのですが、固定のフォーマットでの出力(JSON 出力)に対する情報が少なかったです。
- どうやって達成できたか
使用していた LLM のモデルは Anthropic が出している Claude でしたが、Anthropic の出しているテックブログなどを読み込み、LLM がどういったプロセスで処理を実行しているのかを改めて整理し、色々と試行錯誤した結果、ツール実行で出力される形式は JSON 出力限定になるということを知り、AI エージェントでの通常の最終出力から処理するのではなく、JSONスキーマ構造を入力スキーマでもつ空のツールを AI エージェントで必須に実行させることで、ツール実行で出力されるものは確実にJSONスキーマ構造を準拠することが出来、AI を含めたワークフローの実行が安定するようになりました。