{"html":"<iframe src=\"https://hatenablog-parts.com/embed?url=https%3A%2F%2Fayousanz.hatenadiary.jp%2Fentry%2F2026%2F01%2F22%2F141002\" title=\"\u97f3\u697d\u751f\u6210\u30e2\u30c7\u30eb\u306eheartlib\u3067\u82f1\u8a9e\u30fb\u65e5\u672c\u8a9e\u306e\u6b4c\u8a5e\u4ed8\u304d\u97f3\u697d\u3092\u751f\u6210\u3092\u3059\u308b - yousan\u306e\u30e1\u30e2\" class=\"embed-card embed-blogcard\" scrolling=\"no\" frameborder=\"0\" style=\"display: block; width: 100%; height: 190px; max-width: 500px; margin: 10px 0px;\"></iframe>","provider_url":"https://hatena.blog","type":"rich","author_url":"https://blog.hatena.ne.jp/ayousanz/","provider_name":"Hatena Blog","published":"2026-01-22 14:10:02","author_name":"ayousanz","blog_url":"https://ayousanz.hatenadiary.jp/","blog_title":"yousan\u306e\u30e1\u30e2","categories":["AI"],"image_url":"https://cdn-ak.f.st-hatena.com/images/fotolife/a/ayousanz/20260121/20260121222357.png","width":"100%","description":"\u521d\u3081\u306b \u958b\u767a\u74b0\u5883 \u74b0\u5883\u69cb\u7bc9 \u5b9f\u884c \u521d\u3081\u306b \u4ee5\u4e0b\u3067OSS\u3067\u97f3\u697d\u751f\u6210\u30e2\u30c7\u30eb\u304c\u51fa\u305f\u306e\u3067\u3001\u3055\u308f\u3063\u3066\u307f\u307e\u3059 github.com \u958b\u767a\u74b0\u5883 Python 3.10 CUDA 12.x\u5bfe\u5fdcGPU UV (Python\u30d1\u30c3\u30b1\u30fc\u30b8\u30de\u30cd\u30fc\u30b8\u30e3\u30fc) \u74b0\u5883\u69cb\u7bc9 \u4ee5\u4e0b\u306e\u8a2d\u5b9a\u3092pyproject.toml\u306b\u8ffd\u52a0\uff08CUDA 12.4 + Flash Attention\u5bfe\u5fdc\uff09: [[tool.uv.index]] name = \"pytorch-cu124\" url = \"https://download.pytorch.org/whl/cu124\" explicit = true [tool.uv.sources] to\u2026","height":"190","title":"\u97f3\u697d\u751f\u6210\u30e2\u30c7\u30eb\u306eheartlib\u3067\u82f1\u8a9e\u30fb\u65e5\u672c\u8a9e\u306e\u6b4c\u8a5e\u4ed8\u304d\u97f3\u697d\u3092\u751f\u6210\u3092\u3059\u308b","url":"https://ayousanz.hatenadiary.jp/entry/2026/01/22/141002","version":"1.0"}