We may earn an affiliate commission when you visit our partners.
Course image
Udemy logo

Azure OpenAI Service + Bot Service で作る Teams ChatBot

津郷 晶也 and Growcite, Inc.

本講座では「Azure OpenAI Service と Bot Service を使って Microsoft Teams 向け ChatGPT チャットボット 開発」する方法について学習します。

昨今、急激に利用が増えている OpenAI 社の ChatGPT ですが、企業利用をしようとすると障壁が大きい問題があります。

Read more

本講座では「Azure OpenAI Service と Bot Service を使って Microsoft Teams 向け ChatGPT チャットボット 開発」する方法について学習します。

昨今、急激に利用が増えている OpenAI 社の ChatGPT ですが、企業利用をしようとすると障壁が大きい問題があります。

本講座ではそんな課題をクリアする方法の1つとして、Azure上で提供される Azure OpenAI Service (OpenAI 社の GPT と互換)を利用して社内用途を想定した Teams 用 ChatGPT チャットボット を開発します。

最後のハンズオンまで通して学習いただくことで、気を付けるべきポイントや開発する際の勘所がつかめます。

対象受講生は企画と開発の両方の方を想定していますので、どちらの立場であっても学習可能なレベルで、どちらの立場でも必要となる知識が揃うようにまとめました。

一通り学習いただくことでこれからAI活用したサービスの企画や開発を行っていく際の足掛かりになるはずです。

まだ取り組みたいけど取り組めていない方は、ぜひ一度、本コースを受講いただければと思います。

【概要】

大規模言語モデル(LLM)入門

  • ジェネレーティブAI(生成AI)

  • 大規模言語モデル(LLM)

  • プロンプト、トークン

  • 温度(tempreture)、上位P(top_p)

  • GPTモデルのカスタマイズ

  • プロンプトエンジニアリング基礎、応用

Azure OpenAI Service

  • なぜ Azure なのか

  • APIリファレンスの参照方法

  • セキュリティ

  • コスト

  • 可用性

  • 運用監視

Azure Bot Service、 App Service

  • 機能概要

  • セキュリティ

  • コスト

  • 可用性

  • 運用監視

ハンズオン

  • 開発環境準備

    • Node.js

    • Visual Studio Code

    • Azure

    • (GitHub Copilot)←デモのみ

  • Azure上に OpenAI Service 作成

    • リソース作成

    • Azure OpenAI Studio を使ったテスト

  • Bot Service のローカル開発

    • GitHub Copilot を使った開発

  • Azure上へデプロイ

    • Bot Service, App Service 作成

    • App Service へデプロイ

    • Bot Service のテスト

    • Teams での動作確認

【更新履歴】

v1.1.0 2023/11/05 OpenAI社のAPIを利用する場合の方法を追加v1.0.0 2023/06/09 初版リリース

Enroll now

What's inside

Syllabus

本コースの概要について学びます。

本コースの目標、概要、対象受講生、講座の特徴について紹介します。

本コースで学習する内容について概要を学習します。

受講にあたっての注意事項およびあると望ましいことについて学習します。

Read more

Azure OpenAI Service を利用するためには利用申請が必要です。

本レクチャーでは申請方法について紹介します。

(補足)OpenAI 社の API を利用する場合
大規模言語モデルがどのようなものなのか、その機能や特徴、アプリへ組み込む場合に必要となる知識を学びます。

本セクションの学習内容について確認します。

以下について概要を学びます。

  • 人工知能(AI)

  • 機械学習(ML)

  • ディープラーニング(DL)

  • ジェネレーティブAI(生成AI)

大規模言語モデル(LLM)でできること、具体的なモデル、歴史について学習します。

プロンプトおよびトークンがどういうものなのか、について学習します。

ChatGPTの出力を調整する「温度」と「上位P」について学習します。

GPTモデルをカスタマイズする方法にどのようなものがあるのか、学習します。

プロンプトを記載する際の基礎となる記載方法について学習します。

プロンプトの基礎を踏まえ、より高度なカスタマイズを行うためのプロンプト利用方法を学習します。

Azure OpenAI Service

Azure OpenAI Service と OpenAI ChatGPT API の違いについて学習します。

Azure OpenAI Service の API リファレンス参照方法を学習します。

リクエストしたデータの利用、コンテンツフィルター、敵対的プロンプトについて学習します。

OpenAI Service のコスト構造について学習します。

OpenAI Service のSLAについて学習します。

運用監視を行う方法について学習します。

Azure Bot Service

Bot Service が提供する機能、Azure Service の概要について学習します。

ネットワーク構成および認証について学習します。

Bot Service および App Service のコスト構造について学習します。

Azure OpenAI Service および App Service のSLAについて学習します。

Bot Service および App Service の運用監視方法について学習します。

開発環境準備

Node.js は直接入れず、 npm を使って Node.js をインストールします。

Visual Studio Code のインストール方法を学習します。

ハンズオンで必要となる Visual Studio Code の プラグインをインストールします。

  • Japanese Language Pack (日本語パック)

  • Azure App Service

  • REST Client

