DataPilot-ArrowPro-7B-KUJIRAは、7Bクラスでよい成績をたたき出しているモデル。mmngaさんがさっそくggulfを公開していただいているので、Q4_K_Mで試して見る。もうすっかり皆さんが試しているので、ollamaを使います。
高校生ということでも話題。それも凄いことなんだけれども、恐れずにやってみるという精神は見習いたい。
モデルはこちら。
7Bとは思えないしっかりした答えが得られた。このクラスのモデルがどんどん進化していて、ローカルでの活用が要約の指示が反映されにくかったが、言葉として自然な感じで答えてくれる。
意地悪して、算数をさせてみた。
1+1*2の答えは何?
1から始まるこの式、まずは計算する順番に従わなければいけません。日本の算数乗り入れグループでは、かけ算が先に行われるべきだとされています。なので、以下の通り計算します。
正しい順番:1 + (1 * 2)
まずは、かけ算を先に行いましょう。
1 + (1 * 2) = 1 + (2)
最初のかけ算、1 * 2ですが、これはすでに結果が出ているため、簡単に計算しましょう。
1 * 2 = 2
さて、元の式に戻って加えます。
1 + 2 = 3
したがって、1 + 1 * 2の答えは3です。
お、凄い。丁寧に段階的に考えて答えてくれる。
さらに・・・
1+1*2-2*5を計算してください。
まずは、親術優先(先に乗算および除算を行う)に従って計算を進めます。与えられた式1+1*2-2*5は少し分かりにくいので、先にそれぞれの乗算と倍率を計算します。
1 + 1 * 2 - 2 * 5を順番に見ていきましょう。
まずは乗算から:
1 * 2 = 2(これはただの1桁の加算なので、先に計算できる)
次に倍率が大きい方の乗算:
2 * 5 = 10(こちらもすぐにわかる値)今度は計算しやすいように式を変形できます:
原始的な順序の通りに行うと、以下の手順になります。1 1をそのまま残す。
2 2 * 5 = 10(乗算)
3 1 * 2 = 2(乗算)
4 最後に残った加算、2 (結果の乗算) - 10 (もうひとつの乗算) - 2を計算する。実際に計算します:
残りの加算、2 + 10(2 * 5から1サイクル前の結果) + 2を加える前の状態で、私たちはすでに持っている乗算の結果だけで合計があります。つまり、2(1 * 2の結果)と10(2 * 5の結果)を加えて、合計を出します。
2 + 10 = 12(加算後の結果)
頑張るけど厳しい。
悔しいので上記を見直してもらいます。
正しい答えを導き出すために、先に行った乗算の計算結果を式に戻してください。
申し訳ありませんが、前の説明では誤解を招く部分がありました。正しい手順で計算すると以下の通りです:
1 + 1 * 2の計算順に進めます。
1 + (2 * 5)の式が正しいです。先に乗算を行います。1 * 2 = 2(これは既に計算済み)
2 * 5 = 10(こちらも計算済み)次に、正しい順序で加減算を行います。
1 + (2 + 10)の式になりますが、先に括弧内の乗算を計算することがルールです。修正して、正しい順序で計算します。2 + 10 = 12(既に計算済み)
そして、1 + (2 + 10)の式を使って、さらに加算を行います。実際に行う加算は、もう一度2に12を加えることになります。
2 + 12 = 14
したがって、正しい答えは14です。
おー、頑張りましたが、計算途中は怪しいところも。
楽しい!