Skip to Content
FastAPIで生成型AIサービスを作る
book

FastAPIで生成型AIサービスを作る

by Alireza Parandeh
April 2025
Intermediate to advanced
530 pages
7h 52m
Japanese
O'Reilly Media, Inc.
Content preview from FastAPIで生成型AIサービスを作る

第7章. データベースをAIサービスに統合する

この作品はAIを使って翻訳されている。ご意見、ご感想をお待ちしている:translation-feedback@oreilly.com

この章では、現在のAPIサービスにデータベースを統合して、ユーザ対話を保存・取得する。

この章では、データベースと構造化クエリ言語 (SQL) の基本的な操作経験を想定しているため、SQL プログラミングとデータベースワークフローのすべての側面をカバーしません。 その代わりに、LLM などの GenAI モデルと相互作用する FastAPI アプリケーションにデータベースを統合する際の、より高度なデータベース概念、開発ワークフロー、ベストプラクティスを学びます。

その一環として、アプリケーション開発におけるリレーショナル(SQL)データベースと非リレーショナル(noSQL)データベースの役割について学び、ユースケースに適したデータベースを自信を持って選択できるようになる。 次に、リレーショナルデータベースの機能と、オブジェクトリレーショナルマッパー(ORM)やデータベース移行ツールなどの関連ツールについてより深く理解する。 最後に、手作業対演習として、SQLAlchemyとAlembicを使って既存のアプリケーションにデータベースを統合し、LLMでユーザの会話を保存・検索する。

この章が終わる頃には、GenAI アプリケーションにおけるデータベース関連の問題の選択、設定、解決に自信が持てるようになるだろう。

データベースの役割

バックエンド・サービスを構築するとき、アプリケーションの状態を保持し、ユーザデータをストアするためにデータベースが必要になることがよくある。 他のケースでは、アプリケーションにデータベースは必要なく、データベースの統合はサービスの複雑さを著しく増大させる可能性があるため、データベースを追加しようとすべきではない。

ここでは 、データベースの使用を見送ることができるいくつかのケースを紹介する:

  1. アプリケーションは、新しいユーザ・セッションごとに、起動時に新しい状態から開始することができる。

  2. アプリケーションデータの再計算は簡単で、リソース効率も良い。

  3. アプリケーション・データはメモリに格納できるほど小さい。

  4. あなたのアプリケーションは、サーバエラー、再起動、その他の予期せぬ出来事など、様々な理由によるデータ損失に対して寛容である。

  5. 異なるユーザ・セッションやアプリケーション・インスタンスがデータを共有する必要はない。

  6. 必要なデータは、独自のデータベースではなく、外部システム、GenAIモデル、その他のアプリケーションAPIから直接取得することができる。

  7. ユーザは、新しいセッションやアクションのたびにデータが再計算されるのを待つことができる。

  8. あなたのサービス要件では、データをデータベースの代わりにディスク上のファイル、ブラウザのストレージ、または外部のクラウドストレージに永続化することができる。 ...

Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Start your free trial

You might also like

AI支援プログラミング

AI支援プログラミング

Tom Taulli
ファストAPI

ファストAPI

Bill Lubanovic

Publisher Resources

ISBN: 9798341640627Supplemental Content