メインコンテンツへスキップ

GGUF(GPT-Generated Unified Format)

目次

GGUF(GPT-Generated Unified Format)は、大規模言語モデル(LLM)を効率的に実行するための新しいフォーマットである。GPTQ、GGML、GGJT などの従来の量子化フォーマットの後継として開発され、特に LLAMA(Metaの大規模言語モデル) などのモデルをローカル環境で高速に動作させるために設計されている。

GGUFの特徴
#

  1. 高い互換性
    • GGUFは GGML(GPT-Generated Model Loader)の後継であり、GGMLベースのツール(例:llama.cpp)と互換性がある。
    • llama.cppLM Studio などのソフトウェアで直接利用可能である。
  2. 高効率な量子化(Quantization)
    • 量子化とは、モデルのサイズを小さくし、推論(実行)の速度を向上させる技術である。
    • GGUFは低ビット量子化(例:4ビット、8ビット)をサポートし、メモリ使用量を大幅に削減できる。
  3. エコシステムの拡張
    • GGUFは、Hugging Faceなどのモデル配布プラットフォームで利用可能である。
    • llama.cppKoboldCppLM Studio など、ローカルでLLMを動作させる多くのツールで標準フォーマットとして採用されている。
  4. ストレージとロードの最適化
    • GGUFフォーマットは従来のGGMLやGPTQよりもファイル構造が整理されており、モデルのロード速度が向上している。
    • CPU・GPUの両方での効率的な推論が可能である。

GGUFと他のフォーマットとの比較
#

フォーマット特徴
GGUF最新の量子化フォーマット、高速ロード、低メモリ使用、llama.cpp互換
GGML旧フォーマット、シンプルだが機能が限定的
GPTQ高精度な量子化(4bit)、GPU推論向け
ONNX汎用AIフォーマット、多くのフレームワークで使用可能
FP16(Float16)高精度だがメモリ使用量が大きい

GGUFの使い方
#

1. GGUF対応のモデルをダウンロード
#

GGUF形式のモデルは、多くが Hugging Face(huggingface.co)で配布されている。

2. GGUF対応のツールで実行
#

  • LM Studio でロード
    GGUF形式のモデルをLM Studioにインポートし、ローカルで推論を行う。
  • llama.cpp を使用
    ターミナルでllama.cppを使い、GGUFモデルを推論する。

3. Pythonから利用
#

PythonでもGGUFモデルを利用することが可能である。
以下はllama_cppライブラリを用いた使用例である。

import llama_cpp

# GGUFモデルのパスを指定してロード
llm = llama_cpp.Llama(model_path="path/to/model.gguf")

# モデルに対するプロンプトを入力
output = llm("Hello, how are you?")
print(output)

Pythonスクリプトから直接GGUFモデルを活用することで、より柔軟なカスタマイズが可能となる。

まとめ
#

  • GGUFは、大規模言語モデル(LLM)をローカル環境で効率的に動作させるための最新フォーマットである。
  • llama.cppLM Studio などのツールで利用でき、Hugging FaceなどからGGUFモデルを入手し、CPU・GPUの両方で実行可能である。
  • 量子化により、低スペックPCでも扱いやすくなっているため、ローカル環境でAIを動作させる際に適した選択肢となる。
  • 高速ロードやメモリ使用の最適化が施されており、さまざまなLLMプロジェクトに対応可能である。

関連記事

VAE

