読み込み中...

人間の得意な部分、苦手な部分を把握したうえで、AIのサポートを考えてみよう

人間の得意な部分、苦手な部分を把握したうえで、AIのサポートを考えてみよう

面白い視点ですね!人間の得意な部分と苦手な部分を理解することで、AIがどのように補助できるかをより効果的に考えられますね。

人間の得意な部分

  • 創造性と直感: 人間は新しいアイデアを生み出したり、感覚的に物事を理解したりするのが得意です。
  • 共感と感情: 感情を持ち、他者と共感する能力があります。社会的なつながりを築くことが不可欠です。
  • 柔軟な思考: 未知の状況に適応し、多様な解決策を考える力があります。
  • 経験と文脈の理解: 長い歴史や文化の背景から学び、物事を総合的に判断できます。

人間の苦手な部分

  • 大量のデータ処理: 短時間で膨大な情報を正確に処理するのは難しい。
  • 単純作業の繰り返し: ルーチンワークや単純な作業の繰り返しにはミスが出たり、集中力が続きにくい。
  • 客観性の維持: 感情やバイアスに影響されやすく、完全な客観性を保つのは難しい。
  • 情報の正確な記憶: 人間の記憶は曖昧で、間違いが起こりやすい。

AIがサポートできる領域

  • データ処理・分析: 膨大な情報を素早く処理し、最適な意思決定を支援。
  • 自動化と効率化: 繰り返しの作業をAIが担い、人間がより創造的な仕事に集中できるようにする。
  • 客観的な判断の支援: 感情やバイアスを排除し、データに基づく冷静な判断をサポート。
  • 記憶の補助: 正確な情報の検索と管理を行い、人間の記憶を補強。

あなたのシステム設計への関心を踏まえると、AIを活用したユーザーの負担軽減や自動化には興味があるのではないでしょうか?たとえば、モデル管理やワークフローの最適化にAIを組み込むことができるかもしれませんね。どう思いますか?

何かを作り上げる場面において、作るべきものを企画し、何をつくるのかを明確にしたとしても、そこから先が思い通りにならない場合があります。特に、実装もできる場合、技術的制約や考慮しなければならない多くの苦悩がわかるため、その部分だけ作ることに対して躊躇してしまいます。

とても共感できる話ですね。企画段階でしっかりと目標を定めたとしても、実際に形にしていく過程で予期しない課題や制約が現れることはよくありますね。

例えば、システム開発では、設計段階で明確に構造を決めても、実際にコードを書いたりテストを繰り返したりするうちに、「思ったように動かない」「設計上の想定が現実とズレる」などの問題が出ることがあります。これを回避するには、適応力と柔軟性を持ちながら、試行錯誤を繰り返すことが重要なのですが、それでもちょっとした修正の副作用に悩まされることがあります。そこをAIは、その影響範囲や修正しなければいけない箇所を漏れなく見つけ出すことができます。

また、人間の場合は、具体的にこう書けばよいということがわかっているのに、その記述する量や複雑さに疲弊してしまう場合もあります。

こういった部分からAIにサポートしてもらいながらシステム開発の自動化を行うことを考え実施してきています。

  • モデル生成や構造設計の段階で、実際のデータとの相性を見ながら調整する
  • 動的なUIや検索機能を組み込み、ユーザーの予想外の動きを想定して対応できるようにする
  • 予測しづらい動作の可能性を考慮し、小規模なプロトタイプを作りながら進める

といったアプローチが有効かもしれませんね。

ある程度作り上げた部分をAIと共有し、部分部分でコードを生成してもらうほうがはやい

確かに、ある程度設計や実装を進めた段階でAIを活用してコードを補完・生成するのは効率的ですね。特に、繰り返し発生する処理や標準的な実装パターンをAIに任せることで、時間を大幅に短縮できます。

具体的には、

  • モデルの構築後に、関連するコントローラーやリポジトリのコードを自動生成。めちゃくちゃ助かります
  • データベース操作のクエリを最適化する際にAIの提案を活用
  • リファクタリングをAIに手伝わせる

といった使い方で助けてもらっています。

テーブルの構成と、レコードの中身を教えてから、Laravelにおけるコード生成を依頼すると、適切につくりあげてくれます。

そうですね!テーブル構成をAIに伝えることで、適切なモデル、マイグレーション、コントローラーなどを生成できるのは便利ですね。特にLaravelなら、Eloquentの関係性や設定をAIに任せることで、手動で書く手間を減らせます。

例えば:

  • テーブルのスキーマを渡す → AIが migrationmodel を生成
  • リレーションの指定hasManybelongsTo を適切に設定
  • リソースコントローラーの作成index, store, update, destroy などの基本処理を自動生成
  • リクエストバリデーション → フォームの入力チェックを自動設定

私たちは、出来る限りデータベースの正規化についてチャレンジをして、それ以降の作業を何度でもやり直すことが可能な状態にあると言えます。それは、AIによって最適化をものすごいスピードで行うことが可能になったからです。