並び順

ブックマーク数

期間指定

  • から
  • まで

1 - 40 件 / 178件

新着順 人気順

fastapiの検索結果1 - 40 件 / 178件

  • Python 製 Web フレームワークを Flask から FastAPI に変えた話|NAVITIME_Tech

    こんにちは、けんにぃです。ナビタイムジャパンで公共交通の時刻表を使ったサービス開発やリリースフローの改善を担当しています。 今回は Python 製の Web フレームワークとして FastAPI を導入した話をしようと思います。 Python 製の Web フレームワークPython には代表的な Web フレームワークが 2 つあります。 ・Django: フルスタックフレームワーク ・Flask: マイクロフレームワーク Django は大規模開発向け、Flask は小中規模開発向けと言われますが、今回開発したサーバは小規模なサーバだったため、以前は Flask で開発していました。 しかし、どちらのフレームワークを使う場合でも下記のような機能を使おうとするとプラグインやサードパーティの助けを借りる必要があります。 ・OpenAPI ・JSON Schema ・GraphQL ・We

      Python 製 Web フレームワークを Flask から FastAPI に変えた話|NAVITIME_Tech
    • サーバーアプリ開発環境(Python/FastAPI) | フューチャー技術ブログ

      Pythonでお仕事する前提で、現在のところで自分が最適と考えるチーム開発のための環境整備についてまとめてみました。今までももろもろ散発的に記事に書いたりしていたのですが、Poetryで環境を作ってみたのと、過去のもろもろの情報がまとまったものが個人的にも欲しかったのでまとめました。前提としては次の通りです。 パッケージ管理や開発環境整備でPoetryを使う 今時はコードフォーマッター、静的チェックは当たり前ですよね? コマンドでテスト実行、コードチェックとか実行とかができる(CI/CD等を考えて) VSCodeでもコマンドで実行しているのと同じコードチェックが可能(ここコンフリクトすると困る) デプロイはDockerイメージ コンテナのデプロイ環境でコンテナに割り当てられたCPU能力を比較的引き出せて、スケールさせたら線形にパフォーマンスアップできるようなasyncioを前提とした環境構

        サーバーアプリ開発環境(Python/FastAPI) | フューチャー技術ブログ
      • High Performance FastAPI

        PyCon JP 2021 発表資料です。

          High Performance FastAPI
        • FastAPI入門 - モダンなPythonフレームワークの特性をチュートリアルで手軽に学ぶ|ハイクラス転職・求人情報サイト AMBI(アンビ)

          FastAPI入門 - モダンなPythonフレームワークの特性をチュートリアルで手軽に学ぶ PythonのWebフレームワークとしていま注目を集めるFastAPIは、シンプルにコードが書けるだけでなく、パフォーマンスが高いWebアプリケーションのバックエンドサーバーが構築可能です。同フレームワークの勘所をPythonスペシャリストの杜世橋さんが、初心者向けのハンズオン、そしてより実践的な画像への自動タグ付けサービス実装をとおして解説します。 FastAPIはいま非常に注目されているPythonのWebフレームワークの1つです。Flaskのようにシンプルに書ける一方でPythonのType Hintの機能をうまく活用し、HTTPのリクエスト/レスポンスをPythonの関数の引数/戻り値とシームレスにマッピングして非常に効率的に開発ができるのが最大の特徴です。非同期処理にも対応していてその名

            FastAPI入門 - モダンなPythonフレームワークの特性をチュートリアルで手軽に学ぶ|ハイクラス転職・求人情報サイト AMBI(アンビ)
          • さよならFlask ようこそFastAPI / goodbye Flask, welcome FastAPI

            DeNA社内の技術共有会でFastAPIの便利さについて語った資料です。 ▼ 要点 ・機械学習の推論API立てる用途ならFastAPIが便利 ・型定義で開発UXばっちり ・ドキュメント自動生成でつなぎこみも円滑 ▼ ソースコード https://github.com/amaotone/fastapi-example

              さよならFlask ようこそFastAPI / goodbye Flask, welcome FastAPI
            • 米谷昂@FastAPIガチ勢 on Twitter: "話題になっている内定取消しの件 まず全ての就活生に言いたいのは、ホームページなんて見ても良いことしか書かないので、厚生年金の事業所検索をした方が良いということ。 被保険者数2、というのは社会保険加入者が2名しかおらず概ね役員、… https://t.co/1B4id1rbqo"

              話題になっている内定取消しの件 まず全ての就活生に言いたいのは、ホームページなんて見ても良いことしか書かないので、厚生年金の事業所検索をした方が良いということ。 被保険者数2、というのは社会保険加入者が2名しかおらず概ね役員、… https://t.co/1B4id1rbqo

                米谷昂@FastAPIガチ勢 on Twitter: "話題になっている内定取消しの件 まず全ての就活生に言いたいのは、ホームページなんて見ても良いことしか書かないので、厚生年金の事業所検索をした方が良いということ。 被保険者数2、というのは社会保険加入者が2名しかおらず概ね役員、… https://t.co/1B4id1rbqo"
              • Pythonの3大Webフレームワーク「Flask」「Django」「FastAPI」で急成長しているのは?

                Pythonの3大Webフレームワーク「Flask」「Django」「FastAPI」で急成長しているのは?:Pythonの年次開発者調査結果が公開 Python Software FoundationとJetBrainsは、共同で実施した年次Python開発者調査の結果をまとめた「Python Developers Survey 2021 Results」(2021年Python開発者アンケートの結果)を発表した。 Python Software Foundation(PSF)とチェコのJetBrainsは2022年6月3日、共同で実施した5回目の公式年次Python開発者調査の結果をまとめた「Python Developers Survey 2021 Results」(2021年Python開発者アンケートの結果)を発表した。 同調査は、Pythonとそれを取り巻くエコシステムの現状を

                  Pythonの3大Webフレームワーク「Flask」「Django」「FastAPI」で急成長しているのは?
                • PythonのWeb開発フレームワーク「Flask」とは? Django、Bottle、FastAPIの特徴と合わせて解説

                  本記事は『Python FlaskによるWebアプリ開発入門 物体検知アプリ&機械学習APIの作り方』(佐藤昌基、平田哲也)の「はじめに」と「第0章 Flaskの概要と環境構築」の一部を抜粋したものです。掲載にあたって編集しています。 はじめに Flaskは、2010年4月1日にArmin Ronacher氏がエイプリルフールのネタとしてリリースし、そこからPython愛好家の間で人気になったPython製Webマイクロフレームワークです。2018年にはPython開発者調査で最も人気のあるWebフレームワークとして投票され、いまでも高い人気があります。 本書は、Flaskによる実践的なWebアプリケーション(以下、アプリ)の作成を通して、自力でアプリを作成できるようになることを目的としています。 まずは最小のアプリの作成から始め、問い合わせフォーム、データベースを使ったアプリ、認証機能と

                    PythonのWeb開発フレームワーク「Flask」とは? Django、Bottle、FastAPIの特徴と合わせて解説
                  • FastAPIを用いたAPI開発テンプレート - Qiita

                    はじめに FastAPIはPythonのWEBフレームワークで、同じ分類のフレームワークとしてFlaskやDjangoなどが挙げられます。FlaskとDjangoはよく比較され、Flaskが最小限のコードで書き始められるシンプルなマイクロフレームワークと呼ばれるのに対し、Djangoはログイン機能、データベース管理などが初めから備わっておりフルスタックフレームワークと呼ばれています。 FastAPIはFlaskと似ているマイクロフレームワークで公式ドキュメントでは次のように紹介されいます。FastAPI は、Pythonの標準である型ヒントに基づいてPython 3.6 以降でAPI を構築するためのモダンで高速(高パフォーマンス)な、Web フレームワークです。[1] 本記事では、以下の内容を扱います。 特徴である型ヒントとそれにより実現できるAPIドキュメントの自動生成 SQLAlch

                      FastAPIを用いたAPI開発テンプレート - Qiita
                    • RESTful APIをシュッと作る技術 - PythonとFastAPIでバックエンドを5時間ちょいで作ってみた - Lean Baseball

                      久々に開発ネタです. 大晦日ハッカソン2019 #大晦日ハッカソンで, 野球のデータをシュッと見るためのDashboardを作る(理由は後ほど). そんなDashboardのBackend APIをシュッと開発する. を目標に立て現在進行系でやってるのですが, 午後の進捗その2 Docker化が特に滞りなく完了. API Docも見れるとかFast API強すぎぃ 昨日の夕方から開発してたAPIはアッサリ1st Ver.できたので, 大晦日の買い物終わったらフロントエンドを除夜の鐘が鳴るまでになんとかするぞ #大晦日ハッカソン pic.twitter.com/wWMiSvQDKu— Shinichi Nakagawa (@shinyorke) 2019年12月31日 Backendを昨日(12/30)の18:00から着手して(実質作業時間)約5時間ちょいで完成させてしまいました. 本年最後

                        RESTful APIをシュッと作る技術 - PythonとFastAPIでバックエンドを5時間ちょいで作ってみた - Lean Baseball
                      • 【全2回】AWS Lambda x FastAPIによるPythonモダンAPI開発のすゝめ 1 - RAKSUL TechBlog

                        はじめに この記事を読んで得られること 対象読者 あまり説明しないこと 前提とするバージョン 参考となるレポジトリ 1. 開発環境の構築で使用したツール AWS Lambdaのコンテナサポートを採用 Poetry利用時に開発と本番環境の適切な管理でLambdaデプロイ問題を解決 Poetry利用時に起きた問題 Dockerfileを分けてデプロイできない問題を回避 Mutagen Composeを採用 Dockerの同期遅い問題 Mutagen Composeを利用 2. 開発で活用したPythonライブラリ パッケージ管理 Poetry Ryeも検討したものの採用せず ベースのライブラリ FastAPI Mangum Powertools for AWS Lambda リンター・フォーマッター Ruff Mypy 型アノテーション自動生成ツールの活用 Black テスト Pytest p

                          【全2回】AWS Lambda x FastAPIによるPythonモダンAPI開発のすゝめ 1 - RAKSUL TechBlog
                        • 新刊『動かして学ぶ!Python FastAPI開発入門 』発売、Web APIの作り方とAWS・GCPへのデプロイ方法まで

                          本書はエンジニアのための情報共有コミュニティ「Zenn」で中村翔さんが公開されている人気コンテンツ「FastAPI入門」を元に書籍化。Python3.11への対応、コラムの追加、本番環境での運用を想定したAWS・GCPへのデプロイ方法について追記するなど、大幅にパワーアップした内容となっています。 FastAPIはDjangoやFlaskに並んで人気が高いPythonのWebフレームワークです。コードを書くとSwagger UIが自動生成される、型安全、高速という優れた特長もあって実際の開発現場で利用されることも増えています。 本書ではそんなFastAPIの使い方を、ToDoアプリの作成を通じて学べます。特に、以下の点にこだわって解説しています。 DB接続にもasync/awaitを利用 Dockerによるクリーンな環境構築 スケーリングを考慮したディレクトリ構成 FastAPIが気になっ

                            新刊『動かして学ぶ!Python FastAPI開発入門 』発売、Web APIの作り方とAWS・GCPへのデプロイ方法まで
                          • サーバーサイドで動的にOGP画像をシュッと作る方法 - FastAPIとCairoSVGで作る画像生成API - JX通信社エンジニアブログ

                            JX通信社シニア・エンジニアの@shinyorke(しんよーく)です. 最近は色んなエンジニアリングをしつつ, イベントの司会業をしています(詳細は最後の方を見てね). 開発しているサービス・プロダクトの要件で, TwitterやLINE, FacebookでシェアするOGP*1コンテンツ(タイトル・本文・画像)が欲しい コンテンツはユーザーさんの操作で動的に変わる テキストだけじゃなくて, 画像も変えたい←これ なんて事は非常によくある話だと思います. 私はちょっと前に開発したAIワクチン接種予測でそれがありました. こういうやつです 例えば上記画像のテキスト(地域・年齢・接種可能時期)は予測の結果を動的に画像テンプレートに入れて都度作っています. 上記のOGPを生成するために必要なことはこういう感じだろうなー, と以下の絵の通り整理し, やったこと 結果的に, OGPを生成するためのサ

                              サーバーサイドで動的にOGP画像をシュッと作る方法 - FastAPIとCairoSVGで作る画像生成API - JX通信社エンジニアブログ
                            • 【徹底解説】Flask VS FastAPI

                              はじめに 今回の記事では、PythonでWeb開発を進める際に使われるWebフレームワークである「FastAPI」と「Flask」について、両者それぞれの特徴と強みを具体的なソースコードを用いて解説する。 この記事の対象とする読者 これからPythonでWeb開発を進めることを検討している人 APIを開発したいものの、どのような技術を使うべきが迷っている人 FlaskとFastAPI両方とも、あるいはどちらか一方に興味を持っている人 社内あるいは個人開発の技術選定で、FastAPIあるいはFlaskの導入を検討している人 Flaskとは FlaskはPythonで開発された軽量のWSGI(Web Server Gateway Interface)製のWebフレームワークである。 Flaskの説明に入る前に、WSGIについて簡潔に説明させてほしい。WSGIを完結に説明すると、Pythonにお

                                【徹底解説】Flask VS FastAPI
                              • 【徹底解説】FastAPIの特徴と課題点

                                はじめに 今回の記事では、PythonのWebフレームワーク「FastAPI」の特徴・課題点を簡潔に解説する。本記事の読者は主に以下のようなものを対象とする。 FastAPIを知らない人 FastAPIを実務で活用したい人 技術選定でFastAPIを選ぶ理由を検討している人 PythonでWebアプリケーションを開発したい人 すでにDjangoやLaravelなどの他のフレームワークに着手していて、別のフレームワークに関する情報を収集している人 FastAPIとは FastAPIとは、Djangoと同様にPythonのWebフレームワークである。主にWeb APIを開発するために利用される。 FastAPIの特徴 FastAPIの特徴は以下の通り。 Node.jsやGo言語に匹敵する高速なアプリケーションを開発できる。Pythonフレームワークの中では最も高速。 少ないコード量で実装できる

                                  【徹底解説】FastAPIの特徴と課題点
                                • Nuxt.js + FastAPIを使ったデータエンジニアリングなデモ作り - 社内勉強会でデブサミのデモをしました - JX通信社エンジニアブログ

                                  (今更ですが)新年あけましておめでとうございます! JX通信社でシニア・エンジニアをしています, @shinyorke(しんよーく)と申します. 最近は週に2, 3回, ジムで10kmちょい走っています.*1 JX通信社のエンジニアチームでは, 月に一度みんなが集まる月次勉強会というイベントがあります(基本的に第2金曜日開催)*2. tech.jxpress.net ※過去の開催レポです 2020年初(かつ, 飯田橋オフィス最後*3)の勉強会は, 「普及したいことや年末年始に勉強したことなどを発表するLT大会」 ということで, 私は デブサミ2020登壇時に披露するデモアプリを披露 弊社プロダクトでも使っているFastAPI僕もやりました&Nuxt Core UI ええやで!っていう布教 (ちょっとだけ)野球選手の評価指標を紹介 という発表をさせてもらいました. このエントリーではそんな発

                                    Nuxt.js + FastAPIを使ったデータエンジニアリングなデモ作り - 社内勉強会でデブサミのデモをしました - JX通信社エンジニアブログ
                                  • Serverless Framework+mangum+FastAPIで、より快適なPython API開発環境を作る - JX通信社エンジニアブログ

                                    はじめに 最近ハイボールにハマっているSREのたっち(@TatchNicolas)です。 昨日オンライン開催されたJAWS DAYS 2020にて、JX通信社もサーバレスをテーマとして発表をしました。(by 植本さん) 発表でもありましたように、上記プロジェクトにおいて開発当時はスピードを優先してプロジェクトメンバーの手に馴染んでいて分担もしやすいフレームワークとしてFlaskを採用しました。 一方で、JX通信社としてはFlaskよりもFastAPIを使うプロジェクトが増えてきており、今後もその傾向は続く見込みです。 そこで、特設ページ作成やAPI提供など初動としての開発が一段落したのを機に、JAWS DAYSで発表した仕組みを今後のために発展させる検証をしたので紹介します。 TL; DR; JAWSでは Serverless Framework+awsgi+Flaskな構成でスピーディに

                                      Serverless Framework+mangum+FastAPIで、より快適なPython API開発環境を作る - JX通信社エンジニアブログ
                                    • FastAPI入門

                                      DjangoやFlaskを使っている方にもおすすめ、最近人気のPython製高速Webフレームワーク、FastAPIの入門書です。 FastAPIは 🔃 コードを書くとSwagger UIが自動生成される ✅ 型安全 💨 高速 という特長があります。 本書では、実用に耐えうるAPIを目指し、TODOアプリの作成を通して実践的な書き方を学ぶことができます。体系的に整理しつつも、チュートリアルのように読んでいただけると思います。特に以下のような点にこだわって「実践的」を目指していますので、少しでも参考になれば大変嬉しいです。 ・DB接続にもasync/awaitを利用する (非同期での書き方を紹介している記事はまだ少ない) ・dockerによってクリーンな環境構築 ・スケーリングを考慮したディレクトリ構成 ※本書は時期を見て有料に変更する可能性があります。お早めにどうぞ! ※サポート頂ける

                                        FastAPI入門
                                      • [FastAPI] Python製のASGI Web フレームワーク FastAPIに入門する - Qiita

                                        PythonのWeb frameworkで、Flaskのようなマイクロフレームワークにあたります。 パフォーマンスの高さ、書きやすさ、本番運用を強く意識した設計、モダンな機能などが強みです。 FastAPIはStarletteの肩に乗る形で書かれており、非同期処理が扱いやすいです。 特に、以下の様な特徴があります。 ASGI websocketのサポート GraphQLのサポート バックグラウンドプロセスが扱いやすい python type hintによる自動ドキュメント生成 (Swagger UI) pydanticをベースとしたdata validation 率直に言って、responderに非常に似ています。(でた時期も近いですし、responderもStarletteがベースなので) ですが、下の2つはFastAPIの方がよっぽど使いやすく設計されています。 以下の観点から総合的に

                                          [FastAPI] Python製のASGI Web フレームワーク FastAPIに入門する - Qiita
                                        • 【全2回】AWS Lambda x FastAPIによるPythonモダンAPI開発のすゝめ 2 - RAKSUL TechBlog

                                          はじめに 対象読者 あまり説明しないこと 前提とするバージョン 参考となるレポジトリ 3. アーキテキチャ及びディレクトリ構造 オニオンアーキテクチャを採用 オニオンアーキテクチャとは 誕生の背景 依存関係逆転の原則の活用 採用理由 参考になった記事 ディレクトリ構造 全体の構成 api schema apiとusecaseの間のデータ構造を提供する役割 schemaはパスオペレーション関数のリクエストとレスポンスの構造を提供する役割 usecase domain infrastructure core container_config exception 参考にしたもの まとめ はじめに ラクスルグループのノバセルで新卒2年目のエンジニアをしています田村(tamtam)です。 第1回では、AWS Lambda x FastAPIによるPythonモダンAPI開発を実現する上で役立つであろ

                                            【全2回】AWS Lambda x FastAPIによるPythonモダンAPI開発のすゝめ 2 - RAKSUL TechBlog
                                          • PythonのWeb frameworkのパフォーマンス比較 (Django, Flask, responder, FastAPI, japronto) - Qiita

                                            PythonのWeb frameworkのパフォーマンス比較 (Django, Flask, responder, FastAPI, japronto)PythonFlaskwrk2responderFastAPI 以下のPython Web frameworkを使って単純なAPIを立てて、負荷試験をしてみました。 Django (2.X) Flask FastAPI responder japronto 結果的に、ざっくりと以下が分かりました! performanceは「japronto >>> FastAPI > responder >>> Flask ~ Django」だと言えそう FastAPIとresponderはsingle workerだと秒間100~1000程度のrequestであればpython界で圧倒的なperformanceを誇るjaprontoとほとんど同水準 (検

                                              PythonのWeb frameworkのパフォーマンス比較 (Django, Flask, responder, FastAPI, japronto) - Qiita
                                            • Microservice in Python using FastAPI

                                              Creating Microservices with Python Introduction to Microservices Benefits of Microservice Drawbacks of Microservice Why Microservice in Python Introduction to FastAPI Why FastAPI Installing FastAPI Creating Simple REST API using FastAPI Using PostgreSQL Database with FastAPI Microservice Data Management Patterns Database Per Service Shared Database API Composition Creating a Python Microservice in

                                                Microservice in Python using FastAPI
                                              • 機械学習モデルの推論web APIサーバーの構成 [FastAPIの実装例あり] - Qiita

                                                本記事の目的 機械学習の推論web APIの典型的な構成を紹介します。必ずしもWEBの知識や機械学習の知識はなくても読める内容だと思います。(実装例は除く) 紹介する構成は、業務でいくつかの機械学習モデルの推論web APIをたてた経験からきていますが、あくまでも個人的見解なので、こっちのほうがいいよーってのがあればコメントで教えていただけると幸いです。 実装例ではweb frameworkは非同期処理の扱いやすさ、実装のシンプルさの観点からFastAPIを使います。 目次 機械学習の推論web APIの構成 実装例 1. 機械学習の推論web APIの構成 本記事では、2つのパターンを紹介します。 注) まず、共通部分の説明をします。機械学習の知見が必要なのは基本的に共通部分だけです。もし、機械学習に詳しくない or webに詳しくない場合は、共通部分と後述の部分で役割を分担できるので、

                                                  機械学習モデルの推論web APIサーバーの構成 [FastAPIの実装例あり] - Qiita
                                                • StreamlitとFastAPIで非同期推論MLアプリを作る

                                                  StreamlitはPythonだけでwebアプリを作ることができるツール(ライブラリ)です。フロントに関する知識がほとんど不要なため、簡単なダッシュボードやデモアプリを作るのに適しています。公式のページでは様々なサンプルアプリが公開されています。 ところで機械学習(特に深層学習)モデルでは、例えば画像1枚あたり数秒の推論時間がかかることもあります。Streamlitは機械学習のデモアプリ用途としても適していると思いますが、推論に時間がかかる場合にいちいち推論完了を待つのは退屈かもしれません。ここではPythonのwebフレームワークであるFastAPIを組み合わせることで、推論を非同期で行う画像認識アプリケーションを作ります。 コードはこちらに配置しました。 アプリ内容 StreamlitによるGUIは以下のようになります。画像をアップロードし、「Submit」ボタンを押すことで画像認識

                                                    StreamlitとFastAPIで非同期推論MLアプリを作る
                                                  • 野球AIチャットが作りたくなったのでひとまず, バックエンドから作ってみた - FastAPIからOpenAIをいい感じに使う何か - Lean Baseball

                                                    ※このエントリーは「OpenAIをいい感じに使うバックエンドをFastAPIで実装したぜ!」というエントリーです(サンプルコードはこちら), 「OpenAIで何かを作った・人工知能を産んだ」訳では無いのでそっち方面を期待している方はそっ閉じしたほうが良いかもしれません(Web API開発に興味ある人はそのまま読んで). 趣味は野球観戦と見せかけて, 「休日にダラダラ野球見ながら趣味のコードを書く」のが最も好きな人です. 100敗待ったなしの贔屓チームがいきなり7連勝したり*1, 昨年まで扇風機状態だった贔屓チームのフィジカルモンスターが突然覚醒して4番ライトに定着*2したりと理解が追いつかない野球を見るのはこれぐらい(コード書きながらみる)ぐらいがちょうどいいと思ってます, だってプレーオフ行けるか怪しいですもの*3. 時は遡り2020年, 私はセイバーメトリクスといくつかの機械学習の知見

                                                      野球AIチャットが作りたくなったのでひとまず, バックエンドから作ってみた - FastAPIからOpenAIをいい感じに使う何か - Lean Baseball
                                                    • Dockerコンテナ内でFastAPIアプリケーションの起動エラーの解決 - Qiita

                                                      概要 本稿では、Dockerコンテナ内でFastAPIアプリケーションを起動する際に発生したエラーとその解決方法について論じる。アプリケーションがIPv6アドレスでバインドしようとして失敗した時の対処方法を以下に説明する。 本件のエラー ssh-python | ERROR: [Errno 99] error while attempting to bind on address ('::1', 8080, 0, 0): IPv6アドレスでのバインドエラー: エラー内容:FastAPIがIPv6アドレス(::1)でポート8080をバインドしようとしたが、そのアドレスが利用できないことを示していた。 解決策:FastAPIがIPv4アドレス(0.0.0.0)でポートをリッスンするように変更する。main.py(またはFastAPIを実行しているファイル)で、uvicorn.run()関数のh

                                                        Dockerコンテナ内でFastAPIアプリケーションの起動エラーの解決 - Qiita
                                                      • FastAPIがPydantic v2対応したので、V2移行のポイントを紹介する(意外と簡単)

                                                        概要 先日、PydanticV2に対応したFastAPI 0.100.0が正式にリリースされました。 PydanticV2は大部分をRustで書き直したことで高速化を実現している他 使い勝手向上のためにAPIが多少変更になっているので、移行作業が必要になる場合があります。 本記事では、V1->V2への移行のポイントについて紹介します。 速度向上について Rust化による速度向上も重要なポイントです。 参考までに、私がPydantic部分のみで試した際は、5~6倍高速化されていました。 以下のクラウドカメラのSafie社のブログで、FastAPIで使用した場合の速度向上について実験されています。 参考リポジトリ FastAPI 0.100.0に対応したFastAPIのサンプルリポジトリを公開しています。 他にもパッケージ管理のRyeやLinterのRuff、SQLAlchemy v2などの最

                                                          FastAPIがPydantic v2対応したので、V2移行のポイントを紹介する(意外と簡単)
                                                        • Vite+FastAPI+NGINX+Dockerの環境構築 - Qiita

                                                          概要 GitHubにテンプレートとして公開しています。 https://github.com/gaitou2048/fastAPI-veutify-template 前提 Docker, Docker Composeインストール済み 実行環境はMac + Docker for Desktop(Mac) ですが、Windows(WSL)やLinuxでもできるはず。 FastAPIコンテナ(バックエンド) 以下のDockerfileを使います。 pythonのパッケージ管理はpoetryを使っています。 以下のパッケージをpyproject.tomlでインストールしています。 fastapi uvicorn (pyproject.toml) https://github.com/gaitou2048/fastAPI-veutify-template/blob/main/back/app/pyp

                                                            Vite+FastAPI+NGINX+Dockerの環境構築 - Qiita
                                                          • FinTechの現場でバリバリ活躍するFastAPIの理想と現実 (PyCon APAC 2023)

                                                            FastAPIの人気が日に日に増している昨今ですが、まだまだ「他のフレームワークでいいじゃん」「本当に本番投入して大丈夫?」など様々な思いで導入をためらっている方も多いかと思います。 理想的な姿はあれど、現実的には理想を追い過ぎると準備やメンテナンスのコストが高すぎうまくいかないこともあります。そのため、ある程度の妥協をして開発・運用していくことになりますが、”コスパ”のいい塩梅をお届けします。 私は、日頃FinTechというミッションクリティカルなドメインにおいてFastAPIをかれこれ2年以上運用しており、その現場からの開発の現実を紹介します。これならFastAPIを実務で使えそうだな、という実感を抱いて帰っていただきたいと思っています。 同じ思いで、「動かして学ぶ!Python FastAPI開発入門」という本を今年出版しました。本では体系的に学べるようにするため盛り込めなかったTi

                                                              FinTechの現場でバリバリ活躍するFastAPIの理想と現実 (PyCon APAC 2023)
                                                            • GPT, Langchain, Faiss, FastAPIを組み合わせた Chat検索システム開発

                                                              『LLM(GPT, PaLM等) with MLOps LT大会!!!』登壇資料。 https://mlops.connpass.com/event/279156/

                                                                GPT, Langchain, Faiss, FastAPIを組み合わせた Chat検索システム開発
                                                              • PythonのWebフレームワーク「FastAPI」とTypeScript・OpenAPIで、型つきでWebアプリを作ってみる - 機械学習WebAppのための技術スタック - Qiita

                                                                PythonのWebフレームワーク「FastAPI」とTypeScript・OpenAPIで、型つきでWebアプリを作ってみる - 機械学習WebAppのための技術スタックPythonTypeScriptMachineLearningOpenAPIFastAPI Intro Pythonで実装した機械学習や画像処理をバックエンドにしたWebアプリをサクッと作るための技術スタックとして、FastAPI+TypeScript+OpenAPIを紹介します。 モチベーション PythonでサクッとWebサーバ(APIサーバ)を立てたい 今まではFlaskを使ってたような用途 「Pythonで」 機械学習・画像処理のサービスなので 「サクッと」 バリデーションとか楽したい サーバ、クライアント共に型の保証が欲しい 機械学習や画像処理のアプリはパラメータが多くなりがち・一貫した慣習が無いのでミスしやす

                                                                  PythonのWebフレームワーク「FastAPI」とTypeScript・OpenAPIで、型つきでWebアプリを作ってみる - 機械学習WebAppのための技術スタック - Qiita
                                                                • FastAPI

                                                                  FastAPI framework, high performance, easy to learn, fast to code, ready for production ドキュメント: https://fastapi.tiangolo.com ソースコード: https://github.com/tiangolo/fastapi FastAPI は、Pythonの標準である型ヒントに基づいてPython 以降でAPI を構築するための、モダンで、高速(高パフォーマンス)な、Web フレームワークです。 主な特徴: 高速: NodeJS や Go 並みのとても高いパフォーマンス (Starlette と Pydantic のおかげです)。 最も高速な Python フレームワークの一つです. 高速なコーディング: 開発速度を約 200%~300%向上させます。 * 少ないバグ: 開発者起

                                                                    FastAPI
                                                                  • ChatGPT風の画面を表示できるChatbot UIをFastAPIで作成した自作LangChainサーバに接続させる方法|mah_lab / 西見 公宏

                                                                    ChatGPT風の画面を表示するOSSがいくつか出てきている中で、コードの読みやすさと操作性を比較した上でオススメしたいのが、Next.jsで書かれているChatbot UIというOSSだ。 ローカルでサクッと起動ができ、立ち上がるとこんな画面が表示される。 ChatGPTの画面とうり二つOpenAIのAPI Keyを入力すれば簡単にOpenAIのチャットモデルと接続される。API接続のChatGPTなので、本家のChatGPTよりはやりとりできる文字量が制限されるものの、本家のChatGPTではセンシティブな情報を扱うことができないため、API接続のUIにも価値はある。 ところでこのChatbot UI、ソースコードを読んでみると環境変数でAPI接続先を差し替えることができるようになっている。process.env.OPENAI_API_HOSTの部分だ。 utils/app/const

                                                                      ChatGPT風の画面を表示できるChatbot UIをFastAPIで作成した自作LangChainサーバに接続させる方法|mah_lab / 西見 公宏
                                                                    • FastAPI で独自に定義した API エラーも仕様書に自動反映したかった話 - JX通信社エンジニアブログ

                                                                      こんにちは、サーバーサイドエンジニアの @kimihiro_n です。 最近は FastAPI という Python の Web フレームワークが社内で密かなブームとなっています。 今回はその FastAPI を使ったエラー定義まわりの話をしたいと思います。 FastAPI とは FastAPI の概要については先日ちょうど社内勉強会用に資料を作ったのでこちらを見てもらえるのが早いです。 ざっくり言えばシンプルなインターフェースとドキュメント(OpenAPI)の自動生成が強力なフレームワークになります。 OpenAPI でドキュメント管理 今回注目したいのはドキュメントの自動生成のほうです。 開発チームでもドキュメントとAPIの実際の仕様が一致しない問題が時々発生していて、どうドキュメントを管理していくかが課題となっています。 KPTで振り返った結果、「人がドキュメントを書くからメンテが大

                                                                        FastAPI で独自に定義した API エラーも仕様書に自動反映したかった話 - JX通信社エンジニアブログ
                                                                      • FastAPI ディレクトリ設計|巣籠 悠輔

                                                                        最近、アプリケーションを開発する際のバックエンドはもっぱら FastAPI を使っています。Python ベースの、軽量で高速なフレームワークです。 実装を繰り返す中で行き着いた、個人的に開発を進めやすいディレクトリ構成をまとめました。 ※ただし、個別のファイルの中身に関しては言及するとボリュームが増えてしまうので、本記事では触れません。あくまでも全体感のみをお伝えする内容になります。 まず、下記が全体感です(User と Book がモデルとして存在しているとします)。 # ディレクトリ・ファイル構成全体 ├── app │   ├── __init__.py │   ├── cruds │   │   ├── __init__.py │   │   ├── users.py │   │   ├── books.py │   │   └── domains │   │      ├──

                                                                          FastAPI ディレクトリ設計|巣籠 悠輔
                                                                        • 認証機能を(ほぼ)作らずに認証付きバックエンドを3日で作っちゃった話 - Google CloudとFastAPIのエコシステムに全力で乗っかろう - Lean Baseball

                                                                          心身のコンディション維持と体調管理のため, 毎日運動と血圧・体重・脈拍の計測をしているマンです*1. 新たな個人開発かつ, 趣味と実益(&学習)を兼ねて, プロダクトオーナーやりたい宣言したので, 個人開発としてプロダクト作りたい ネタどうしようかな...そうだ! 毎日運動と血圧・体重・脈拍の計測 に役立つ何かを作るぞ! 自分でSaaSを開発する練習もしたいので, スタートアップがやりそうなアーキテクチャでちゃんと作ろう と, 昨年末に思いつき「自分専用のヘルスケア領域SaaS」としてモノを作っているのですが, データの入力元となるフロントエンドと, 記録したデータの可視化&リコメンドに注力したい ↑の理由で, バックエンドの開発は正直な話思いっきり手を抜きたい 一番面倒くさいと言っても過言ではない認証機能(ユーザー管理)を開発ゼロでやりたい!!! ...と思いつき, 知識と余暇の時間を総

                                                                            認証機能を(ほぼ)作らずに認証付きバックエンドを3日で作っちゃった話 - Google CloudとFastAPIのエコシステムに全力で乗っかろう - Lean Baseball
                                                                          • 【翻訳記事】FastAPIは実際にDjangoと非常に相性が良い - Qiita

                                                                            これはなに? FastAPIっていういい感じのpythonのAPIフレームワークがあって使っているのだが,公式ではSQLalchemyしか連携していない.ASGI関連の整備が遅れている(?)せいでDjangoとのあれこれがよくわからん状態らしい(伝聞推定) で,どうにか先駆者はいないかと探したところ,すでに議論があった. [QUESTION] How to use fastapi with Django ORM ? · Issue #716 · tiangolo/fastapi ここでおすすめされているやり方について,おそらく色んな人がDjangoをやってRestAPIに挑戦するもDRFに敗れるという経験をしているだろうことから,それよりもとっつきやすいであろうFastAPIでの再挑戦を促す意味で全文訳してみた.(と,いってもほぼすべてをみらい翻訳にかけただけなのだが……笑) 追記 (20

                                                                              【翻訳記事】FastAPIは実際にDjangoと非常に相性が良い - Qiita
                                                                            • FastAPIのバックグラウンド処理の多重度を同期・非同期で比較してみたよ - Qiita

                                                                              FastAPIには(Starletteには)レスポンスを先に返しておいて重たい処理はバックグラウンドで実行するための機能BackgroundTaskが標準で備わっています。今回、このバックグラウンドタスクの多重度がどれくらいまでいけるのか、同期・非同期で違いはあるのか?について検証してみました。 同期・非同期での呼び出し方の違い そもそもバックグラウンドタスクとしたものはどのように処理されるのか調べてみました。Starletteの中身を斜め読みするに、非同期処理を登録した場合はメインスレッドにてノンブロッキングで、同期の場合はプールされたスレッドにて処理されるように見えます。雰囲気的に。 class BackgroundTask: def __init__( self, func: typing.Callable, *args: typing.Any, **kwargs: typing.A

                                                                                FastAPIのバックグラウンド処理の多重度を同期・非同期で比較してみたよ - Qiita
                                                                              • FastAPI x MySQL on Docker ~ マイグレーション・API作成 ~

                                                                                FastAPI は Python ベースのフレームワークで、その名の通り API を実装するのにうってつけです。軽量で非常に高速なフレームワークですが、FastAPI そのものには DB のシードやマイグレーションといった機能はなく、SQLAlchemy や Alembic など、他のライブラリを組み合わせて使うことが前提となります。 今回は、FastAPI で MySQL(厳密には MariaDB)を用いる際に、どのような実装が必要になってくるのかを見ていきたいと思います。セットアップは Docker コンテナ上で行います。 ※ 最終成果物は こちら のリポジトリにアップしています。 ファイル・ディレクトリ構成概観 まずはじめに、ファイル・ディレクトリ構成を示します。 ├── .env.development ├── app │   ├── cruds │   │   ├── __ini

                                                                                  FastAPI x MySQL on Docker ~ マイグレーション・API作成 ~
                                                                                • FastAPIを使っていなくても、Pydanticは便利です

                                                                                  AuthorsTwitter@__Attsun__Published onMonday, September 6, 2021 Aboutpydantic 単体でも利用可能な便利な機能についてご紹介します。 pydantic とは公式ドキュメント の冒頭には以下のような記載があります。 Data validation and settings management using python type annotations. python の型アノテーションを使った、データバリデーションと設定管理のライブラリ、ですね。 基本的な使い方このあとの話を理解するのに必要な、基本となる機能をさらっと紹介します。 モデルの定義pydantic では、クラスを使ってモデルを定義します。 各フィールドには型が必要です。 from datetime import datetime from typing i