地平線まで行ってくる。

記録あるいは忘備録。時には検討事項。

いまさらながらwhisperで音声認識

ローカルPCで音声認識を使ってテキスト入力をさせてみようと思い立って、colaboratoryでテスト。いまさらながら・・・だけれども、やってみました。

 

参考サイト:

faster-whisperでwhisper large-v3を動かしてみよう!

 

github.com


実行速度を比べてみる。GPUあるなし、float16, int8でそれぞれ試して見ました。

もともとは91secの動画からテキストを抽出してみました。

  • cuda float16 11.48 Sec
  • cuda int8_float16 5.20 Sec
  • cuda int8 5.15 Sec
  • cpu int8 244.06  Sec


同じint8でもcudaの方がcpuよりもうまく認識しているっぽい。CPUだと思ったよりも時間がかかってしまった。CUDA+int8でも悪くなさそうなので、これで自分のPCでトライしてみよう。

Open InterpreterをLocal LLMで

OpenAIのGPTsの発表で盛り上がっている今日この頃。思い立って、開発が続いていて楽しみなOpen Interpreterをlocal LLMで動かせないかとトライしてみました。Open-interpreterを見ると、Local LLMの動作にLM Studioを推奨していました。ただ、このあたりの組み合わせは、開発が進むに従って変更されているので注意です。

 

github.com

 

プログラムの性格上、Docker内で動かしたくて、Karaageさんのレポジトリを参考にしつつDockerで動かせるようにしました。

github.com

特に大したことはないのだけれども、
1. LM Studioをserver modeで動作をさせる。

2. Docker内からLLMのAPIを参照するために、ホスト側のIPアドレスlocalhostとして参照させる。

以上2点。2が手間取りました。

 

なんとか、動き出したものの、LM StudioをWindowsで動かしてみるとGPUを使っていない。遅い・・・。

 

参考

github.com

 

Open InterpreterをLocal LLMで

OpenAIのGPTsの発表で盛り上がっている今日この頃。思い立って、開発が続いていて楽しみなOpen Interpreterをlocal LLMで動かせないかとトライしてみました。Open-interpreterを見ると、Local LLMの動作にLM Studioを推奨していました。ただ、このあたりの組み合わせは、開発が進むに従って変更されているので注意です。

 

github.com

 

プログラムの性格上、Docker内で動かしたくて、Karaageさんのレポジトリを参考にしつつDockerで動かせるようにしました。

github.com

特に大したことはないのだけれども、
1. LM Studioをserver modeで動作をさせる。

2. Docker内からLLMのAPIを参照するために、ホスト側のIPアドレスlocalhostとして参照させる。

以上2点。2が手間取りました。

 

なんとか、動き出したものの、LM StudioをWindowsで動かしてみるとGPUを使っていない。遅い・・・。

 

参考

github.com

 

Open InterpreterをLocal MMLで

OpenAIのGPTsの発表で盛り上がっている今日この頃。思い立って、開発が続いていて楽しみなOpen Interpreterをlocal LLMで動かせないかとトライしてみました。Open-interpreterを見ると、Local LLMの動作にLM Studioを推奨していました。ただ、このあたりの組み合わせは、開発が進むに従って変更されているので注意です。

 

github.com

 

プログラムの性格上、Docker内で動かしたくて、Karaageさんのレポジトリを参考にしつつDockerで動かせるようにしました。

github.com

特に大したことはないのだけれども、
1. LM Studioをserver modeで動作をさせる。

2. Docker内からLLMのAPIを参照するために、ホスト側のIPアドレスlocalhostとして参照させる。

以上2点。2が手間取りました。

 

なんとか、動き出したものの、LM StudioをWindowsで動かしてみるとGPUを使っていない。遅い・・・。

 

参考

github.com

 

cyberagent-calm2-7b-chat-GPTQ-calib-ja-1kを試して見る

特に工夫することもなく、Colabで動作。簡単に試して見ました。

 

github.com

 

扱える文字数も多いし、7Bでコンパクト。速度もまずまず出そう。個人でも色々と試して見ることができるのは嬉しいし楽しい。youriといい、calm2といい、日本語のLLMが楽しくなってきましたね。

 

USER: 明日の東京の天気は?
ASSISTANT: 申し訳ありませんが、私は現在の天気予報を提供することはできません。天気予報は、天候、風向、風速、湿度、気温、降水確率など、多くの情報に基づいています。これらの情報を取得するには、天気予報を提供するウェブサイトやアプリケーションを使用することをお勧めします。<|endoftext|>

 