Azure Bot Framework エミュレーターをインストールする方法を学習します。

動画はWindowsですが、macOSについても補足します。

準備が必要なAzure環境について少し補足をします。

Azureを利用できるようアカウント作成します。

ChatBotシステムアーキテクチャ

ハンズオンで作成する Teams ChatGPT ボットのアーキテクチャ全体像を確認します。

OpenAI Service デプロイ/テスト

リソースグループを作成する方法を学習します。

Azure OpenAI Serivice をデプロイする方法を学習します。

Azure OpenAI Studio を利用してデプロイ済みの GPTモデル をテスト(GPTとチャット)します。

ChatBot ローカル開発

Botアプリを開発するためのひな型を作成します。

ひな型アプリを起動、動作確認(デバッグ)を試します。

REST Client を利用して Azure OpenAI Service へ接続してみます。

Botアプリへ OpenAI Service へリクエストする実装を行います。

ChatBot デプロイ/テスト

Azure Bot Service を作成します。

App Service リソースを作成します。

作成した App Service に対してローカル環境で開発した Bot アプリをデプロイします。

App Service にマネージドIDを設定、環境変数を設定します。

Bot Service から App Service を参照するように設定し、動作確認をします。

Teamsチャンネルを作成して動作確認をします。

おわりに

本講座のまとめと今後の学習指針についてご紹介します。

ボーナスレクチャー

Good to know

Know what's good
, what to watch for
, and possible dealbreakers
学習するモデルには、GPT-3のような大規模言語モデル(LLM)など、最新のテクノロジーを採用しています。
Azure OpenAI Service を利用することで、OpenAI 社の ChatGPT API と連携し、社内独自の Teams 用チャットボットを開発することができます。
ゼロから開発するのではなく、ハンズオンでは雛形となるボットアプリが提供されており、効率的に開発を進めることができます。
企画と開発の両方の視点から学べるカリキュラムとなっており、双方の立場からの理解を深めることができます。
ChatGPT のプロンプトエンジニアリングの基礎から応用まで、実践的な手法を学べます。
Azure OpenAI Service、Azure Bot Service、App Service の機能や仕組みを理解し、開発環境を構築できます。

Save this course

Save Azure OpenAI Service + Bot Service で作る Teams ChatBot to your list so you can find it easily later:
Save

Activities

Coming soon We're preparing activities for Azure OpenAI Service + Bot Service で作る Teams ChatBot. These are activities you can do either before, during, or after a course.

Career center

Learners who complete Azure OpenAI Service + Bot Service で作る Teams ChatBot will develop knowledge and skills that may be useful to these careers:
AI Engineer
AI Engineers design, build, and maintain artificial intelligence systems. These systems are used in a variety of applications, including robotics, autonomous vehicles, and healthcare. This course may be useful to those seeking to enter or advance their career in AI Engineering. It provides a strong foundation in artificial intelligence and machine learning techniques, as well as a practical understanding of how to apply these techniques to real-world problems.
Machine Learning Engineer
Machine Learning Engineers design, build, and maintain machine learning models. These models are used in a variety of applications, including predictive analytics, natural language processing, and computer vision. This course may be helpful to those seeking to enter or advance their career in Machine Learning Engineering. It provides a strong foundation in artificial intelligence and machine learning techniques, as well as a practical understanding of how to apply these techniques to real-world problems.
Computer Vision Engineer
Computer Vision Engineers design, build, and maintain computer vision models. These models are used in a variety of applications, including image recognition, object detection, and medical imaging. This course may be useful to those seeking to enter or advance their career in Computer Vision Engineering. It provides a strong foundation in artificial intelligence and machine learning techniques, as well as a practical understanding of how to apply these techniques to real-world problems.
Natural Language Processing Engineer
Natural Language Processing Engineers design, build, and maintain natural language processing models. These models are used in a variety of applications, including machine translation, text summarization, and spam filtering. This course may be useful to those seeking to enter or advance their career in Natural Language Processing Engineering. It provides a strong foundation in artificial intelligence and machine learning techniques, as well as a practical understanding of how to apply these techniques to real-world problems.
Product Manager
Product Managers develop and manage products. This course may be useful to those seeking to enter or advance their career in Product Management. It provides a strong foundation in artificial intelligence and machine learning techniques, as well as a practical understanding of how to apply these techniques to product development and management tasks.
Project Manager
Project Managers plan, execute, and control projects. This course may be useful to those seeking to enter or advance their career in Project Management. It provides a strong foundation in artificial intelligence and machine learning techniques, as well as a practical understanding of how to apply these techniques to project management tasks.
DevOps Engineer
DevOps Engineers design, build, and maintain the systems and processes that enable software development teams to work more efficiently. This course may be useful to those seeking to enter or advance their career in DevOps Engineering. It provides a strong foundation in artificial intelligence and machine learning techniques, as well as a practical understanding of how to apply these techniques to software development processes.
Systems Analyst
Systems Analysts analyze, design, and implement computer systems. This course may be useful to those seeking to enter or advance their career in Systems Analysis. It provides a strong foundation in artificial intelligence and machine learning techniques, as well as a practical understanding of how to apply these techniques to systems analysis tasks.
Software Architect
Software Architects design and develop software systems. This course may be useful to those seeking to enter or advance their career in Software Architecture. It provides a strong foundation in artificial intelligence and machine learning techniques, as well as a practical understanding of how to apply these techniques to software architecture tasks.
Information Architect
Information Architects design and organize information systems. This course may be useful to those seeking to enter or advance their career in Information Architecture. It provides a strong foundation in artificial intelligence and machine learning techniques, as well as a practical understanding of how to apply these techniques to information architecture tasks.
Cloud Architect
Cloud Architects design, build, and maintain cloud computing systems. These systems are used to deliver a variety of services, including storage, computing, and networking. This course may be useful to those seeking to enter or advance their career in Cloud Architecture. It provides a strong foundation in artificial intelligence and machine learning techniques, as well as a practical understanding of how to apply these techniques to cloud computing applications.
Data Scientist
Data Scientists use their knowledge of mathematics, statistics, and computer science to extract meaningful insights from data, which can then be used to make informed decisions. This course may be useful to those seeking to enter or advance their career in Data Science. It provides a strong foundation in artificial intelligence and machine learning techniques, as well as a practical understanding of how to apply these techniques to real-world problems.
Business Analyst
Business Analysts analyze business needs and develop solutions to improve business processes. This course may be useful to those seeking to enter or advance their career in Business Analysis. It provides a strong foundation in artificial intelligence and machine learning techniques, as well as a practical understanding of how to apply these techniques to business analysis tasks.
Data Analyst
Data Analysts collect, clean, and analyze data in order to provide insights to businesses. This course may be useful to those seeking to enter or advance their career in Data Analysis. It provides a strong foundation in artificial intelligence and machine learning techniques, as well as a practical understanding of how to apply these techniques to data analysis tasks.
Software Engineer
Software Engineers apply engineering principles to the design, development, deployment, and maintenance of software applications, in order to meet specific functional and performance requirements. This course may be useful to those seeking to enter or advance their career in Software Engineering. It can provide a strong foundation in artificial intelligence and machine learning techniques that are increasingly important in the field.

