pythonの備忘録。調査結果を忘れないように記載。
Claude API の Tool Use で外部データを取得する新着!!
Claude API 単体では、モデルは学習時点までの知識しか持たず、リアルタイムの天気・在庫・社内DBの値といった外部データを答えられません。この壁を越える仕組みが Tool Use(ツール使用) です。
Python のコンテキストマネージャ(with文)を自作する新着!!
Python でファイルを扱うときに書く with open(...) as f: の with 文。この裏側で動いているのが「コンテキストマネージャ」です。本記事では、その仕組みを理解し、クラスと contextlib の2通りで自作する…
Python の例外設計 — カスタム例外クラスの作り方
Python でアプリケーションを書いていると、ValueError や RuntimeError といった組み込み例外をそのまま投げる場面が増えてきます。小さなスクリプトならそれで十分ですが、規模が大きくなると「この例外はどこから来たのか…
Claude API(Anthropic SDK)入門:最初のリクエストからツール利用・プロンプトキャッシュまで
Anthropic の Claude API(Messages API)を、公式 SDK を使って一通り触るためのハンズオンです。環境構築から、最初のリクエスト、ストリーミング、システムプロンプト、マルチターン会話、ツール利用、プロンプトキ…
Python の ABC(抽象基底クラス)でインターフェースを定義する
Python には Java や C のような interface キーワードがありません。しかし標準ライブラリ abc(Abstract Base Classes)を使えば、「このクラスを継承するなら、これらのメソッドを必ず実装せよ」とい…
dataclass vs Pydantic — どちらを選ぶべきか
Python でデータを「型つきの構造体」として扱いたいとき、標準ライブラリの dataclasses とサードパーティの Pydantic のどちらを使うかは、よくある判断ポイントです。見た目が似ているため混同されがちですが、設計思想はま…
OpenAI API で構造化出力(JSON mode / Structured Outputs)を使う
LLM をアプリに組み込むとき、最初にぶつかるのが「返ってくるテキストが毎回少しずつ違う」という問題です。プロンプトで「JSON で返して」と頼んでも、前後に前置きが付いたり、コードフェンスで囲まれたり、キー名が揺れたりします。そのたびに後…
Pythonのデコレータを実務で使いこなす
Pythonのデコレータは「関数やクラスに手を加えずに、その前後へ処理を差し込む」ための仕組みです。入門書では @ 記号の使い方までは説明されても、実務でどこに効くのかまでは踏み込まないことが多いと感じます。
OpenAI API のプロンプトエンジニアリング基礎
LLM を使ったアプリケーションを作るとき、モデルの性能そのものより「どう指示するか」で結果が大きく変わります。同じ GPT モデルでも、プロンプトの設計次第で精度・安定性・コストがまるで違ってきます。
Ruff で Python の Lint + Format を一括実行する
Python の Lint と Format は、長らく flake8 / isort / black などを組み合わせるのが定番だった。ツールごとに設定ファイルが分かれ、実行も別々で、CI のステップも増える。
