最後の回では、PythonをAPIやAI処理につなげる考え方を学びます。 Python単体で閉じるのではなく、外部サービス、データ、AIモデルと連携することで、実用的なアプリに近づきます。
APIとは何か
APIは、アプリやサービス同士が情報をやり取りするための窓口です。 たとえば、天気情報を取得する、地図情報を取得する、AIに文章を投げる、社内システムからデータを取る、といった処理で使います。 人間がWebページを見る代わりに、プログラムが決められた形式で情報を取得します。HTTP通信の基本
Pythonではrequests を使うと、APIにアクセスしやすくなります。
python -m pip install requests
import requests
url = "https://example.com"
response = requests.get(url)
print(response.status_code)
print(response.text[:200])
status_code が200なら、一般的には取得成功を意味します。
JSONとは何か
APIでは、JSON形式のデータがよく使われます。 JSONは、名前と値の組み合わせでデータを表す形式です。{
"name": "田中",
"age": 30
}
Pythonでは辞書に近い形で扱えます。
import json
text = '{"name": "田中", "age": 30}'
data = json.loads(text)
print(data["name"])
AI処理とは何か
AI処理といっても、最初から難しく考える必要はありません。 画像を分類する、文章を要約する、異常を検知する、データから予測するなど、 入力データをもとに何らかの判断や生成を行う処理だと考えれば十分です。PythonとAIの関係
PythonはAI分野で非常によく使われています。 理由は、機械学習や深層学習のライブラリが豊富だからです。 代表的なものには、scikit-learn、PyTorch、TensorFlow、OpenCV などがあります。
ただし、超初心者はまず「AIモデルにデータを渡し、結果を受け取る」という流れを理解するのが先です。
AI処理の基本構造
AIを使うプログラムは、多くの場合次の流れになります。- 入力データを用意する
- 前処理する
- モデルに渡す
- 結果を受け取る
- 結果を画面やファイルに出す
簡単な疑似コード
実際のAIモデルは環境構築が少し重いため、ここでは流れを疑似コードで示します。input_text = "この文章を分類してください"
# AIモデルに入力する
result = ai_model.predict(input_text)
# 結果を表示する
print(result)
本質は、入力、処理、出力です。
魔法ではありません。便利な巨大関数です。たまに自信満々に間違えます。
FlaskとAPIとAIをつなげる考え方
実用的な構成では、Flaskで画面を作り、Pythonで処理し、外部APIやAIモデルに接続します。 たとえば次のような流れです。- ユーザーがWeb画面から文章や画像をアップロードする
- Flaskがデータを受け取る
- Pythonで前処理する
- APIまたはAIモデルへ送る
- 結果を受け取る
- HTML画面に結果を表示する
requestsでWebページを取得する- JSON文字列をPythonの辞書に変換する
- 入力、処理、出力の流れを紙に書く
- Flaskの画面から入力を受け取り、結果を表示する小さなアプリを考える
理解チェック
- この回の目的を一文で説明できる
- サンプルコードを自分のPCで実行できる
- エラーが出た場合、どの行で起きたか確認できる
- 少しだけ値や文字を変えて、結果の違いを確認できる