Reading list

We've selected seven books that we think will supplement your learning. Use these to develop background knowledge, enrich your coursework, and gain a deeper understanding of the topics covered in Azure OpenAI Service + Bot Service で作る Teams ChatBot.
Offers a concise introduction to natural language understanding, covering the fundamental concepts and techniques used in NLP. It provides a solid foundation for understanding the NLP capabilities of ChatGPT and other AI models.
Provides practical guidance on writing clean and maintainable code. It emphasizes the importance of code readability, organization, and testing, which are crucial for developing reliable and scalable chatbots like ChatGPT.
Introduces the principles and practices of test-driven development. It explains the benefits of writing tests before writing code, which is essential for ensuring the quality and reliability of chatbots like ChatGPT.
Provides a comprehensive guide to domain-driven design, an approach to software development that emphasizes understanding and modeling the domain of the application. It helps in creating chatbots that are closely aligned with the business requirements and have a clear and maintainable design.

Share

Help others find this course page by sharing it with your friends and followers:

Similar courses

Here are nine courses similar to Azure OpenAI Service + Bot Service で作る Teams ChatBot.
Next.js × shadcn/ui × Supabaseで本格的なWebアプリ開発を学ぶフルスタック講座
Most relevant
OpenAI API 完全マスターガイド: ChatGPTによるチャットボット開発や画像生成、音声認識を基礎から学ぶ
Most relevant
LangChainによる大規模言語モデル(LLM)アプリケーション開発入門―GPTを使ったチャットボットの実装まで
Most relevant
セキュア ソフトウェア開発:実装
Most relevant
Serverless Data Processing with Dataflow: Pipelines - 日本語版
Most relevant
【フォーム開発実践】認証やお問い合わせフォームをNext.js/RHF/zod等のモダン技術を使って開発する実践講座
Most relevant
セキュア ソフトウェア開発:要件、設計、再利用
Most relevant
セキュア ソフトウェア開発:検証、専門的トピック
Most relevant
Azure OpenAI (GPT) と Cognitive Search で作る ナレッジマイニング...
Most relevant
Our mission

OpenCourser helps millions of learners each year. People visit us to learn workspace skills, ace their exams, and nurture their curiosity.

Our extensive catalog contains over 50,000 courses and twice as many books. Browse by search, by topic, or even by career interests. We'll match you to the right resources quickly.

Find this site helpful? Tell a friend about us.

Affiliate disclosure

We're supported by our community of learners. When you purchase or subscribe to courses and programs or purchase books, we may earn a commission from our partners.

Your purchases help us maintain our catalog and keep our servers humming without ads.

Thank you for supporting OpenCourser.

© 2016 - 2024 OpenCourser