USER: GGML/GGUF/GPTQの違いは?
ASSISTANT: 以下は、GGML、GGUF、GPTQの違いです。

1. GGML(Generalized Game of Life): GGMLは、セルオートマトンの1つで、セルがゲームの状態に応じて移動します。GGMLは、GGMLよりも複雑で、より高度な戦略が必要とされます。GGMLは、主にシミュレーションやゲーム開発に使用されます。
2. GGUF(Game of Life Universal Format): GGUFは、GGMLのフォーマットを拡張したもので、GGMLよりも柔軟性があります。GGUFは、GGMLよりも高度な戦略が必要とされます。GGUFは、主にシミュレーションやゲーム開発に使用されます。
3. GGPTQ(Game of Life with Perfect Information Quotient): GGPTQは、GGMLとGGUFを組み合わせたもので、GGMLよりも高度な戦略が必要とされます。GGPTQは、主にシミュレーションやゲーム開発に使用されます。

GGMLは、GGUFよりも単純な戦略が必要とされますが、GGUFよりも高度な戦略が必要とされます。GGUFは、GGMLよりも柔軟性がありますが、GGMLよりも高度な戦略が必要とされます。GGPTQは、GGMLとGGUFを組み合わせたもので、GGMLよりも高度な戦略が必要とされます。<|endoftext|>

 

USER: 日本国憲法の文章を詳細にまとめてください。
ASSISTANT: 日本国憲法は、日本の憲法典として1947年5月3日に施行されました。憲法は全部で11章39条から成り立っています。以下に、憲法の各章と条文について説明します。

1. 総則
この憲法は、日本国民の総意に基づいて制定され、日本の国の政治の基本原則を定めています。

2. 天皇
天皇は、日本国の象徴であり日本国民統合の象徴であり、日本国民の総意に基づいて日本国の元首とされています。

3. 国の政治
国の政治は、国民の代表である国会が中心となり、行政、司法、立法の三権がそれぞれ独立して機能します。

4. 国民の権利と義務
国民は、憲法で保障された権利を有するとともに、憲法で定められた義務を負います。

5. 法律の範囲内での自由
国民は、法律の範囲内での自由を有するとともに、法律によって制限されます。

6. 戦争の放棄
日本は、戦争を放棄し、武力を持たず、国際紛争を解決するための手段としての戦争を放棄します。

7. 国民の教育
国民は、教育を受ける権利を有するとともに、国民の教育に関する責務を負います。

8. 地方自治
地方自治体は、住民による直接民主制を採用しています。

9. 財政
国は、国民から徴収した税金によって、国民の生活に必要な公共サービスを提供します。

10. 国際法の尊重
日本は、国際法の原則を尊重し、国際法に基づく義務を履行します。

11. 最高法規
憲法は、日本の法律の中で最も高い地位を有するとされています。

以上が、日本国憲法の各章と条文の概要です。憲法は、日本の政治体制や国民の権利・義務、国際関係などについて規定しています。<|endoftext|>

 

USER: 以下の文章を詳細にまとめてください。

史書三国志』の受容
三国志』は、信頼性の乏しい情報を極力排して簡朴明解な記述を行ったため、「質直さにおいて司馬相如を超える文章」(「陳寿伝」に載せる范頵の上表)「人物評価に見るべきものがあり、記事は公正正確なものが多い」(裴松之「上三国志注表」)などの高い評価を受けた。しかし南朝宋の裴松之がその簡潔すぎる記述を惜しみ、当時存在した諸種の文献を引用し注釈を作成した。『三国志』とこの裴注、また『後漢書』、『晋書』、『華陽国志』、『世説新語』などに散見する三国時代の記述が三国志の史実世界を構成している。
三国志』の戦乱と激動の記録は後世、特に唐宋の文人の詩想を大いに刺激した。『三国志』をモチーフにした詩詞としては杜甫「蜀相」、杜牧「赤壁」、蘇軾「赤壁賦」、陸游「書憤」などが特に名高い。また、西晋の左思(252~307)の『三都賦』が魏・呉・蜀それぞれの都の繁栄のさまを活写したと評価が高く人々が争って書き写そうとしたため(当時、印刷はまだなく手で書き写すしかなかった)紙が高騰し「洛陽の紙価を高からしむ」の故事が生まれた[5]。
三国はそれぞれ正統性を主張したが、魏が蜀を滅ぼした後、魏から禅譲を受けるという形で司馬炎が建てた晋(西晋)によって、魏が正統であるとされたが、南北朝時代に入り、晋が全国政権ではなくなると(東晋)、習鑿歯が蜀漢正統論を唱え、次第に注目されるようになった。宋代には「三国のうちどの国が正統であるか」という、いわゆる「正閏論」が盛んになり、司馬光(『資治通鑑』)・欧陽脩(『明正統論』)・蘇軾(『正統弁論』)らは中国の過半を支配した実情から魏を正統とした。しかし、「正統」を決めようすること自体が現実的側面よりは観念的・倫理的な側面の強い議論であり、結局は観念論に基づいた朱子蜀漢正統論(『通鑑綱目』)が主流となっていった。この歴史観朱子学の流布と共に知識人階層に広まり、劉備を善玉とする『三国志演義』の基本設定に一定の影響を与えた。
清代に考証学が盛んになると、王鳴盛『十七史商榷』・趙翼『二十二史箚記』・銭大昕『二十二史考異』・楊晨『三国会要』など多くの研究が著された。これら考証学の成果は民国に入って盧弼『三国志集解』によって集大成された。また、三国志時代の社会経済等については、同じく民国の陶元珍の『三国食貨志』(上海商務印書館 1934年)がある。

