QEUR23_LMABYS1: ミニLLMモデルとLangChainの相性は?
~ 「やってみた」からはじめよう ~
D先生 : “あれ?もう・・・。ミニLLM(大規模言語モデル)って・・・(笑)。”
QEU:FOUNDER : “GPT4Allを無理やり、別の言葉で表現してみました。はっきりいって、ミニLLMモデルは、今、山ほどあります。我々としては、現在手に入る、目的に合ったものを少しづつ試してみるだけ・・・。”
D先生 : “これだけ変化が激しい状態で、今、意識を集中して「今現在、最も良いモノを探す」のは、たしかにムダといえます。さて、FUNDERのいうところの「目的」とは?LLMに自分のノウハウを注入するという・・・。”
QEU:FOUNDER : “そういえば、LangChainというシステムがはやっているらしいね。これも、「とある勉強会(↑)」に参加して知りました。ただし、似た機能を持つ他のソルーションもありますよ。これのどちらを使うのかも、あとでゆっくり決めようかなと・・・。”
D先生 : “これだけ、世の中が大きく動いているとしょうがないですね。”
QEU:FOUNDER : “世の中が大きく動いている。このことを、LangChainのバージョン管理が最も的確に表現しています。小生、「0.0.XXX」というバージョン情報を初めて見ました。コレを作っている人間でも、近未来にLLMがどのように変化するのかの予想がつかないんです。”
D先生 : “う~ん・・・。ひょっとして、このシステム(LangChain)って、全然つかえないんじやぁ?”
QEU:FOUNDER : “それは逆です。今、すごく流行していますよ。もし、今、「新機能をもったLLMのサービスを始めました」とか言うサービスを見つけたら、ほとんどがコレを使っていると思ってください。それでは、我々としては地味にGPT4AllをLangChainで使うことから始めますか・・・。”
D先生 : “ほとんどの人はOpenAIのAPI_Keyを使っているでしょ?お金がもったいないの?”
QEU:FOUNDER : “まあ、そりゃそう・・・。でも、一番の意図は「さしあたり使ってみたい」だけだから・・・。しばらくしたら、もっとスゴイ、超絶ソルーションが出てもおかしくないです。それではプログラムをドン!!”
from langchain import PromptTemplate, LLMChain
from langchain.llms import GPT4All
from langchain.callbacks.streaming_stdout import StreamingStdOutCallbackHandler
# Prompts: プロンプトを作成する
template = """Question: {question}
Answer: Let's think step by step."""
prompt = PromptTemplate(template=template, input_variables=["question"])
# Models: 変換後のモデルを読み込む(j-groovy)
local_path = "D:./ggml-gpt4all-j-v1.3-groovy.bin"
callbacks = [StreamingStdOutCallbackHandler()]
#llm = GPT4All(model=local_path, callbacks=callbacks, verbose=True)
# If you want to use GPT4ALL_J model add the backend parameter
llm = GPT4All(model=local_path, backend='gptj', callbacks=callbacks, verbose=True)
# Chains: 作成したモデルを利用可能な状態にする
llm_chain = LLMChain(prompt=prompt, llm=llm)
# 質問してみる
#question = "Which season is the best to visit London?"
question = """
How would music have changed if Jimi Hendrix had lived to be 50?
Please explain in 100 words.
"""
llm_chain.run(question)
D先生 : “例によって、動かすのに超絶に苦労しました? ”
QEU:FOUNDER : “そう・・・。これも、「j-」モデルであることから専用の命令を使う必要があります。このノウハウを見つけるのに苦労しました。また、このノウハウもいつまで使えるのか、わからないですよ。”
D先生 : “何か、システムに面白い質問をしてください。”
D先生 : “おっと!すごいマニアックなロックギタリストに関する質問をしていますね!”
QEU:FOUNDER : “このプロンプト(質問)は「step by step(手順を追って)」という語句を使っています。この語句が生きるような質問にしなければいけませんからね。”
D先生 : “AIの回答を、もっとくわしく見せてください。”
#1. Jimi Hendrix was a rock musician, known for his unique style of guitar playing, which included techniques such as feedback, distortion, and wah-wah. He was also known for his experimental approach to music, incorporating elements of blues, folk, and psychedelic rock into his sound.
ジミ・ヘンドリックスはロックミュージシャンで、フィードバック、ディストーション、ワウワウなどのテクニックを駆使した独特のギター演奏スタイルで知られています。また、ブルース、フォーク、サイケデリック・ロックの要素を取り入れた、実験的な音楽へのアプローチでも知られる。
#2. If Jimi Hendrix had lived to be 50, he would have been in his early 50s when he passed away. At this age, he would have been in his prime as a musician, and his music would have continued to evolve and change.
もし、ジミ・ヘンドリックスが50歳まで生きていたら、亡くなったのは50代前半だったでしょう。この年齢であれば、ミュージシャンとして全盛期であり、彼の音楽は進化し、変化し続けていただろう。
#3. One possible change in his music would be the incorporation of new sounds and techniques, such as the use of synthesizers and drum machines. He would have also continued to experiment with different genres and styles, such as jazz, funk, and soul.
彼の音楽の変化として考えられるのは、シンセサイザーやドラムマシンの使用など、新しいサウンドやテクニックを取り入れることだろう。また、ジャズ、ファンク、ソウルなど、さまざまなジャンルやスタイルに挑戦し続けたことでしょう。
#4. Another possible change would be the evolution of his songwriting style, as he would have had more time to develop his lyrics and themes. He would have also continued to collaborate with other musicians and artists, as he was known for his creative partnerships.
また、歌詞やテーマを練る時間が増えたことで、曲作りのスタイルが進化したことも考えられます。また、他のミュージシャンやアーティストとのコラボレーションも、クリエイティブなパートナーシップで知られる彼なら続けていたかもしれません。
#5. Overall, Jimi Hendrix's music would have continued to evolve and change, as he would have had more time to experiment and develop his sound.
ジミ・ヘンドリックスの音楽は、より多くの時間をかけて実験し、サウンドを発展させることで、全体として進化と変化を続けていたことでしょう。
D先生 : “どうやら、回答に含まれる情報そのものは正しそうですね。ただし、文章に重複が多いです。軽量GPTの限界でしょうか・・・。”
QEU:FOUNDER : “ただで、しかも自分のPC上で動くGPTだから、こんなモン・・・(笑)。”
D先生 : “これから、LangChainを深く使ってみたいですね。”
QEU:FOUNDER : “あくまでGPT4Allに限界があるこを念頭におきながらね・・・。いつでも、ゲームをチェンジさせる用意があります。”
D先生 : “いつ、「ゲームチェンジャ(Game Changer)」が現れるのか、わかりませんからね。”
~ まとめ ~
・・・ 前回のつづきです ・・・
QEU:FOUNDER : “技術をイノベーションさせるには、オープンソースが一番です。技術を周回遅れさせたいのであれば「家元制」が一番・・・。”
C部長 : “あくまでユーザから見た無責任なコメントですけど、LlaMaの情報が外部に洩れてきたのかラッキーでしたね。本来、あの会社はLLMの情報を公開しない方針でしたから・・・。”
QEU:FOUNDER : “なにか、ここら辺に「運命」を感じるよね。そもそも、このLlaMaこそ未来のLLMの本命とされていました。小さいサイズでも高いパフォーマンスが期待できるという意味で・・・。”
C部長 : “そして、このモデルの発展形がFOUNDERのPC上で動いている。”
QEU:FOUNDER : “このモデルを使った人は、多かれ少なかれ、今後のLLMの技術発展をアシストする「ある種の責任」を負っていると思います。Linuxが生まれてきたときもそうでした。”
コメント
コメントを投稿