- 1. Amazon Bedrock 全LLM 日本語能力比較(2024/7/26 Llama3.1, Mistral Large 2 追加版)
- 2. Pythonのパッケージビルドとインストールの標準、PEP517とは?
- 3. PythonでExcelファイルをSVGファイルに変換する方法
- 4. 初等セルオートマトンの観察
- 5. pyenvでshimsを使用せずにコマンドを利用する方法
- 6. Workato:日付間より年数を計算する
- 7. streamlitで愛媛県の新型コロナウイルスの患者報告数を可視化
- 8. 怖くないCloud Run(概要編)
- 9. VScodeで型ヒントのパイプ表記が利用できないとき
- 10. 【Python】importの相対パスを解決
- 11. Blender→Unity間で32bitテクスチャ(EXR)で数値の受け渡しを行う
- 12. Pythonで〇×ゲームのAIを一から作成する その101 for 文と while 文による繰り返し処理の性質と使い分け
- 13. 【python】if __name__==’__main__’ を理解したい
- 14. Pythonのコード品質向上: pylint, black, isortを使った自動コード整形と静的解析
- 15. Python初心者の備忘録 #16 ~機械学習入門編02~
- 16. DJMusicMixerクラス:音楽ファイルを自動でDJミックス
- 17. @pytest.mark.parametrizeでリスト内包表記とアンパック演算子(*)を使って効率的なテストケースを作成する
- 18. AWS SQSとCeleryを連携させる方法について
- 19. Selenium3系から4系へ切り替えた際に遭遇したエラー
- 20. Pythonを使ってWord文書からマクロを一括削除する方法
Amazon Bedrock 全LLM 日本語能力比較(2024/7/26 Llama3.1, Mistral Large 2 追加版)
Llama3.1、Mistral Large 2が増えたので日本語能力を確認します。
(プレビューのLlama3.1 405Bは除いています)
※その他のモデルについては前回の実行結果(↓)のままです。https://qiita.com/cyberBOSE/items/098c406c96b0e89b1fbc
# コード
“`Python
import boto3prompt=”質問:日本における味噌汁の作り方を詳しく日本語で説明してください。”
bedrock_us_east_1 = boto3.client(“bedrock-runtime”, region_name=”us-east-1″)
bedrock_us_west_2 = boto3.client(“bedrock-runtime”, region_name=”us-west-2″)# なんでもモデル関数
def invokeNandeModel(modelId, prompt, boto):
messages = [{“role”: “user”, “content”: [{“text”: pr
Pythonのパッケージビルドとインストールの標準、PEP517とは?
### **user**:
ChatGPT先生!助けてください!
“`
!pip install gfpgan
“`しようとしたら次のエラーになりました。
“`
Defaulting to user installation because normal site-packages is not writeable
Collecting gfpgan
Downloading gfpgan-1.3.8-py3-none-any.whl.metadata (12 kB)
Collecting basicsr>=1.4.2 (from gfpgan)
Using cached basicsr-1.4.2.tar.gz (172 kB)
Preparing metadata (setup.py) … error
error: subprocess-exited-with-error× python setup.py egg_info did not run successfully.
│ exit code: 1
╰─> [68 lin
PythonでExcelファイルをSVGファイルに変換する方法
SVG(Scalable Vector Graphics)はXMLベースのベクター画像フォーマットです。このフォーマットはWeb開発やその他のグラフィックアプリケーションで非常に人気があり、複雑なベクターグラフィックを効率的に表示する方法を提供します。
ウェブページにExcelの表を埋め込む必要がある場合や、Excelシートを使って直接ウェブページを作成する場合、ExcelファイルをSVGファイルに変換することで、直接的なウェブ埋め込みや作成が可能になります。また、SVGファイルはブラウザで直接開いて閲覧することができるため、Excelファイルの内容を編集する必要がない場合、ExcelシートをSVGフォーマットに変換することで、より多くのデバイスでExcelファイルのデータを閲覧できるようになります。
Pythonを使用することで、この変換プロセスを自動化し、効率的なファイル処理を実現できます。この記事では、**Pythonを使用してExcelファイルをSVGフォーマットに変換する方法**を紹介します。
– **[PythonでExcelシートをSVGファイルに変換する方法](#
初等セルオートマトンの観察
# 概要
1次元のセルオートマトンのシミュレーションを実装して、ルール0~ルール255を観察してみました。例えば、ルール18を選択して実行すると次のようなパターンが得られます。選択するルールによってパターンは様々で、実行してみるまでは予測しにくいです。初期状態(1行目)の状態によって、描かれるパターンも移り変わるので初期状態をランダムにして実行する楽しみもあります。
次のパターンは、左側が1行目を中央に1セルで、右側が1行目をランダムな状態で実行した例です。
pyenvでshimsを使用せずにコマンドを利用する方法
`pyenv`は、Pythonのバージョン管理を容易にするためのツールですが、デフォルト設定ではシム(shims)ディレクトリを経由してコマンドを実行するようになっています。しかし、特定の状況ではシムを使用せずに、`pyenv`のコマンドのみを利用したい場合があります。本記事では、その設定方法について解説します。
—
# 目次
1. `pyenv`とは
2. シム(shims)ディレクトリとは
3. シムを使用せずに`pyenv`を利用する方法
4. 設定の確認方法
5. まとめ—
# 1. `pyenv`とは
`pyenv`は、複数のPythonバージョンを簡単に切り替えられるツールです。これにより、プロジェクトごとに異なるPythonバージョンを使用することができます。
# 2. シム(shims)ディレクトリとは
`pyenv`は、インストールされたPythonバージョンを切り替えるためにシムディレクトリ(`$HOME/.pyenv/shims/`)を使用します。このディレクトリには、実行可能ファイルが含まれており、実行時に適切なPythonバージョンを
Workato:日付間より年数を計算する
# はじめに
社員データや顧客データWorkatoで扱う際、誕生日や勤続年数、サービス継続年数、法人の事業年数など、何らかの経過年数などを取得したい場合があるかと思います。
年数の計算は閏年を考慮しなければならず、閏年とそうでない年では日数が異なるため、単純に時間や日数をもとに計算を行うことはできません。
Workatoにおいて年数の計算方法は様々ありますが、Pythonコネクタを利用すると、コードを書く必要はあるものの、シンプルに年数計算のための処理を用意することができます。また、Recipe Functionとして作成して共通処理化(モジュール化)することで、様々なレシピで共通して活用する(再利用性を高める)ことができます。
今回は、再利用性の観点から、Recipe Functionで年数計算処理の実装を進めていきます。
# レシピ
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/64876/960d5c84-07fe-4d0b-1f0d-6a640557d01e.png)
streamlitで愛媛県の新型コロナウイルスの患者報告数を可視化
こちらでデータ取得ができたのでstreamlitで可視化する
https://qiita.com/barobaro/items/1c825ad8133bf1c393b4完成品
https://ehime-covid19.streamlit.app/
“`python
from io import StringIOimport pandas as pd
import requests
from bs4 import BeautifulSoupimport streamlit as st
option = [“愛媛県”, “四国中央”, “西条”, “今治”, “松山市”, “中予”, “八幡浜”, “宇和島”]
@st.cache_data
def load_data():
url = “https://www.pref.ehime.jp/site/kanjyo/39800.html”r = requests.get(url)
r.raise_for_status()soup = BeautifulSoup(r.conten
怖くないCloud Run(概要編)
# はじめに
この記事ではGoogle Cloud Runの概要と基本的な使い方を紹介します。
Cloud Runの細かな説明は[公式ドキュメント](https://cloud.google.com/run/docs/overview/what-is-cloud-run?hl=ja)を読んでいただくこととして、ここではなるべくイメージをつかむための説明を心がけて行こうと思います。
この記事を通じて「簡単そうだな!」とか「Cloud Runなんて怖くない!」みたいな感想を持ってもらえたら嬉しいです。
📝免責事項
Cloud Runには無料利用枠が設定されていますが、その無料枠を超過すると料金が請求されます。
この記事で紹介するサンプルアプリは1~2回動かすくらいなら無料枠を超えない想定ですが、仮に料金が発生したとしても当方は責任を負いかねますのでご了承ください。
Cloud Runの料金については[公式の案内](https://cloud.google.com/run/pricing?hl=ja)をご確認ください。
VScodeで型ヒントのパイプ表記が利用できないとき
## 現象
– VScode上でのデバッグ時、下記コードの`int | None`の箇所でエラーが起きる
“`
def double(arg: int = 1) -> int | None:
“`
エラー文言
`TypeError: unsupported operand type(s) for |: ‘type’ and ‘NoneType’`– ローカルにインストールされているPythonのバージョンは3.12.4である
## 原因
– VScodeで利用しているPythonインタプリタのバージョンが3.8のままだった
## 対処![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3679074/987fdd9f-1d86-7aec-5799-08f0684494ff.png)
↓
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3679074/5369ced1-1e1f
【Python】importの相対パスを解決
## はじめに
Python で以下のようなディレクトリ構造のとき, app/hoge.py と test/fuga.py 間で相対パスを使いたい時の備忘録です.**ディレクトリ構造**
“`bash
root
├── app
│ └── hoge.py
└── test
├── __init__.py
└── fuga.py
“`## 結論
以下の手順で,hoge.py から fuga.py のクラスをインポートして使用することができます.**ソースコード**
“`hoge.py
import sys
sys.path.append(‘../’)
from test import Fugadef main():
Fuga.greeding()if __name__ == “__main__”:
main()
“`
“`__init__.py
from .fuga import *
“`
“`fuga.py
class Fuga:
@staticmethod
def greeding():
Blender→Unity間で32bitテクスチャ(EXR)で数値の受け渡しを行う
## はじめに
BlenderにてEXRテクスチャを出力してその情報をUnityで使うということがやりたかったのですが、案外情報が無くて困ったのでまとめていきます。# 宣伝
Blenderのアニメーションをテクスチャに書きこんで、Unityにて再生させるVATを開発しました。
よろしくお願いします。[【無料】nekoVATシステム](https://nekoco.booth.pm/items/5943052)
# Blender
Blenderのバージョンは4.1.1 Stableを使っていきます。### テクスチャ作成
スクリプトを使って通常テクスチャを作成していきます。
“`python
import bpy
import numpy as np# テクスチャ名を変数で設定
texture_name = ‘CustomTexture’
# 解像度を指定
resolution = 4
# 画像を取得または作成
image = bpy.data.images.get(texture_name)
if not image:
image = bpy.data.i
Pythonで〇×ゲームのAIを一から作成する その101 for 文と while 文による繰り返し処理の性質と使い分け
# 目次と前回の記事
https://qiita.com/ysgeso/items/2381dd4e3283cbed49a0
https://qiita.com/ysgeso/items/9d5e9a56f5fe004dafee
## これまでに作成したモジュール
以下のリンクから、これまでに作成したモジュールを見ることができます。
| リンク | 説明 |
|:–|:–|
| [marubatsu.py](https://github.com/ysgeso/marubatsu/blob/master/100/marubatsu.py) | Marubatsu、Marubatsu_GUI クラスの定義|
| [ai.py](https://github.com/ysgeso/marubatsu/blob/master/100/ai.py) | AI に関する関数 |
| [util.py](https://github.com/ysgeso/marubatsu/blob/master/100/util.py) | ユーティリティ関数の定義。現在は `gui_pl
【python】if __name__==’__main__’ を理解したい
# 概要
pythonの“`if __name__=’__main__’“`の使い方がわからないので,調査しました.# 背景
pythonに触れ始めてから3.4年も経つのにちゃんとコードを書けないのが恥ずかしくなってきたので記事に書いてわからないを公開していこうという気持ちになりました...
コードの冗長さについて考えずにコードを書いて動かすことはできるけれど,関数やその一歩先を行ったコードが書けないので,克服したい.
初めてこのような記事を書くので拙い部分があるかもしれませんが,よろしくお願いします.
最近はサマーインターンの申し込みに明け暮れていますが,コーディングテストで敗北しているので頑張ってお勉強していきたいと思います.# 本題
python でよく登場するこちらのおまじない
“`
if __name__==’__main__’
“`
理解したいです.# ChatGPT-4oの回答
if “__name__ == ‘__main__’“は、Pythonプログラムで非常によく使われる構造です。これを理解するには、Pythonプログラムがどのように実行され
Pythonのコード品質向上: pylint, black, isortを使った自動コード整形と静的解析
## はじめに
Pythonプロジェクトの品質を保つことは、長期的な保守性と読みやすさを確保するために非常に重要です。本記事では、Pythonの代表的なコード品質向上ツールである pylint, black, isort の使用方法と、これらを組み合わせた効果的な開発ワークフローについて解説します。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2648069/04e28694-f4e3-7bec-cb18-eaa81f6656e1.png)
## 1. pylint: 強力な静的解析ツール
pylintは、Pythonコードの品質チェックと静的解析を行う強力なツールです。
### インストール
“`
pip install pylint
“`### 使用方法
“`
pylint your_script.py
“`### 実行例
以下のようなPythonスクリプト(`example.py`)があるとします:
“`python
def greet(name)
Python初心者の備忘録 #16 ~機械学習入門編02~
# はじめに
今回私は最近はやりのchatGPTに興味を持ち、深層学習について学んでみたいと思い立ちました!
深層学習といえばPythonということなので、最終的にはPythonを使って深層学習ができるとこまでコツコツと学習していくことにしました。
ただ、勉強するだけではなく少しでもアウトプットをしようということで、備忘録として学習した内容をまとめていこうと思います。
この記事が少しでも誰かの糧になることを願っております!
**※投稿主の環境はWindowsなのでMacの方は多少違う部分が出てくると思いますが、ご了承ください。**
最初の記事:[Python初心者の備忘録 #01](https://qiita.com/Yushin-Tati/items/961dc47d6163f944f7e9)
前の記事:[Python初心者の備忘録 #15 ~機械学習入門編01~](https://qiita.com/Yushin-Tati/items/c8a9ad09ae9ff1778ca1)
次の記事:まだ今回は**汎化性能と過学習**や**回帰モデルの評価指標**についてまとめ
DJMusicMixerクラス:音楽ファイルを自動でDJミックス
## はじめに
音楽制作やDJプレイに興味がある方、そして音楽ファイルを自動的にミックスしたい方に朗報です!今回は、Pythonで実装された`DJMusicMixer`クラスについて詳しく解説します。このクラスを使えば、複数の音楽ファイルを自動的にDJ風にミックスすることができます。
## デモ動画
DJ風に曲を繋げるクラスも作成完了!!!
これを使ってDJパッケージ作っていきます! https://t.co/Y3myClkiSv pic.twitter.com/G0D0HNTbmo— Maki@Sunwood AI Labs. (@hAru_mAki_ch) @pytest.mark.parametrizeでリスト内包表記とアンパック演算子(*)を使って効率的なテストケースを作成する
# はじめに
Pythonのテストフレームワークであるpytestでは、`@pytest.mark.parametrize`デコレーターを使うことで複数のテストケースを簡潔に定義することができます。https://docs.pytest.org/en/stable/example/parametrize.html
さらに、`@pytest.mark.parametrize`に **リスト内包表記とアンパック演算子(`*`)** を組み合わせることで、繰り返しパターンが多い関数や多数の入力を必要とする関数をテストする際に効率的にテストケースを生成することができます。
本記事ではそのやり方を紹介します。
# 対象読者
– `@pytest.mark.parametrize` の基本的な使い方を知りたい方
– `@pytest.mark.parametrize` にリスト内包表記とアンパック演算子(`*`) を組み合わせることで簡潔にテストケースを作りたい方# `@pytest.mark.parametrize`とは?
まずは前提となる`@pytest.mark.parametAWS SQSとCeleryを連携させる方法について
## はじめに
今回はAWS SQSとCeleryを連携させる方法について記載していきます。CeleryはDjangoで使用していることを想定の上、作業をしてきます。
※基本的な設定は他の導入記事がたくさんあるため省略します。## 基本的な設定編
まずは、settings.pyに下記の設定を記載しましょう。
重要なのは主に以下です。“`settings.py
CELERY_BROKER_URL = “sqs://”# AWS内のEC2などにアクセス権限が付与されていればこれだけで大丈夫です。(付与されていない場合は、権限情報を記載する必要があります。)
CELERY_TASK_SERIALIZER = “json”
CELERY_RESULT_SERIALIZER = “json”
CELERY_ACCEPT_CONTENT = [‘application/json’]
CELERY_TASK_ACKS_LATE = True
CELERY_TASK_ACKS_ON_FAILURE_OR_TIMEOUT = False
CELERY_RESULT_BACKEND = No
Selenium3系から4系へ切り替えた際に遭遇したエラー
久しぶりにスクレイピングの勉強をしようと思い、SeleniumやWebDriverを最新のものにしようと調べていたところ下記の情報を目にしました。
>Selenium4.6以降はドライバを、4.11以降はブラウザを(ブラウザがインストールされていない場合)自動でダウンロードされる。
従来はダウンロードサイトからドライバをダウンロードし、コードの中でパスを指定する必要があったため、「これは楽になる!」と早速ウキウキでSeleniumをアップグレードしました。
ところが以前までと同じようにコーディングした所、思わぬエラーに遭遇してしまいました。## 突然の「AttributeError: ‘WebDriver’ object has no attribute」
Webスクレイピングの際、基本的にはHTMLの要素を取得し、操作することになります。
そこで以前スクレイピングを勉強した時と同様、下記のようにコードを記述しました。
“`Python:scraping.py
from selenium import webdriverdriver = webdriver.Chrome(
Pythonを使ってWord文書からマクロを一括削除する方法
Word文書は最も一般的な電子文書形式の一つとして、内容を共有するためのツールとしてよく使用されます。これらの文書はネットワークやデバイス間で転送されるため、その安全性も重要です。マクロは、Word文書に埋め込むことができるVBAのミニプログラムで、自動化操作を実行するために使用されます。マクロは作業効率を向上させることができますが、悪意のある行為者がマクロを利用してユーザーのコンピュータで有害なコードを実行する可能性があるため、大きなセキュリティリスクも伴います。この記事では、**Pythonを使ってWord文書からマクロを一括検出して削除する方法**を紹介します。
– **[PythonでWord文書のマクロを検出して削除する方法](#pythonでword文書のマクロを検出して削除する方法)**
– **[PythonでDocm文書をDocx形式に変換してすべてのマクロを削除する方法](#pythonでdocm文書をdocx形式に変換してすべてのマクロを削除する方法)**この記事で使用する方法には[Spire.Doc for Python](https://jp.e-ice