はじめに | SkillhubAI(スキルハブエーアイ)

はじめに

こんにちは。

「つくりながら学ぶ!AIアプリ開発入門 - LangChain & Streamlit による OpenAI API 徹底活用」をはじめましょう。このレッスンでは、OpenAI APIを活用してAIアプリを開発する方法をステップバイステップで紹介していきます。

このレッスンで紹介するAIアプリはあくまで基レッスン的なものですが、AIアプリの開発の基礎知識を学ぶことでより複雑なアプリの開発が可能になります。レッスン書を通じて、AIアプリ開発に魅力を感じ、読者の皆さまが挑戦するきっかけになれば幸いです🤗

このレッスンのコンセプト

このレッスンはPythonが書ける人なら誰でも簡単にAIアプリを作ることができるように構成されています。アプリ開発のために必要なライブラリやツールを紹介し、その使い方を詳しく解説しています。

このレッスンを最後まで読んでいただけると、例えば以下のようなAIアプリを作成することが可能になります。

  • URLを入力すると、そのページの内容を自動で取得して要約してくれるアプリ
  • YoutubeのURLを投げると、その動画を見て内容を要約してくれるアプリ
  • PDFをアップロードして、その内容についてOpenAI APIに質問できるアプリ
  • Function Callingを使って外部ツールと連携するアプリ
  • 音声で質問して音声で回答してくれる対話アプリ


Youtube動画を見て要約を書いてくれるアプリの例

最近は、ChatGPT Proユーザーならブラウジング機能やGPTs(カスタムGPT)を利用して同じような体験も実現可能ですが、AIアプリの作り方を学ぶことで、より便利でカスタマイズされたツールの開発も可能になります。

レッスン書では大規模言語モデル(LLM: Large Language Model)を扱う際によく利用されている LangChain というライブラリをフル活用します。このライブラリは大変便利ですが、膨大な数の機能が実装されているため、初心者が全ての機能を把握するのは難しいです。レッスン書では具体的なAIアプリ開発の例を通じて、便利な機能を徐々に理解できるようになっています。

アプリの開発にフロントエンドやクラウドの知識はほぼ必要ありません。フロントエンドの開発はStreamlitという有名なライブラリを用います。そのマネージドサービスであるStreamlit Community Cloudを利用することで、簡単にインターネット上にデプロイする方法もご紹介します。

そして、レッスン書の後半部分では、ベクトルDBを使用するRAG(Retrieval-Augmented Generation)テクニックを取り扱います。これまでのGPTモデルは、訓練された時点の情報を基に質問に答えるため、最新の知識や独自のデータに対して適切な回答を返すことが困難でした。しかし、ベクトルDBを活用することで、最新の知識や社内文書を参照しながら質疑応答を行うことが可能になります。

file
PDFをアップロードして質問するアプリの動作概要図

「AIアプリ開発に興味があるがどこから始めたらよいか分からない」という方の道しるべになれれば幸いです。


必要最低限の知識

レッスン書はPythonの基レッスン的な知識を持っていることを前提に書かれています。Pythonについてはレッスン書では詳しく解説しないため、基レッスン的な構文やデータ構造、制御フローについては理解していることを前提としています。

ただし、まったくの初心者のために次のレッスンでPythonの基本を解説しています。はじめての方は次のレッスンでPythonを実際に動かしてみてください。他の言語を経験している方であればすごく簡単だと思います。まったく初めての方もPythonは非常にわかりやすい言語なので1時間も学習すればこのコースを進めることができるでしょう。

また、コードのデプロイにGitHubを使用しますので、リポジトリの管理方法についても知っていることが望ましいです。機械学習の専門的な知識は必須ではありませんが、レッスン書の後半部分でEmbeddingRAGFunction Callingなどの概念を利用するため、ご存じない概念が登場した場合、軽く検索していただく必要はあるかもしれません。


取り扱わないこと

このレッスンはAIアプリ開発の初心者に向けたもので、初めてのAIアプリを開発し、無事にリリースできることに重点を置いています。そのため、内容は意図的にシンプルに絞り込みました。具体的には、以下のような内容についてはレッスン書では取り扱いません。

  • 高度な画像生成や動画生成
  • 複雑なUIデザインやフロントエンド開発
  • 大規模なマルチエージェントシステム
  • モデルのファインチューニングや独自学習
  • 企業レベルのMLOpsやスケーリング

2025年版での主な更新点

新しく追加された内容

  • Function Calling - 外部ツールやAPIとの連携方法
  • 音声機能 - Realtime APIを使った音声対話の基レッスン
  • 最新のOpenAI API - GPT-4.1、GPT-5、o-シリーズモデルの活用
  • LangChain Expression Language (LCEL) - より効率的なチェーン構築
  • 高度なRAGシステム - ベクトルDBの最新活用法

アップデートされた内容

  • OpenAI API仕様 - 2025年最新のAPI仕様に対応
  • Streamlit機能 - v1.48の新機能(フレックスコンテナなど)
  • LangChain構文 - 最新バージョンの記法と機能
  • ベクトルDB選択肢 - Pinecone、Chroma、Weaviate等の比較
  • デプロイ方法 - Streamlit Community Cloudの最新機能

各章の構成

開発環境の準備から始まり、AIチャットボットの作成、簡単な要約を行うAIアプリの作成、Function Callingを使った外部連携、そしてEmbeddingやベクトルDBを活用したRAGシステムの作成へと進んでいきます。

具体的には、OpenAI API、Streamlit、LangChainといったツールの設定と使い方を順を追って説明します。その後、実践的なAIアプリの開発を通じて、これらのツールを組み合わせてLLMを活用する方法を学びます。最後に、補足として参考文献集やレッスン編で扱わなかった高度なAIアプリの可能性のリストを提供します。

それでは、さっそく次の章に進んで開発環境の準備を始めましょう!