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

MS Tech CAMP #24はじめてのアプリ制作 ChatGPTのようなアプリを作ってみよう

kurikinton105
February 16, 2024

MS Tech CAMP #24はじめてのアプリ制作 ChatGPTのようなアプリを作ってみよう

MS Tech CAMP #24はじめてのアプリ制作 ChatGPTのようなアプリを作ってみようのイベント資料です。

https://mspjp.connpass.com/event/306104/

kurikinton105

February 16, 2024
Tweet

More Decks by kurikinton105

Other Decks in Technology

Transcript

  1. 18:10〜 | オープニング 18:20〜 | 本日の説明・紹介 19:20〜 | アプリをデプロイ 20:20〜

    | カスタマイズしたことを共有 休憩 10 mins TODAY’S PROGRAM プログラムの 流れ 18:30〜 | アプリ作成 19:50〜 | 独自でカスタマイズ 〜19:10 | 20:40〜 | クロージング
  2. ここがわかる! 1. ChatGPTを使ったサイト作成! 1. ChatGPTみたいなアプリを作成 2. 自分でオリジナルのサイトを作れる・調べられる 1. Azureを使ってWEB上にサイトを公開! 初心者向けのイベント!

    (一部実際の運用としては良くない部分もありますが、初心者向けのイベントなので わかりやすさや工数の少なさを優先しています)
  3. JavaScriptとは • Webブラウザ上で動作するプログラミング言語 • HTMLに動きを加えたり、処理の実行を行うことができる • Ex: 100 x 20を計算して

    など • よく聞くJavaとは違うもの… • 詳しい書き方は、MSLearnにわかりやすいドキュメントがあります! • h9ps://learn.microsoI.com/ja-jp/training/paths/web-development-101/
  4. <script> document.getElementById('submit-btn').addEventListener('click', function() { var submitButton = document.getElementById('submit-btn'); var inputText

    = document.getElementById('input-text').value; var responseContainer = document.getElementById('response'); // ボタンを無効化し、ローディング中のテキストを表示 submitButton.disabled = true; submitButton.textContent = 'Loading...'; fetch('https://mlsa-openai.openai.azure.com/openai/deployments/mlsa-test/chat/completions?api-version=2023-07-01-preview', { method: 'POST', headers: { 'Content-Type': 'application/json', // 危険: APIキーが露出しています 'api-key': ‘<YOUR_API_KEY>' }, body: JSON.stringify({ messages: [{role: 'system', content: 'あなたはチャットbotです。日本語で返答して'}, {role: 'user', content: inputText}], max_tokens: 800, temperature: 0.7, frequency_penalty: 0, presence_penalty: 0, top_p: 0.95, stop: null }) }) .then(response => response.json()) .then(data => { // 応答からassistantのメッセージのみを抽出して表示 if (data.choices && data.choices.length > 0 && data.choices[0].message) { responseContainer.innerHTML = data.choices[0].message.content; } else { responseContainer.innerHTML = '応答が見つかりませんでした。'; } }) .catch(error => { console.error('Error:', error); }) .finally(() => { // ローディングが終了したら、ボタンを再度有効にし、テキストを元に戻す submitButton.disabled = false; submitButton.textContent = 'Submit'; }); }); </script> コピー用
  5. Azureとは…. • Microsoftが運営しているクラウドサービス • サーバーなどを貸してくれる できること(一例) • ボタンひとつでWordPressのデプロイ・公開 • WEBサイトのデプロイ・公開

    • 自分専用のAIを作れる • 松屋の牛丼か判別するAIなど • 最新AIを使える • GPTのAPI・文字起こし・音声合成・翻訳など
  6. 一般的には、サーバーでの通信や認証をする ブラウザでの表示 Azure OpenAI Service こんにちは! 返答: こんにちは! どのようにお手伝 いしましょうか?

    今回の仕組み ブラウザでの表示 サーバー 認証や制限を してアクセス Azure OpenAI Service 一般的な仕組み 発展的な 内容