Upgrade to Pro — share decks privately, control downloads, hide ads and more …

コードAI本 - コード×AIーソフトウェア開発者のための生成AI実践入門

Yuki Hattori
November 14, 2024
250

コードAI本 - コード×AIーソフトウェア開発者のための生成AI実践入門

Yuki Hattori

November 14, 2024
Tweet

Transcript

  1. 服部 佑樹 @yuhattor 2023 - Present Sr. Architect GitHub 2022

    - Present Vice President The InnerSource Commons Foundation 2016 - 2023 Various roles at Microsoft
  2. bit.ly/CodeAndAI #コードAI本 トピック • 生成AIがエンジニアリングの常識を変える • プロンプトで生成AIを操る • プロンプトの実例と分析 •

    AIツールに合わせたプロンプト戦略 • AIと協働するためのコーディングテクニック • AIの力を引き出す開発アプローチ • 生成AIの力を組織で最大限に引き出す • 開発におけるAI活用Tips • AI時代をリードするために
  3. bit.ly/CodeAndAI #コードAI本 プロンプト解説: ReactAgent フロントエンド開発者として行動してください。 説明に基づいて、TypeScriptのReact Functional Componentを作成してください。 美しく使いやすいものにしてください。 すべてのユースケースと状態をカバーするようにしてください。

    --- 返却例: ${componentExample} --- 指示: 動作するコードであることを確認し、私が何かを変更したり実装したりすることを想定しないでください。 プロジェクトにTypeScriptのReactセットアップがあることを前提としてください。 外部ライブラリは使用せず、内部ライブラリの@react-agent/shadcn-uiとグラフ用のrechartsのみを使用してください。 --- 返却タイプ: Reactコンポーネントを返却し、TypeScript で記述し、Tailwind CSS を使用します。 tsx/typescript Markdown ```tsx <あなたのコードをここに> ``` 内にコードを返却してください。 https://github.com/eylonmiz/react-agent
  4. bit.ly/CodeAndAI #コードAI本 プロンプト解説: ReactAgent フロントエンド開発者として行動してください。 説明に基づいて、TypeScriptのReact Functional Componentを作成してください。 美しく使いやすいものにしてください。 すべてのユースケースと状態をカバーするようにしてください。

    --- 返却例: ${componentExample} --- 指示: 動作するコードであることを確認し、私が何かを変更したり実装したりすることを想定しないでください。 プロジェクトにTypeScriptのReactセットアップがあることを前提としてください。 外部ライブラリは使用せず、内部ライブラリの@react-agent/shadcn-uiとグラフ用のrechartsのみを使用してください。 --- 返却タイプ: Reactコンポーネントを返却し、TypeScript で記述し、Tailwind CSS を使用します。 tsx/typescript Markdown ```tsx <あなたのコードをここに> ``` 内にコードを返却してください。 https://github.com/eylonmiz/react-agent にJavaScript は絶対に出力させないぞ!!
  5. bit.ly/CodeAndAI #コードAI本 例: SQLクエリ生成プロンプト LangChainは言語モデルを利用したアプリ ケーション開発のためのフレームワーク。 執筆時点で特に注目されているオープン ソースプロジェクトの一つ。 LangChain Stack

    によって構成されており、 幅広いAIアプリケーション開発に利用可 能 https://api.python.langchain.com/en/latest/chains/langchain.chains.sql_database.query.create_sql_query_chain.html
  6. bit.ly/CodeAndAI #コードAI本 プロンプト解説: create_sql_query_chain (LangChain) あなたは、MS SQLの専門家です。入力された質問に対して、まず構文的に正しいMS SQLクエリを作成して実行し、そのクエリの結 果を見て、入力された質問に対する答えを返します。 ユーザーが質問の中で取得する例の具体的な数を指定しない限り、MS

    SQLのTOP句を使用して最大{top_k}件の結果を問い合わ せます。データベース内の最も有益なデータを返すように結果を並べ替えることができます。 テーブルからすべての列を問い合わせることは絶対にしないでください。質問に答えるために必要な列のみを問い合わせる必要がありま す。各列名を角括弧([])で囲んで、区切り文字付き識別子として示します。 以下のテーブルで確認できる列名のみを使用するように注意してください。存在しない列を問い合わせないように注意してください。また、 どの列がどのテーブルにあるかに注意してください。 質問が「今日」を含む場合は、CAST(GETDATE() as date)関数を使用して現在の日付を取得するように注意してください。 次の形式を使用してください: Question:ここに質問 SQLQuery:実行するSQLクエリ SQLResult:SQLQueryの結果 Answer:ここに最終的な答え https://api.python.langchain.com/en/latest/chains/langchain.chains.sql_database.query.create_sql_query_chain.html
  7. bit.ly/CodeAndAI #コードAI本 プロンプトを学ぶ必要はあるか バックエンド 情報収集 / 情報処理 プロンプト構築 コンプライアンス /

    セキュリティ処理 クライアント 情報収集 / プロンプト構築 モデル API この部分を開発する方 = 再利用するプロンプトを作る方 「プロンプトエンジニアリング」を学び、 研究を重ね、プロンプトやフロー構築の技術を 昇華させていくプロセスを学ぶ価値あり
  8. bit.ly/CodeAndAI #コードAI本 論点:AIの出力は信頼がおけない AI は出力において • 嘘をつく • 命令を無視する •

    文脈をすっとばす AIモデルの精度によって異なりますが GPT-4の場合、2,000トークンを超えると精 度が低下する可能性がある。(2024年時 点)。 https://arxiv.org/pdf/2402.14848
  9. bit.ly/CodeAndAI #コードAI本 標準化されたコード内ドキュメント 付加情報の提供によりAIの理解を助ける 標準的なコメントプラク ティスに従ってドキュメ ントを書く。 言語ごとのドキュメント 生成の仕組みを活用し、 AIとのコラボレーション

    を円滑にする。 言語 方式 概要 Python Docstring PEP 257に準拠して詳細な コメントを記述し、ドキュ メント化 TypeScript JSDoc TypeScriptの型情報ととも に、JSDocを使用してドキ ュメント化 Java Javadoc Javaのクラスやメソッドに 対してコメントを記述し、 ドキュメント化 C# XML ドキュメント XML形式でドキュメントを 記述し、ドキュメント化
  10. bit.ly/CodeAndAI #コードAI本 先進事例 ゴールドマン・サックスのAIプラットフォーム 「GS AI Platform」は、全ての独自AI技術を中 央集約化し、内部での利用を制限する形で運用 されている。 企業のデータを用いてファインチューニングさ

    れた専用モデルも利用。 出典: “Goldman Sachs Deploys Its First Generative AI Tool Across the Firm” - Wall Street Journal <https://www.wsj.com/articles/goldman-sachs-deploys-its- first-generative-ai-tool-across-the-firm-cd94369b>