AIアプリ開発環境準備ガイド | SkillhubAI(スキルハブエーアイ)

AIアプリ開発環境準備ガイド

さて、まずは環境準備から始めていきましょう。

Python

前書きにも書いたように、本書はすでにPythonを利用されている方を対象としているため、Pythonの環境設定についての詳細な説明は行いません。本書で利用する主なライブラリのPython対応状況は以下の通りであるためPython 3.9以上を推奨の環境とさせていただきます。('25/8時点)

現在のPythonバージョン状況

  • 最新安定版: Python 3.13.2 (2025年2月リリース)
  • 推奨: Python 3.12.x または 3.13.x
  • サポート終了: Python 3.8は2024年10月でサポート終了

Python 3.13ではJITコンパイラGILなしマルチスレッド(実験的)カラー化されたトレースバックなどの新機能が導入されています。

ChatGPTに触れる

file

あまりいらっしゃらないと思いますが、まだChatGPTを利用したことがない方は、ChatGPTのユーザーインターフェース(以下 UI)で色々と質問を投げてみてください。

2025年8月現在、ChatGPTには以下のプランがあります:

  • 無料版: 基本的な機能を利用可能
  • Plus: $20/月 - GPT-5やGPT-4oの利用制限緩和
  • Pro: $200/月 - 無制限アクセスと高度な機能
  • Team: $25/月/ユーザー - チーム向け機能
  • Enterprise: カスタム価格 - エンタープライズ向け

業界の慣習的にChatGPTに投げる質問のことを プロンプト と呼ぶことが多いです。本書でも プロンプト の表記が大量に出てくるので、覚えておいてください。また、ChatGPTにうまく質問を行う方法が日々探求されており プロンプト エンジニアリング と呼ばれています。

OpenAIアカウント(API Key)

次に、ChatGPTを活用したAIアプリ開発に必要なAPIを準備しましょう。本書ではOpenAI(ChatGPTの開発元)が提供する以下のAPIを利用します。

  • GPT API: GPT-5やGPT-4oなどの言語モデルを利用
  • Embeddings API: テキストをEmbedding化
  • Image Generation API: DALL-E 3による画像生成

OpenAIのアカウント作成と課金設定を行った上でAPIを利用可能な状態にしておいてください。

次章以降、環境変数 OPENAI_API_KEY にAPIキーが入っていることを前提に話を進めます。手元のターミナルで設定しておいてください。

export OPENAI_API_KEY="sk-proj-abcdef123456..."

API key設定方法

では、OpenAI APIキーの設定方法と確認方法をもう少し詳しく説明しますね。

1. APIキーの取得

  1. OpenAIのアカウント作成 OpenAI公式サイト にアクセスし、アカウントを作成します。

  2. APIキーの発行

  • ログイン後、右上のプロフィールアイコンをクリック
  • View API keys を選択
  • Create new secret key ボタンをクリックしてAPIキーを生成
  • 表示されたキー(sk-またはsk-proj-で始まる文字列)をコピー ⚠️ このキーは一度しか表示されないので必ず控えてください

2. 環境変数に設定(Mac / Linux)

ターミナルで以下のコマンドを実行します。

export OPENAI_API_KEY="sk-proj-abcdef123456..."

この設定はターミナルを閉じると消えるため、毎回設定したくない場合は ~/.zshrc~/.bashrc に追記します。

例(Zshの場合):

source ~/.zshrc

3. 確認方法

ターミナルで確認

echo $OPENAI_API_KEY

設定したキーが表示されればOKです。

4. セキュリティ注意点

  • APIキーはGitHubなどの公開リポジトリに絶対にアップしない
  • 外部に共有しない
  • 万が一漏れたら、OpenAIのダッシュボードから速やかに再生成してください

GPT APIで利用可能なモデル

'25/8時点でGPT APIの利用可能な主なモデルは以下の通りです。

model_name 説明 扱えるtoken数 費用(1M tokenあたり)
gpt-5 2025年8月リリースの最新モデル。コーディングとエージェントタスクに特化。 272K Input: $1.25
Output: $10
gpt-5-mini GPT-5の軽量版。高速で低コスト。 272K Input: $0.125
Output: $1.25
gpt-5-nano GPT-5の超軽量版。最も高速で低コスト。 272K Input: $0.05
Output: $0.20
gpt-4o 従来の強力なマルチモーダルモデル。 128K Input: $2.50
Output: $10.00
gpt-4o-mini GPT-4oの軽量版。コストパフォーマンスに優れる。 128K Input: $0.15
Output: $0.60
o3 推論特化モデル。複雑な思考が必要なタスクに最適。 200K 使用量に応じて変動

(APIの費用は改定されることがあるため、最新の情報は公式価格表で確認してください。)

重要な変更点: - GPT-5は2025年8月に発表された最新のフロンティアモデルで、特にコーディングタスクで優秀な性能を示します - 推論モデル(o3など)は、複雑な論理思考が必要なタスクに特化しています - 価格競争力:GPT-5は従来のモデルと比較して非常に競争力のある価格設定となっています

token数とは?

ChatGPTは文章を token という単位に区切って扱います。入力した指示(Prompt)の token 数と出力した回答の token 数を数えて課金が発生します。

扱えるtoken数もモデルごとに決まっているため、たとえばgpt-4o-miniなら、入力token数出力token数の合計が128Kを超えるとエラーになります。

token数はtiktokenというライブラリを用いて算出することができます。token_test.pyというファイルを作成して以下をテストしてみましょう。保存場所はどこでも良いです。まずは pip install tiktoken とターミナルに打ち込んでライブラリをインストールします。その後以下をファイルに書き込み実行してみましょう。実行はターミナルにpython token_test.pyで出力されます。

# pip install tiktoken
import tiktoken

encoding = tiktoken.encoding_for_model('gpt-4o')
text = "This is a test for tiktoken."
tokens = encoding.encode(text)
print(len(text))  # 28
print(tokens)  # [2500, 382, 261, 1746, 395, 260, 8251, 2488, 13]
print(len(tokens))  # 9

また、日本語と英語ではChatGPT内部の処理が全く異なっており、同じ文字数の文章を書いた場合は日本語のほうがおおむね2倍程度token数が多くカウントされてしまいます。

text = "今からtiktokenのトークンカウントテストを行います"
tokens = encoding.encode(text)
print(len(text))  # 28
print(tokens)  #[10941, 27500, 83, 8251, 2488, 3385, 5662, 77764, 4025, 14214, 21225, 21744, 16056, 38236, 7277, 6550, 31901]
print(len(tokens))  # 17

Embeddings APIで利用可能なモデル

Embeddings APIは与えられたテキストをEmbeddingに変換してくれるAPIです。本書後半で詳しく触れるため、ここでは詳細に説明しません。2025年現在の主要なモデルは以下の通りです:

  • text-embedding-3-large: 最高精度のモデル(1000tokenあたり$0.00013)
  • text-embedding-3-small: バランスの良いモデル(1000tokenあたり$0.00002)
  • text-embedding-ada-002: 従来モデル(1000tokenあたり$0.0001)

余談:OpenAI Playgroundとその他のツール

file

OpenAIのアカウントが利用可能になると、OpenAI Playgroundという開発者向けツールが使えるようになります。APIで調整可能なパラメータを色々変化させて、回答がどのように変化するか試すことができます。

また、2025年にはCodex CLIという開発者向けのコマンドラインツールも提供されており、ターミナルから直接GPT-5を利用できるようになっています。

Streamlit

Streamlit とは

Streamlitとは、Webアプリをすばやく作成・共有するためのPythonベースのOSSフレームワークです。フロントエンドの知識を必要としないため、ユーザーがWeb開発の基本を知らなくても短時間でWebアプリを作成でき、データサイエンティストや機械学習エンジニアに人気があります。

公式サイトが掲載しているこのビデオを見るとなんとなく出来ることがわかるのではないでしょうか。

2025年8月時点での最新バージョンは1.48.0で、以下の新機能が追加されています:

  • 水平フレックスコンテナ: レイアウトの柔軟性が大幅に向上
  • st.html: カスタムHTMLの埋め込みが可能
  • st.fragment: ページ全体の再実行なしに部分的な更新が可能
  • 改良されたダイアログ機能: より柔軟なモーダル表示

Streamlitは、Pythonの大部分のライブラリ(pandas、matplotlib、seaborn、plotly、Keras、PyTorch)と互換性があり、グラフや数値テーブルを綺麗に表示することが可能です。

また、Streamlit Community Cloudというクラウドサービスが存在しており、ローカル環境で開発したアプリを簡単にインターネット上にデプロイすることが可能です。

Streamlitのインストール方法

Python環境が整っていれば、インストールは簡単です。Python 3.9以上が必要です。

# install
pip install streamlit

# 正常にインストールされたことの確認
streamlit hello

Hello world on Streamlit

上記のコマンドで正常にインストールされたことが確認できますが、ついでに非常に簡単なアプリも作ってみましょう。まずは適当なファイルに、以下のようなコードを書いて下さい。

00_my_first_app.py

import streamlit as st

st.write("Hello world. Let's learn how to build a AI-based app together.")
st.write("🤖 2025年版:GPT-5とLangChainを使ったAIアプリ開発")

# 新機能のデモ
col1, col2 = st.columns(2)
with col1:
    st.info("Streamlit 1.48.0の新機能を体験中!")
with col2:
    if st.button("GPT-5について"):
        st.success("GPT-5は2025年8月にリリースされた最新のAIモデルです!")

このファイルを保存したら、次に以下のコマンドをshellで打ってみましょう。

streamlit run 00_my_first_app.py

これがあなたのAIアプリ開発者としての記念すべき第一歩です🤗

LangChain

LangChain とは

LangChainは、ChatGPTをはじめとするLLMを利用したアプリケーションの開発支援を目的としたライブラリです。2025年現在、LangChainは大きく進化し、特にLangGraphというステートフルなマルチエージェントアプリケーション構築のためのフレームワークが中核となっています。

本書では2025年版のLangChainを以下の箇所に利用しています:

GPT-5 API を簡単に呼び出す

  • Model I/O moduleの最新機能
  • GPT-5、o3、その他の最新モデルに対応
  • APIコストの自動計算と最適化機能

YouTube、WEBサイト、PDFなどからコンテンツを取得する

  • Data connection moduleの充実した機能
  • Document Loaderは700以上のサービスに対応
  • 新しいマルチモーダル対応(画像、音声、動画の処理)

Vector Storeと高度な検索機能

  • 最新のベクターデータベース(Pinecone、Weaviate、Qdrant等)との連携
  • ハイブリッド検索(ベクター + キーワード)の実装
  • RAG(Retrieval Augmented Generation)の高度な実装

LangGraphによるマルチエージェントシステム

  • ステートフルなワークフロー: エージェント間の状態管理
  • ヒューマンインザループ: 人間の承認を含むワークフロー
  • ノードキャッシング: 開発効率とコスト削減
  • 遅延ノード: 複雑な並列処理の実装

2025年の重要な新機能: - Cross-thread memory: スレッド間でのメモリ共有 - Pre/Post model hooks: モデル呼び出し前後のカスタム処理 - Built-in provider tools: Web検索やその他のツールの組み込み

LangChainのインストール

LangChainのインストールも簡単です。Python 3.9以上が必要です。

# 基本パッケージ
pip install langchain

# OpenAI用の専用パッケージ
pip install langchain-openai

# LangGraph(ステートフルエージェント用)
pip install langgraph

# 追加の統合パッケージ(必要に応じて)
pip install langchain-community

2025年版のLangChainは、パッケージが細分化されており、必要な機能に応じて個別にインストールできるようになっています:

  • langchain-core: 基本的なインターフェース
  • langchain: 汎用的な実装
  • langchain-openai: OpenAI専用の統合
  • langchain-community: コミュニティ維持の統合
  • langgraph: マルチエージェントワークフロー

2025年の重要な変更点

  1. LangGraphの台頭: 単純なチェーンからステートフルなグラフベースのワークフローへ
  2. パフォーマンス向上: ストリーミング、並列処理の大幅改善
  3. モデル対応: GPT-5、o3、Claude Sonnet 4.1などの最新モデル対応
  4. 開発体験: デバッグツール、可視化機能の充実
  5. エンタープライズ機能: LangSmith による本格的な運用監視

LangChainは非常に機能が多く、一度に理解することは困難です。そのため、本書では、実践的なAIアプリ開発を通して、少しづつ理解を深めて行く設計になっています。本書を読み終わられる際には、2025年版の最新機能についての理解ができているはずです。ゆっくり着実に理解を深めていきましょう。

最新の推奨環境まとめ(2025年8月版)

以下が、2025年8月時点での推奨開発環境です:

Python環境

  • Python: 3.12.x または 3.13.x(3.9以上必須)
  • 仮想環境: venv または conda を推奨

主要ライブラリ

pip install streamlit==1.48.0
pip install langchain==0.3.27
pip install langchain-openai==0.2.0
pip install langgraph==0.2.0
pip install openai==1.57.0
pip install tiktoken  # token数計算用

OpenAI API

  • 推奨モデル:
    • 高性能が必要: gpt-5
    • バランス重視: gpt-5-mini
    • 低コスト重視: gpt-4o-mini
  • Embeddings: text-embedding-3-small

開発ツール

  • IDE: VS Code + Python拡張機能
  • バージョン管理: Git
  • デプロイ: Streamlit Community Cloud

この環境で、最新のGPT-5やLangGraphを活用した次世代のAIアプリケーションを構築できます。各章で実際にアプリを作りながら、これらの最新技術を習得していきましょう!💪