VAE(Variational Autoencoder:変分オートエンコーダとは、Stable Diffusionなどの画像生成AIにおいて重要な役割を果たすニューラルネットワークの構成要素である。 適切なVAEを使用することで画像の鮮明化、豊かな色彩、適切なコントラストなどの効果を得られる。 VAEの基本概念 # 定義と役割 # VAEは潜在空間と実際の画像の間を変換する役割を担う。具体的には以下の2つの機能を持つ。 エンコーダー(Encoder): 実際の画像を潜在空間の表現に圧縮 デコーダー(Decoder): 潜在空間の表現を実際の画像に復元 Stable DiffusionにおけるVAE # Stable Diffusionは潜在拡散モデルであり、直接画像を生成するのではなく、まず潜在空間で拡散過程を実行し、最後にVAEで実際の画像に変換する。 VAEの具体的な働き # 画像生成プロセスでの位置 # テキストプロンプト → U-Net(拡散処理)→ 潜在表現 → VAE(デコード)→ 最終画像 潜在空間の利点 # 計算効率: 512×512画像を64×64の潜在表現で処理(8分の1に圧縮) メモリ削減: より少ないVRAMで高解像度画像生成が可能 処理速度: 小さなデータサイズでの高速処理 VAEが画像に与える影響 # 色彩・明度 # 彩度: 色の鮮やかさや深さ コントラスト: 明暗の差 色温度: 暖色・寒色のバランス 画像品質 # 鮮明度: 画像の輪郭やディテールの明確さ ノイズ除去: 不要なノイズの軽減 全体的な見た目: 画像の印象や雰囲気

チェックポイント

画像生成AIにおけるチェックポイント(Checkpointは、学習済みの拡散モデル全体が保存されたファイルのこと。 チェックポイントの基本概念 # 定義 # チェックポイントは、Stable Diffusionなどの画像生成モデルの完全な学習済み重みを含むファイル。モデル全体の「スナップショット」と考えることができる。 ファイル形式と容量 # 拡張子: .ckpt、.safetensors ファイルサイズ: 通常2GB~7GB程度 safetensors形式: より安全で高速な新しい形式として推奨 リアル系(写実的)チェックポイント # SD1.5ベース # Realistic Vision V6.0 Civitai: https://civitai.com/models/4201/realistic-vision-v60-b1 Realistic Vision V6.0 B1 - V5.1 Hyper (VAE) | Stable Diffusion Checkpoint | Civitai Hugging Face: https://huggingface.co/SG161222/Realistic_Vision_V6.0_B1_noVAE SG161222/Realistic_Vision_V6.0_B1_noVAE · Hugging Face 最も人気の高い写実系モデルの一つ ChilloutMix Civitai: https://civitai.com/models/6424/chilloutmix ChilloutMix - Chilloutmix-Ni-pruned-fp32-fix | Stable Diffusion Checkpoint | Civitai Hugging Face: https://huggingface.co/swl-models/chilloutmix swl-models/chilloutmix · Hugging Face アジア系人物に強い写実モデル CyberRealistic V9.0 Civitai: https://civitai.com/models/15003/cyberrealistic CyberRealistic - v9.0 | Stable Diffusion Checkpoint | Civitai 柔軟性の高い写実系モデル SDXLベース # RealVisXL V5.0 Civitai: https://civitai.com/models/139562/realvisxl-v50 CivitaiCivitai SDXL版の主要写実系モデル CyberRealistic XL V6.0 Civitai: https://civitai.com/models/312530/cyberrealistic-xl CyberRealistic XL - v6.0 | Stable Diffusion XL Checkpoint | Civitai 高解像度写実画像生成 アニメ・イラスト系チェックポイント # SD1.5ベース # Anything V5 Civitai: https://civitai.com/models/9409/or-anything-xl Stable Diffusion Models Hugging Face: https://huggingface.co/genai-archive/anything-v5 GitHub - CompVis/stable-diffusion: A latent text-to-image diffusion model アニメ系の定番モデル AbyssOrangeMix3 (AOM3) Civitai: https://civitai.com/models/9942/abyssorangemix3-aom3 AbyssOrangeMix2 - Hardcore - AbyssOrangeMix2_hard | Stable Diffusion Checkpoint | Civitai Hugging Face: https://huggingface.co/WarriorMama777/OrangeMixs abyssorangemix2_Hard.civitai.info · TaiouIV/Model at main 高品質アニメイラスト生成 YesMix V5.0 Civitai: https://civitai.com/models/9139/checkpointyesmix 【Checkpoint】YesMix - v5.0 | Stable Diffusion Checkpoint | Civitai アニメNSFW特化モデル Mistoon Anime V1.0 Civitai: https://civitai.com/models/24149/mistoonanime Mistoon_Anime - v1.0 noobai | Illustrious Checkpoint | Civitai カートゥーン風アニメスタイル SDXLベース # Anything XL Civitai: https://civitai.com/models/9409/or-anything-xl 万象熔炉 | Anything XL - XL | Stable Diffusion XL Checkpoint | Civitai SDXL版アニメ特化モデル Nova Anime XL Civitai: https://civitai.com/models/376130/nova-anime-xl Nova Anime XL - IL v10.0 | Illustrious Checkpoint | Civitai 最新のアニメ特化XLモデル 汎用・多目的チェックポイント # 公式・準公式 # Stable Diffusion XL Base 1.0 Civitai: https://civitai.com/models/101055/sd-xl Dreamshaper XL | Open Laboratory 次世代高解像度公式モデル コミュニティ開発 # DreamShaper V8 (SD1.5) Civitai: https://civitai.com/models/4384/dreamshaper DreamShaper - 8 | Stable Diffusion Checkpoint | Civitai 汎用性の高いバランス型モデル DreamShaper XL V2.1 Civitai: https://civitai.com/models/112902/dreamshaper-xl DreamShaper XL - v2.1 Turbo DPM++ SDE | Stable Diffusion XL Checkpoint | Civitai SDXL版汎用モデル 特殊・マージ系チェックポイント # AnyOrangeMix Civitai: https://civitai.com/models/21503/anyorangemix-anything-abyssorangemix CivitaiCivitai AnythingとAbyssOrangeMixの融合 OrangeChillMix V7.0 Civitai: https://civitai.com/models/9486/orangechillmix OrangeChillMix - v7.0_fixed | Stable Diffusion Checkpoint | Civitai AbyssOrangeMixとChilloutMixの融合 ダウンロード時の注意点 # ファイル形式 # .safetensors: より安全で推奨される形式 .ckpt: 従来形式(セキュリティ上注意が必要) VAEについて # 一部のモデルは別途VAEファイルが必要である。“Baked VAE"と記載されているモデルは内蔵済みのため不要である。

中央競馬のデータ取得

スクレイピングしない場合 # [競馬AI] スクレイピングしない競馬データの取得とデータ構造について - Qiita JRA-VAN データラボ 1986年から約30年分のあらゆる公式競馬データをデータベース化 前走・近走結果の情報、リアルタイムオッズや発走1時間前の馬体重などの最新情報も即座に反映 月額 2,090円(2023年1月現在) データ取得はJRA VAN SDK(C#/C++/Delphi7 /VB2019)を介して行う必要がありWindows前提 JRA-VAN Data Lab. JVData 仕様書 JRDB データはテキストで取得可能 JRDBデータのご案内 ベーシック 月額 1,980円(2023年1月現在) アドバンス 月額 2,480円(2023年1月現在) Mac上で使用したいことと、テキスト形式でのデータ提供の方が取り回しが簡単なため、自分の用途としてはJRDBの方がマッチしているか。 スクレイピングする場合 # 機械学習で競馬予想をしてみた系のまとめ - Qiita netkeiba.comをスクレイピングしている事例が多い。 競馬の予測をガチでやってみた - stockedge.jpの技術メモ netkeiba-scraperが2019年6月現在動くかの話(Ubuntu 18.04.2 LTS) - Qiita

宝くじ・公営ギャンブルの控除率

https://www.soumu.go.jp/main_content/000084191.pdf 実行還元率 控除率 宝くじ 45.7 54.3 サッカーくじ 49.6 50.4 競馬 74.1 25.9 オートレース 74.8 25.2 競艇 74.8 25.2 競輪 75.0 25.0

フィンガードラム

参考 # フィンガードラム入門!!初心者がブレイクビーツ(ドンドンタンスタスタドッタン)を最短経路で習得する方法|ニトロプラヅマ フィンガードラムが上達するにはどうすればよいですか?長年の実践の総括 - YouTube PADレイアウト # LOW TOM MID TOM HIGH TOP CYMBAL1 HIHAT OPEN HIHAT HIHAT RIDE SIDESTICK SNARE SNARE SIDESTICK CYMBAL2 KICK KICK CYMBAL3

Codexでサンプル音源を管理するMacアプリWaveCrateをつくった

サンプル音源を管理するアプリはいくつか持っていたはずだが、なぜか見当たらない。しかたがないので、Codexを使ってMacでサンプル音源管理アプリを開発した。 以下の基本機能は数時間でできた。 ディレクトリを指定すると、配下のサンプル音源を再帰的に検索して登録する ファイル名からジャンル、楽器、BPM、キーなどを検出して自動タグ付け。手動でのタグ追加にも対応 サンプル音源の波形を見ながら試聴する タグによる絞り込み検索 ワンショット、ループの判定(厳密ではない) 聴いているサンプルと似た音を探す(ファイル名、タグ、オーディオ特徴量の距離計算、時間、波形エンベロープの形状) 選択したファイルのコピー、パスの取得 目立ったバグもないため、さっそく実践投入するかと、Native InstrumentsのExpansionsのサンプル約9万ファイルを登録したところ、動きがもっさりして使い物にならない。 Codexと一緒に原因を調べたところ、リスト件数ぶんのSQLを無駄に発行していたり(つまり9万回!!)、その場面では不要なデータを取得していたりと、いろいろな問題が見つかった。 このようなAIと一緒に原因を調べて方針を決定する過程では、(現時点では)ソフトウェアの知見があったほうが、よりよい対応ができそうだ。 今回の開発での反省点としては、設計時に機能要件の定義にのみ注力し、性能要件を詰めなかったこと。大量のデータを扱うことを事前に伝えて、そのために性能をどう作り込むかを、実装の前に詰めておくべきだった。 ただ、きっとこれも「現時点」での反省になるんだろうな。 将来的には、実装に入る前に非機能要件をヒアリングしてきたり、勝手に性能要件を類推してコスパの良い設計をしてきたりするはず。 現在、自分がCodexで使っているのはGPT-5.5だが、そのコード生成能力はPoCを速攻で回すような用途においては、もはや人間の出番はなさそうなレベルに達している印象がある。 このアプリの開発をしながら、少し前に読んだ以下のポストを思い出した。生成AIの出現による「ソフトウェアエンジニアリングという仕事の変化」を認識・予測し将来に備えて準備しておかないと、途方に暮れることになりそうだよね、というお話。 Software engineering may no longer be a lifetime career よく見られる悲劇的なケースは、スポーツ選手が「自分のキャリアは永遠に続く」と思い込み、引退後の生活に備えないことです。もしかすると、ソフトウェアエンジニアの世界でも、今がまさにその世代に当たるのかもしれません。