今回は vscode の Continue ではなく LM Studio だけの話だ。
あまりよく考えずにモデルをダウンロードしている。
専用GPUもないし、デスクトップPCは 1GBくらいしかメモリを割り当ててないのでサイズが小さい方が良いなあ、くらいだ。
一番小さいのが Gemma3 1Bで 700MBくらい。
このくらいだと意味がない日本語の会話(あいさつとか)だとすぐに返信してくる。アプリを作るときに変にキャラクターが喋ってるようにがんばって実装するくらいなら、こういう組み込み型のモデルを使うのもありなのかなあ、などと思った。
Rustの文法くらいならこれでもささっと回答してくれるので、これはこれでありかと思う。
が、コードを作ってもらおうとすると話は別だ。
まず、どのモデルを使っても特定のライブラリのことはわからないだろうから DeepWiki のMCPサーバー情報をインストールした。
その上でこういうプロンプトをモデル「qwen2.5-coder-7b-instruct」にお願いした。
Rust言語のredbで、key=u32、value=StringのテーブルでDBを作成するサンプルコードを見せて。DeepWikiを使用すること。
https://github.com/cberner/redb
動かしてはいないのだが、だいたいこんな感じだよなっていうコードを出してくれる。
use redb::{Database, TableDefinition};
const MY_TABLE: TableDefinition<u32, String> = TableDefinition::new("my_data");
fn main() -> Result<(), redb::Error> {
let tmpfile = tempfile::create_tempfile()?;
let db = Database::create(tmpfile.path())?;
let write_txn = db.begin_write()?;
let mut table = write_txn.open_table(MY_TABLE)?;
table.insert(1, "hello world".to_string())?;
write_txn.commit()?;
Ok(())
}
これと同じプロンプトをモデル「google/gemma-3-1b」に出したのだが、なんかMCPサーバへ指示するツール名の read_wiki_structure や ask_question が混ざったよくわからないコードを作った。
Reasoning とかいうモデルじゃないと推測などをしないから、プロンプトを愚直に受け取ってしまうのだろうか。いや、Tool Use の方か。
サイズが大きい方が賢いだろう、くらいしか考えてなかったが、なにかに対応しているとかまであるのだな。
0 件のコメント:
コメントを投稿
コメントありがとうございます。
スパムかもしれない、と私が思ったら、
申し訳ないですが勝手に削除することもあります。
注: コメントを投稿できるのは、このブログのメンバーだけです。