ASSISTANT: 以下は、三国志の受容についての詳細なまとめです。

三国志は、信頼性の低い情報を極力排し、簡明な記述を行ったため、高い評価を受けました。しかし、南朝宋の裴松之がその簡潔すぎる記述を惜しみ、当時存在した諸種の文献を引用し、注釈を作成しました。また、西晋の左思が書いた『三都賦』は、魏・呉・蜀それぞれの都の繁栄のさまを活写し、高い評価を受けました。

三国志の戦乱と激動の記録は、唐宋の文人の詩想を大いに刺激しました。杜甫や蘇軾などの詩人が、三国志をモチーフにした詩詞を作り、高い評価を受けました。

また、中国の正統性をめぐる議論は、宋代に入ると盛んになりました。司馬光や欧陽脩、蘇軾らによる魏を正統とする主張に対し、考証学の成果により、劉備を善玉とする『三国志演義』の基本設定が生まれました。

清代に入ると、考証学の成果により、盧弼による『三国志集解』が完成し、三国志時代の社会経済などについての研究も進みました。

以上のように、三国志は、簡明な記述と注釈、そして詩や研究などを通じて、多くの人々に影響を与え、中国の歴史や文化に大きな影響を与えました。<|endoftext|>

 

youri-7b-instruction-gptqを試して見る

rinna.co.jp

 

なんだか、凄そうな予感しかしないので、試して見ました。工夫することももなく、さくっと動作しました・・・。

 

github.com

 

とりあえず、さくっと試して見ましたが・・・。7Bでこの性能まで来たのか・・・。

 

### 入力:
まどマギで一番かわいいのは?
### 応答:
ほむらちゃん</s>

 

### 入力:

世界で一番高い山はなんですか?それは東京ドームより高いですか?

### 応答:

世界で一番高い山はエベレスト山です。東京ドームは150mですが、エベレスト山は8,848mです。</s>

 

### 入力:
関羽を知っていますか?

### 応答:
関羽は、孔明と同様に、三国志の歴史で最も優れた将軍のひとりであると考えられています。</s>

 

ELYZA-japanese-Llama-2-7b-instructを動かしてみる。

ELYZA-japanese-Llama-2-7b-instructも楽しそうなので動かしてみる。さほど工夫もなく、そこそこの速度が出る。

 

Q. 関羽を知っていますか?

A. はい、知っています。関羽は、中国の三国志時代の武将です。呉の主要な武将の一人で、呉の国力の増強に大きく貢献しました。関羽は呉の国主・孫権に重用され、孫権の側近として重要な役職を歴任しました。関羽は呉の国力の増強に大きく貢献した武将であるとともに、孫権に重用された側近の武将としても知られています。

 

なんか、まぁ、色々と回答は間違っていますが・・・。

 

github.com

 

そこで、タスクはどうなんだろうと、

RetrievalQA.py · GitHub

を参考にしつつ、LangchainのRetrivalQAをColabで動くようにする。PDFを参照しつつ回答が得られるか。

Q. この論文の主張を詳細にまとめてください。

A. 与えられた論文を易しくまとめます。

この論文は、画像認識のためのディープラーニングの手法について述べています。

