LLM 開発
エンジニアにはあまり意味がないかもな。
Microsoft SAの解説記事
プロンプトの話も結構含まれる
まとめ記事を書く際には参考になりそうなひとつ。
個人的に新しい情報はなさそう。
開発前に一読すれば良いかも。
実装自体を見てみると参考になる部分も多い。
Semantic Kernelは良く知らなかったがMicrosoft製なので気になっている。
HuggingGPTもMicrosoft製なんだな。
かなりまとまっていてて活用方針の参考となる
Azure OpenAIってGPT-3.5のfine-tuneできるんやっけ??とはなっている
研究用ととはいえ商用利用不可なので、たぶん企業の研究は無理では…
LLMの非決定性にどう対処するか
プロンプトエンジニアリングとその自動化
推論時にトークン数が多く消費される
その他、LLMを活用したツールについてなど
LLMというか範囲が広すぎるのであんま意味ないかも
たぶんまったく使う用途の無いものも含まれている
Microsoft SAの記事のアップデート版かな?
入力データの著作権や個人情報、自社機密情報、生成物などのついての手引きが記載
個人情報の議論について
本記事の結論としては、OpenAI社とDPAを締結すれば、OpenAIのAPIを利用する場合には、個人データを入力するに際して本人の同意は必要ないとしている。
自社の機密情報について
いまのところ、サービス提供者の秘密保持義務について明記した条文はないため、秘密管理性を満たすかは解釈上明確ではなく、自社の情報を入力すべきではないとしている。
生成物について
得られる結果の著作権について
基本的な使い方では、著作物の利用は原則として依拠性がない(著作権侵害には該当しない)と考えられる
ただし、意図的に似た出力を得ようとプロンプトを調整したりする場合は、依拠性が肯定されると考えられる
企業におけるリスク軽減という観点からは、そういった利用を禁止する旨を明記する
プロンプトの著作権も、創作性があれば「プログラムの著作物」として保護されるため注意が必要
また、生成物の商用利用について、OpenAIの場合は、生成物に関する権利についても全てユーザに移転する旨が規定されていますので、生成物の利用についての制限はない。
組み込む際のご参考に
こちらにもまとめられていた
色々あって泣けてくる
ChatGPT Browsing Pluginは知らなかったな
Chain of ThoughtやFew-shotなどのプロンプトエンジニアリング用語覚えられない
結論、最新モデルかどうか意外はAzure OpenAI一択な気がする。
人間とボットを効果的に区別するための質問シナリオ
人間にとっては簡単だがボットにとっては難しいもの
ボットにとっては簡単だが人間にとっては難しいもの
LLMの弱点
文字のカウント、文字の置換、文字の配置
ランダム編集、ノイズ侵害
ASCIIアート
LLMが得意なもの
記憶、計算の一部
技術的な話はあまりなかったが、脆弱性診断とかやるのはすごい。
コンテキストを与えるとかはやってないのかも?キーワード検索をChatGPTでラッパした感じかもしれない
よかった。認証の流れ、閉域化されたAzureでのアーキテクチャの例などが書いてある。
GPT-3.5と4のコスト比、エンベッディングのコスト、セルフホストする際に使用できそうなSentenceTransformersなど有用な情報がある
特に以下の資料が正しくまとまっており有用
チャット用に調整したらもうちょいマシになるのかな
Hugging Faceの以下記事のまとめ
戦略として、中間ステップに分解することで入力例を改善する「PEARL」というフレームワークを提案
PEARLは、ゼロショット とchain-of-thought promptingを上回る
中間ステップは以下の3つで構成
アクションマイニング:要約、検索など
プラン生成:アクションの実行するプラン
プラン実行:2で生成したプランを実際に実行する
最近のものまでまとめてあるのは評価できるが、ざっくりすぎる+多少論点がずれているものもあるので参考程度
こちら社内文書に基づくChatBotの作成に有用そうでした。
MS Build 2023のまとめから始まり、Cognitive Search + LLMでRetrieval Augmented Generationを実現する方法、
実際にメルカリ社内での活用方法の紹介があります。
個人的にクエリとドキュメントは類似性があるか疑問に思っており、
そこも最後の活用方法でTwo tower modelで解決しているところが面白かったです。
Two tower modelはVertex AI Matching Engineでも実現できそう
LoRAでは、元のモデルのパラメーター行列を低ランク近似した新たな行列をトレーニング対象にすることで、トレーニングに必要なメモリの消費量を削減
このLoRAをベースに、追加で3つのテクニックを利用することで650億(65B)パラメーターのモデルを48GBしかメモリを搭載していないGPUでトレーニング可能に
学習も24時間のトレーニングでChatGPTの99.3%に匹敵する性能を引き出すことに成功
3つのテクニック
NF4での量子化 : QLoRAでは4bitで量子化を行う
二重量子化 : 量子化の際に用いる定数についても量子化を行う
ページ最適化 : GPUメモリが上限に達した際に、通常のメモリへとデータを退避させて計算に必要なメモリを確保(ピークの使用率を抑える)
単純なRAGの問題点を挙げて、解決策のChat/Askを解説している良記事
LlamaIndexの課題やLangChainを使うべきという話も分かる気がする
Tokens Per Minute (TPM) のクォータを、各デプロイに対してユーザー任意の値 (1K 単位) で割り当てることができるように
Last updated