Upgrade to Pro — share decks privately, control downloads, hide ads and more …

LLM勉強会にDifyを使ったことで見えてきたDifyのソフトウェア開発への活用ポイント

QunaSys
October 27, 2024
36

 LLM勉強会にDifyを使ったことで見えてきたDifyのソフトウェア開発への活用ポイント

QunaSys

October 27, 2024
Tweet

Transcript

  1. 勉強会のハンズオンでのツール選定要件 要件 目的 ChatGPTのAPIキーはこちらで用意 できる? 参加する会社によってはAPIキーが用意できない可能性がある APIキーのレートリミットの管理が できる? 多くの人が一気にAPIキーを使うので、Embbedingとかはrate limit

    errorでそう。チャットは問題にはならないかも? ユーザーがアノテーションでき る? °¬ 本当に正しい答えをこちらでデータとして貯めたい¥ ®¬ データ評価まで実践してもらう機会を作りたい。 勉強会以外でも使ってもらえる? 参加者にユースケースを思いついてもらいたいので、常に使って もらえる環境を用意したい。 文献を集めることができる? みんなの知見を集めて、RAGに使えるようにしたい。 プロンプト集めることができる? 同上
  2. 案1. LangChain+LangServe+LangSmith+Google Colab ️ ︎ ・・・できる! ・・・できない。運用もしくは別サービスでカバー可能な場合 も含む 要件 満たす?

    APIキーはこちらで用意できる? レートリミットの管理ができる? (実行タイミングずらす とかなら... ユーザーがアノテーションできる? LangSmithをいい感じに 運用すればできるかも... 勉強会以外でも使ってもらえる? 文献を集めることができる? GoogleDriveに入れてと かなら...?... プロンプト集めることができる?
  3. CRAGをDifyで構築す るとこんな感じ Difyとは? i GUIで簡単にRAGや、AIエージェント作成 (LLMもいろいろ使える` i もちろんプロンプトも変更しやすh i 作ったものをアプリとして公開できa

    i APIの公開とかも可能A i アノテーション機能もついてるA i LLMのAPI Keyのロードバランサーの機能もあa i セルフホスティングできる。 LLMアプリをローコードで作成できるOSSプラットフォーム
  4. 気付いたDifyのLLMアプリへの使い所 h 作成物はアプリ or APIで公開できるので、まずはDifyを使うのがよさそŒ h どれぐらい使われるかわからない状況で、OpenAIのAPIキーをロードバランサーやレートリ ミット管理を作るのは大変です。ここをなんとかしてくれてるのは結構嬉しい(これ管理す るの意外と辛いのでF h

    正直Difyにまだできないことが、複雑なことやろうとした時はDifyAPI+コードを書くこと でDifyの不得意なところは補うのがい h ドメインエキスパートと一緒にやりたい or ドメインエキスパートの方に管理してもらった 方がいいところはDifyに切り出’ h アノテーション機能が標準ついてるので便! h ただバージョン管理は煩雑になりそう(これから改善されるんじゃないかと思っている)
  5. 気付いたDifyのLLMアプリへの使い所 ’ 作成物はアプリ or APIで公開できるので、まずはDifyを使うのがよさそŠ ’ どれぐらい使われるかわからない状況で、OpenAIのAPIキーをロードバランサーやレートリ ミット管理を作るのは大変です。ここをなんとかしてくれてるのは結構嬉しい(これ管理す るの意外と辛いのでA ’

    正直Difyにまだできないことが、複雑なことやろうとした時はDifyAPI+コードを書くこと でDifyの不得意なところは補うのがい~ ’ ’ アノテーション機能が標準ついてるので便! ’ ただバージョン管理は煩雑になりそう(これから改善されるんじゃないかと思っている) ドメインエキスパートと一緒にやりたい or ドメインエキスパートの方に管理してもらった 方がいいところはDifyに切り出 ここもっと 注目してもいいかも!
  6. ドメイン知識持っている人にプロンプトを見てもらう と? これだと正直微妙ですね... まずは最初はよく使われる汎函数を使います。 有機分子ならとりあえずB3LYPをつかったりしますね。 実験やの人はB3LYPでいったん回して合わなければor収束し なければ変える感じおおいですね。 たとえば横長かつ、手が3つ生えたNが片側の端っこらへんに ある分子とかはB3LYPだと実験値とずれやすい(らしい)の でいくつか汎函数を試してベンチマーク的に計算値と実験値

    のずれがあまりないものを調べますね。 電荷が長距離移動する有機分子をやっていたのでM06とか使 いました。 そういう意味では錯体は金属とその周りの有機配位子部分と で関数を変えるので、いろいろな汎関数が出てきがちかも? ただ注意する必要があるのはある分子系で用いる汎関数は1つ に絞ります(あくまで正当な理由がない限りです。 ・・・・・(以下略)
  7. ドメイン知識持っている人にプロンプトを見てもらう と? これだと正直微妙ですね... まずは最初はよく使われる汎函数を使います。 有機分子ならとりあえずB3LYPをつかったりしますね。 実験やの人はB3LYPでいったん回して合わなければor収束し なければ変える感じおおいですね。 たとえば横長かつ、手が3つ生えたNが片側の端っこらへんに ある分子とかはB3LYPだと実験値とずれやすい(らしい)の でいくつか汎函数を試してベンチマーク的に計算値と実験値

    のずれがあまりないものを調べますね。 電荷が長距離移動する有機分子をやっていたのでM06とか使 いました。 そういう意味では錯体は金属とその周りの有機配位子部分と で関数を変えるので、いろいろな汎関数が出てきがちかも? ただ注意する必要があるのはある分子系で用いる汎関数は1つ に絞ります(あくまで正当な理由がない限りです。 ・・・・・(以下略) ドメインに寄せたプロンプトチューニ ングはかなり高度
  8. ドメイン知識持っている人にプロンプトを見てもらう と? これだと正直微妙ですね... まずは最初はよく使われる汎函数を使います。 有機分子ならとりあえずB3LYPをつかったりしますね。 実験やの人はB3LYPでいったん回して合わなければor収束し なければ変える感じおおいですね。 たとえば横長かつ、手が3つ生えたNが片側の端っこらへんに ある分子とかはB3LYPだと実験値とずれやすい(らしい)の でいくつか汎函数を試してベンチマーク的に計算値と実験値

    のずれがあまりないものを調べますね。 電荷が長距離移動する有機分子をやっていたのでM06とか使 いました。 そういう意味では錯体は金属とその周りの有機配位子部分と で関数を変えるので、いろいろな汎関数が出てきがちかも? ただ注意する必要があるのはある分子系で用いる汎関数は1つ に絞ります(あくまで正当な理由がない限りです。 ・・・・・(以下略) ドメインに寄せたプロンプトチューニ ングはかなり高度 ︎ ドメインエキスパートに任せた方がい い。
  9. Difyはソフトウェア開発プロセスを改善する ドメインエキスパートと一緒にやりたい or ドメインエキスパートの方に管理してもらった方が いいところはDifyに切り出Œ “ ドメインエキスパートと開発者を責務分離できて、ドメインエキスパートがLLMパート を改善しやすくなるP “ ソフトウェア開発的にもLLMパートとシステム開発パートで責務が完全に別れるので

    コード修正 or LLM修正の影響範囲が明確になり、予期せぬバグが少なくなるはず!最 終的には改善を加速するはず! ただ、「ドメインエキスパートがいない」「エンジニア自身がドメインをよく知っている」 などの場合はこの限りではないと思ってます...