ToDoリストDify×Llama3.1編📝(LLMアプリケーションを活用したプロトタイプ)
前回の記事からブラッシュアップしていく。追加点として以下3点。
- 入力文をそのままLLMに入力するのではなく、RAGの形にする。
- LLMをHugging Faceのモデルから選定(Inference APIを利用)
- 画像生成AIでToDoリストのサムネイル画像作成
LLMは1週間前に発表されたMetaのLlama3.1、画像生成AIはStable Diffusionを使いたい。
あんまり重いとToDoリストの更新が遅くなり、使用感が悪くなると思うのでLlama3.1は一番軽い8Bというモデルを使うことにする。
利用には事前に申請が必要⇒Done
Stable Diffusionは3 Turboというモデルを使うことにする。説明文にfast
と書いてあるから。
Llama3.1が
Only available for models running on with the "text-generation-inference". To learn more about the TGI project, please refer to https://github.com/huggingface/text-generation-inference.
とかいうエラーでDifyと連携できない。
今回もQiitaとteratailで質問をしてみる。
回答がつかない。ノーコードツールの質問はQAサイトで回答をもらうのは難しいのかも。
ただ、𝕏で有識者の方からコメントいただいた。⇒解決せず。逆の説明をしているような?
Difyの公式GitHubページにDiscussionsがあったのでそこで質問してみる。
と思ったらDifyの公式Discodeページに日本語のサポートコミュニティがあったのでそこで質問してみることにした。
𝕏と同じ方。ありがたい。
ということでモデルが新しいからなのかHugging FaceのPro Account($9/month)に登録する必要がありそうだった。
そんなことHugging Faceには書いてないので推測だが。。。
Freeプランであれば前モデルのLlama3であれば無料プランでも使えた。
Llama3.1は日本語に弱いとの噂を目にしたのでLlama3.1への入力を日本語⇒英語にし、出力を英語⇒日本語にするためにGoogle翻訳のブロックを追加した。
そもそも日本語を入力しても"null"しか出力しないみたい。
Dify上でテストした。
出力文みじか。トークン数の設定とかあるのかと思ったけど見当たらず。
プロンプトで「できるだけ詳細にとか」、「●●文字以上」とか条件をつけてみたけど改善されず。。。
Stable Diffusionの画像は問題なく生成されていた。
Stabele Diffusionで生成した画像をAppSheetに反映させるためには、画像URLをAppSheetに連携しているGoogleスプレッドシートに貼り付けないといけない。
いつも通りClaude 3.5 Sonnetで追加のコードを生成してもらった。
// 画像URLの抽出と書き込み(新規追加)
if (outputs.files && outputs.files.length > 0) {
const imageUrl = outputs.files[0].url;
// H列に画像URLを書き込み
sheet.getRange('H' + lastRow).setValue(imageUrl);
}
AppSheetも画像が表示されるように、ビューを変更
おぉできた。無機質なアプリから昇華させることができた。
相変わらずLlama3.1の回答は微妙だが。
またまたDiscodeで聞いてみた。MAXトークン数の設定が必要だったみたい。
翻訳感。。。