uvは超高速なPythonパッケージマネージャ 仮想環境作成・パッケージ管理・Pythonバージョン管理を一元化 Rust製で10〜100倍の速度向上
![Pythonパッケージ管理 [uv] 完全入門](https://cdn-ak-scissors.b.st-hatena.com/image/square/5eb3a78647bb994227e2b72139af64db0d7f33f3/height=288;version=1;width=512/https%3A%2F%2Ffiles.speakerdeck.com%2Fpresentations%2F8e1ff1eaedc0427bbc88de937a2aa2f6%2Fslide_0.jpg%3F35132442)
簡易版はこちら Pythonのパッケージ管理はこれまで pip、venv、poetry などで行われてきましたが、最近 uv が注目を集めています。 本稿では uv をシステム開発で使うための詳細な情報、特に、poetry、venv、pipからの移行手順を解説します。 uv公式ドキュメント uv (github) 1. uvの概要 1.1 uvとは? uvは 高速な動作、クロスプラットフォーム対応のロックファイル、ツール管理の専用インターフェースを提供することで、快適な開発環境を実現しています。 1.2 uvのアーキテクチャ uvはRustで実装されており、高いパフォーマンスとメモリ安全性を誇ります。Rustの並行処理能力を活用し、依存関係解決を高速化しています。また、効率的なキャッシュ機構を備えており、ダウンロードしたパッケージ、ビルドされたwheelファイル、ソースコードなどをキャッシ
寺田 学(@terapyon)です。2024年10月の「Python Monthly Topics」は、Python Web UIフレームワークの1つであるStreamlitの基本的な使い方を紹介します。 2024年4月には、「Python Web UIフレームワークで作るデスクトップアプリ」と題し、Steamlitを使ってデスクトップアプリ化をする紹介を行いました。 今回はStreamlitにフォーカスを当てて、よく使う機能を紹介します。Streamlitにはたくさんの機能があり、公式ドキュメント APIリファレンスを見ても、どの機能から使って良いのかわからないという声がありました。今回は、筆者目線でよく使うであろう機能に絞って紹介します。 Streamlitとは StreamlitはPythonで構築できるWeb用のフレームワークです。Pythonのモジュールを定義することで、インタ
この本では、初心者・入門者の方に向けて、RAGの知識や使い方を体系的にまとめました。少し難易度の高い内容になりますが、本書の中で事前に学んでおくべき項目を示しているため、ご安心ください。 【概要】 ・内容:RAGの概要【入門者向けの基礎知識】、RAGの処理フロー【In-Context Learning / Embedding / Vector Search】、RAGのビジネス活用ロードマップ【大企業向け】、RAGの実装アプローチ、RAGの大分類【Document RAG】、RAGの大分類【SQL RAG】、RAGの大分類【Graph RAG】、RAGの精度評価アプローチ、RAGの精度評価方法【LangChain Evaluation】、RAGの精度評価方法【Ragas】、RAGの精度改善手法【データ品質 / プロンプト品質 / ベクトル検索】、RAGの精度改善のためのLLMOps概論、LL
Python関連のツールベンダとして知られるAnacondaは、Excel上で直接Pythonコードを実行できる新機能「Anaconda Code」を含むExcelのアドオンツール「Anaconda Toolbox in Excel」をパブリックベータとして公開しました。 You can now run Python directly in Excel locally w/ the new Anaconda Code add-in! Public beta is live! Faster performance, flexible data handling, editable initialization, & customizable environments. Read more in our blog & follow @anacondainc: https://t.co/9LAy
はじめに Pythonのデータ解析エコシステムは日々進化を続けています。2024年現在、効率的なデータ処理、直感的な可視化、高度な機械学習の自動化など、様々な新しいツールが登場しています。本記事では、最新のPythonデータ解析ライブラリを紹介し、それぞれの特徴や使用例、実際のユースケース、そして導入方法まで詳しく解説します。 1. データ操作ライブラリ 1.1 Polars: 高速データ処理の新標準 Polarsは、Rustで実装された高速なデータ操作ライブラリです。pandasに似たAPIを持ちながら、大規模データセットでより高速に動作します。 特徴: 高速な処理速度 メモリ効率が良い pandasに似たAPI 使用例: import pandas as pd # サンプルデータを作成 data = { "age": [25, 32, 28, 35, 40, 50], "categor
Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? この記事ですることを3行で Pythonの標準ライブラリでできる並列実行を、あらためて総当たりで速度比較しよう ウォーターフォールチャートで、それぞれの並列処理の処理時間の特徴を可視化しよう boto3の実行をモデルケースにして、どの並列処理が一番早いのかを調べよう この記事の結論を先に Python 3.12から本格的に使えるようになったサブインタープリターは、CPUで実行する処理について言えば、従来のサブプロセスよりも高速 boto3の実行は、サブインタープリターよりも署名付きURLの非同期実行のほうが速い → S3からの10ファイ
Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? なぜこの記事を書くのか 皆さん、データ解析を行う際にどのようなライブラリを用いているでしょうか。 おそらく大半の人はpandasを使っているのではないでしょうか。 私もpandas使ってます。簡単だよね(´・ω・`) しかし、業務でバカクソでけえデータを読み込もうとしたときに、読み込み時間がとんでもなくかかったり、メモリ不足でそもそも読み込めもしないことが起きていました。 読み込みにメモリ食われすぎて他の作業ができずに待機した挙句、燃え尽きたかのようにノーパソのファンが止まると同時にメモリ不足のエラーが出たときには切れ散らかします。 (
こんちには。 データアナリティクス事業本部 機械学習チームの中村(nokomoro3)です。 冬休みの個人的課題図書(自習)として「Pythonによる時系列予測」を読み終えましたので、感想と振り返りを書いておこうと思います。 書籍情報 以下の書籍になります。 Pythonによる時系列予測 | マイナビブックス 発売 : 2023年10月 翻訳本であり原著は以下となります Time Series Forecasting in Python 発売 : 2022年08月 概要 概要として本書に記載されていることと、記載されてないことを紹介します。 記載されていること(感想含む) 記載されていることは以下のようになっています。 時系列タスクの説明 トレンド、季節性、残差という3成分に分けられることの説明 ランダムウォークという解けない問題の定義 統計モデル MA、AR、ARMA、SARIMA、SA
Code Llamaは、Llama 2をコードに特化したデータセットでトレーニングして構築された。コードと自然言語の両方のプロンプト(例えば、「Write me a function that outputs the fibonacci sequence.:フィボナッチ数列を出力する関数を書いてください」など)から、コードとコードに関する自然言語を生成できる。コード補完やデバッグに使うことも可能だ。Python、C++、Java、PHP、TypeScript(JavaScript)、C#、Bashなど、現在使われている多くの一般的なプログラミング言語をサポートしている。 Code Llamaの各モデルは、いずれも5000億トークンのコードとコード関連データでトレーニングされている。また、ベースモデルとCode Llama - Instructの7Bおよび13Bモデルは、既存のコードにコード
pulpは、pythonで数理最適化のモデルを記述するためのモジュール です。モデル記述後、そのまま指定した最適化ソフトウェアで解くことができます。デフォルトでは、最適化ソフトウェアとして同梱されているCBCが呼び出されます。pulpとCBCは、COIN-ORにより開発されています。 pulpはpythonのモジュールということだけあって、記述がとても楽です。解きたい問題を速攻で記述できます。 インストール方法も簡単です(condaも同様です)。 pip install pulp この記事では、そんな便利なpulpを使いこなすための備忘録です。 参考:PuLPによるモデル作成方法 — Pythonオンライン学習サービス PyQ(パイキュー)ドキュメント 目次 pulpが記述できる数理最適化問題モデル 最小の記述例 使い方 高速化・便利ワザ・注意点 1. pulpが記述できる数理最適化モデル
はじめに こんにちは! 私は業務で、数理最適化を活用したシステム開発、および導入支援に従事しています。 本記事は、私の妻が担当した 雑務(部署の懇親会のグループ分け) を題材として、それを数理最適化問題に落とし込み、条件を満たすようなグループ分けを求める簡易的なアプリをPythonで実装してみました。 「とりあえず動くものを作る」という意識で取り組んだため、もし特に数理最適化周りについて、より効率的なアプローチをご存じの方、また思いついた方は、ぜひご指摘いただけると幸いです。 具体的に・・・ 「部署の懇親会のグループ分け」の背景や概要は以下の通りとのことでした。 部署全体の人数は 100人程度、またその部署内にいくつかのチームが存在する。 この部署には、特に若手について、別チームの社員との親交が薄いという課題があった。 そこで、別チームの若手同士や、若手と年次が上の社員の親睦を深めるために
[電話予約の無人化]Amazon Connect + GPT-4 JSONモード + Whisperで、1回の発話から予約情報(日付,時間など)を抽出 はじめに Amazon Connect + GPT-4 JSONモード + Whisperで、1回の発話から予約情報(電話番号,日時,名前,人数)を正しく抽出できるか検証しました。 コールセンターでは、有人対応から無人対応に変更したいニーズが増えているように思います。 電話予約の無人対応を想定し、1回の発話で、下記の5つの予約情報を抽出できるか確認します。 お名前 電話番号 予約日 予約時間 人数 発話で予約情報を抽出する方法として、GPT-4 Turbo のJSONモードを利用します。 JSONモードの詳細は、下記を参照ください。 例えば、「名前はクラスメソッドで、電話番号は09011111111。来週の火曜日の19時に4名で予約できます
概要 JavaやC++などの他のオブジェクト指向言語ではsetter/getterメソッドの使用が推奨されているが、Pythonには存在しない。 もともとJavaやC++に触れていた僕には「なぜPythonにはsetter/getterメソッドがないのか?」がすごく疑問だった。 さらに、Javaなどの言語の資料では 「クラス内部の変数はprivateにして隠蔽せよ」 と書いてあるが、逆にPythonの資料では 「privateはなるべく使わずpublicを使え」 と書いてあることが多い。 矛盾しているのでは...? 気になったのでいろいろ調べて見た結果、そこには2つの理由があることがわかった。 さらに、Pythonでsetter/getterを使いたい場合の1つの代替案があるということもわかった。 この記事では オブジェクト指向とカプセル化について Pythonにsetter/getter
日本時間未明(午前三時)ものすごいスピードで語られたOpenAI初の開発者向けイベントDevDayで発表されたGPT-4-TurboとGPT-3.5-TurboによるJSONモード。 これはものすごく強力なんだけど、Python APIによる使い方がどこにも描いてないので試行錯誤の末見つけましたので共有いたします。 from openai import OpenAI import openai import os openai.api_key = "<APIキー>" client = OpenAI() def gpt(utterance): #response = openai.chat( response = client.chat.completions.create( #model="gpt-4-1106-preview", model="gpt-3.5-turbo-1106", r
2023/06/13 OpenAIの大きなアップデートが発表されました。 その中でも新たに加わった目玉機能がFunction callingです。 このFunction calling、一見すると「APIのレスポンスをいい感じのJSONにしてくれるのかな?」と思ってしまうのですが、それは使い方の一部で本質ではありません*。本記事では、この少し概念がややこしいFunction callingを早く、正確に理解できるように具体的な実装を交えてご紹介します。 *記事の最後にレスポンスをJSONにする方法もご紹介はします。 Function callingとは Function callingとは、OpenAI API(以降OpenAI)のレスポンスが外部関数の呼び出しを検知し、教えてくれる仕組みです。これにより、OpenAIと外部のシステム連携をミスなく正確に行うことができるようになります。 具
ChatGPT、皆さん遊んで活用してますか!? 0613のモデルと並んで発表されたFunction callingの機能を使って遊んでみました。 「自然言語でリクエストを投げつければ内部で関数が実行されて正確な計算ができる!?」みたいな雑すぎる理解しかしていなかったので、 どんなことができるのかな?と思って試してみました。 試してみた結果、Function callingは関数を実行してくれる機能じゃない!(極論)ということがわかったので、 その辺について考察してみたいと思います。 前提として、OpenAI APIを用いたChatGPTの利用方法については基本を理解しているものとしています。 具体的には、以前私が書いたこのブログの内容が何となく理解できてれば十分だと思います。 [初心者向き] OpenAI APIを使ってPythonでChatGPT遊びするための最初の三歩くらい また、こち
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く