まず、画像を認識するためには、画像を特徴量に変換する必要があります。この特徴量の変換を行うのが、「コースディスクリプション」と「ノイズレベル」の2つのモジュールです。

次に、特徴量に変換した画像を、ディープラーニングニューラルネットワークに入力します。この入力画像を、適切なサイズに括ります。これを「サンプリング」と呼びます。

最後に、ニューラルネットワークが学習した後、順を追って画像を認識します。

 

良い感じでは。

 

github.com

 

続けて、かなり気になる「NousResearch/Yarn-Llama-2-7b-64k」をColabで動かそうとしたが、試行錯誤中にColabが上限に・・・。コンピューティング ユニットを購入するかどうか、悩み中(笑)

 

Code Llama 7B Pythonを試す。

CodeLlamaを試して見たくて、Colabで7BのPythonモデルを動かしてみる。プロンプトは、プログラムの時にコメントを書く要領で良いようなので、以下のように与えてみた。

 

プロンプト

import openai

# Function that response user inputed text.

結果

import openai

# Function that response user inputed text.
def response(text):
    openai.api_key = "YOUR_API_KEY"
    response = openai.Completion.create(
        engine="davinci",
        prompt=text,
        temperature=0.9,
        max_tokens=150,
        top_p=1,
        frequency_penalty=0.0,
        presence_penalty=0.6,
        stop=["\n"]
    )
    return response

# Main function.
def main():
    # Get user input.
    text = input("> ")
    # Get response.
    response = response(text)
    # Print response.
    print(response["choices"][0]["text"])

# Call main function.
if __name__ == "__main__":
    main()

 

まずますですね。たまに、OpenAIのKeyを(明らかに間違ったキーを)生成することもありました。

 

他にも試して見た。精度が上がったとしても、コード書きながら測コードを示すくらいの使い方なら便利そうだ。今後、必須のツールになってくるのだろう。でも、まだ、ローカルで気軽に使うには重い・・・ですよね。

 

github.com

 

幾つかのサイトを参考にさせて頂きました。

nowokay.hatenablog.com

LINEのLineModell_japanese_large_lm_3_6b_instruction_sfを試してみる。

さっそく、LINE社が発表したinstructionモデルをColabで動かした。

 

huggingface.co

 

パラメータは、Huggin Faceにのっていたものをそのまま採用。temperature=1.0すると、いまいちだったので、まずは、素直に公式を参考にする。

 

github.com

 

レスポンスを見てみると良い感じだ。間違いもあるが、タスクを解ける方が大事だと思っているので、そこまで悪い印象はない。これくらい軽くなってくると、色々と使えそう。

 


今日の天気と夕飯の関係を考察してください。

ユーザー: 今日の天気と夕飯の関係を考察してください。
システム: 1.曇り時々晴れ、気温26度、湿度70%。
     ・湿度が高く蒸し暑いため、ビールや冷酒が飲みたくなるかもしれません!
      ・しかし、我慢です!今夜は鍋にしましょう!

2.雨時々曇り、気温23度、湿度59%。
     ・湿度が低く涼しいので、鍋よりも冷たい飲み物の方が合いそうです。
     ・しかし、我慢です!今夜は白ワインにしましょう。

3.曇り時々晴れ、気温26度、湿度58%。
     ・湿度は低いですが、気温が高いので、温かい食事が合うでしょう。
     ・今夜は、ガーリックの効いたスペイン風のパエリアを用意しましょう!</s>

 

まどか☆マギカで一番かわいいのは誰?

ほむらです。

 

九州でもっとも人口が多い県は?

2021年国勢調査によると、九州で最も人口の多い県は熊本県です。その人口は約96万人である。

 

熊本県、推しだ・・・。

LangChainでVicuna_7b_v1_5を頑張ってみる。

気軽に自分の(非力な)PCで動かせないかと、Vicuna_7bをLangChainで活用できないかと、Webの記事を参考に試行錯誤。Colabの無料プランの範囲でどうにかなるなら自分のPCでも動く可能性があるかもしれない。

 

で、やっては見たものの、ループしたり、プロンプトに対してパースできない返答が帰ってきたりと芳しくない。もちろん、LangChainのプロンプトそのままだと無理があることもあるのだろう。

 

気に入った質問と答え。遊びには十分使えるのかも。

Q. 最後のジェダイは誰?
A. 最後のジェダイルーク・スカイウォーカーです。

Q. Who is the last JEDI?

A. Rey is the last Jedi.

 

github.com