SEが最近起こったことを書くブログ

ITエンジニアが試したこと、気になったことを書いていきます。

2024年2月5日の週に気になった記事などまとめ

HuggingChat: ローカルLLM用モデルを試せて、アシスタントも作れるサイト

note.com

  • Search webのオプションもある

GPT4-Vで構成図からIaCコードを生成させる

qiita.com

  • GPT-4-Turbo with Visionを使って、構成図からIaCコード(今回はARM template)を生成させた記事

Metaなどの研究者らが、LLMが自分自身に報酬を与える「自己報酬言語モデル」を開発

ai-data-base.com

アナリティクスエンジニアのキャリアとデータモデリング 〜

speakerdeck.com

  • 責務に応じてレイヤーを分け、命名規則で管理する

ベースライン OpenAI エンドツーエンド チャット リファレンス アーキテクチャ

learn.microsoft.com

  • Azure Machine Learning (AML) プロンプトフローを使用して、受信プロンプトからデータストアへのワークフローを調整して、LLM の基本データと必要なその他の Python ロジックをフェッチする実行可能フローを作成するアーキテクチャを紹介する記事
  • 各サービスで信頼性を担保するために、どのようにデプロイすべきかが記載されている

AI時代のユーザ体験は「AAAA」モデルで考えよう

note.com

  • 「AI時代ならではの体験設計ってなんだろう?」を整理した記事
  • 「AAAA」は「Automation(自動化)」「Advice(助言)」「Augment(強化)」「Agent(代行)」から構成されている
  • Automation・Advice・Augment・Agentの4つは、以下のの2軸によって分類が可能
    • ①ユーザとAIとのタッチポイント
    • ②タスクの実行主体はユーザか?AIか?
  • 「AAAA」のそれぞれが望ましいケースが記載されている

VPCエンドポイントを活用したコスト削減

speakerdeck.com

  • NAT GatewayVPCエンドポイントに変更し、コスト削減した話

ローカルLLMの推論速度を高速化する5つの手法と比較評価

zenn.dev

  • ローカルLLMの推論速度を改善する5つの手法を実装し、推論速度がどの程度改善するかを確認した記事
  • 以下の手法を比較している
    • torch.compile
    • flash_attention_v1
    • flash_attention_v1 + torch.compile
    • flash_attention_v2
    • vLLM
  • vLLMとflash_attention_v2の効果が大きい

RAGの実案件に取り組んできた今までの知見をまとめてみた

dev.classmethod.jp

  • 社内のドキュメント情報に関してQAできるチャットボット(Slackアプリ)を構築した際の、構成方法や試してみての改善点について記載した記事
  • 関連情報の渡し方を工夫するところに時間をかける
  • LLMの処理時間は出力トークン数にほぼ比例する
  • LLMは会社独自の知識や業務知識には対応できないため、補完する必要がある
  • クラウドサービスごとの検索サービスのテキストの取り出し方が掲載されている

Azure OpenAI Assistants Code Interpreter (Preview)

learn.microsoft.com

  • Azure OpenAI ServiceでAssistants APIが利用できるようになった

気負わず、書く。私が意識してやっている、子育て中でもできるアウトプット術

levtech.jp

  • 「未来の自分に残すメモ」という感覚でブログを書く
  • 自分自身が思いついたことをノートに書き出していくことや日報なども自分のアウトプットと言える

JapaneseEmbeddingEval

github.com

GPT-4のコード生成能力を飛躍的に向上させるプロンプトフレームワーク『AlphaCodium』

ai-data-base.com

  • AlphaCodiumを使うと、コード生成の精度が顕著に向上する

[和訳]Azure コスト最適化 (原題:Azure Cost Optimization)

qiita.com

  • 以下の7つを実施する
    1. 使用していないリソースを停止する
    2. 使用していないリソースを適切なサイズにする
    3. 一貫したリザーブインスタンスの利用
    4. Azureハイブリッド特典の活用
    5. 自動スケーリングを設定
    6. 予算を設定し、チームやプロジェクトにコストを割り当てる
    7. 適切な Azureコンピュートサービスを選択する

社内用語集を気軽に質問できるSlackBotを作ってみた (RAGの応用アプリ)

tech-blog.abeja.asia

  • LangChain での RAG を使用して、LLM が学習に使用していない特定ドメインでの用語を応答する Slack ボットを紹介する記事
  • 用語集のスプレッドシートCSVに変換し、Choma or Faissに保存
  • ヒューマンインザループを含んだ継続的品質改善の仕組みもある
    • 解答が不十分な場合は用語集に用語の登録する

大規模言語モデルにおける混合エキスパートモデルの一種 Branch-Train-Merge (BTM)の勉強

note.com

BTMは大規模言語モデル(LLM)を効率的に訓練・推論する際の有効な手法

  • 以下のフローで学習。活用される
    • 学習用テキストを専門ごとにN分割
    • N個のモデルをそれぞれ独立に訓練
    • 全てのモデルをマージして利用
  • MoEはトークンレベルでモデルを入れ替えるが、BTMは文章レベルで入れ替える

Gemini Advanced と 新モバイルアプリ の概要

note.com

  • 「Bard」は 「Gemini」と呼ぶようになった
  • 「Gemini Advanced」は、新しい「Google One AI Premium Plan」の一部として月額 19.99 ドルで利用できる
    • 最初の2か月は無料トライアルできる」

v1.1 チューニング済みモデル・データ公開

llm-jp.nii.ac.jp

  • LLM-jp からインストラクションチューニングの設定の見直しや DPO の追加によって,性能を改善したチューニング済みモデル v1.1 とその際に使用したデータとコードが公開された
  • いずれも商用利用可能なライセンスで公開されている
  • 事前学習済みモデルはv1.0を利用している

大規模画像テキストデータのフィルタリング手法の紹介

speakerdeck.com

  • 様々な画像テキストデータのフィルタリング方法を紹介するスライド
  • 大規模画像テキストデータについて
    • 画像に対応するテキストとして、代替テキストを用いることが多い
    • ノイズが多い問題がある
  • 画像内の文字がキャプションに含まれる場合はバイアスが生じる可能性がある

東工大Swallowプロジェクトにおける大規模日本語Webコーパスの構築

speakerdeck.com

  • Common Crawlから日本語テキストを抽出・洗練して構築した
  • 日本語コーパスの中で商用利用可能なものとしては最大
  • 日本語テキストをさらに処理して、高品質なコーパスを構築している
  • 一部の日本語テキストをあきらめ、lang属性、title属性の言語で最初の日本語判定
  • 繰り返し表現はn-gramベースのルールなどで不適切な文書を除去
  • 日本語の品質は独自ルールを適用し、判断
  • 全角・半角のアルファベットやカタカナなどを正規化
  • フッターの典型的な表現を除去

RAGの性能を改善するための8つの戦略

fintan.jp

  • 前処理
    • PDFよりは、データソースとなる文書(Wordなど)を利用したほうがよい
      • 表示されていないテキストが抽出される場合がある
    • レイアウト解析による文書構造の検出
  • メタデータによるフィルタリング
  • チャンキング戦略
  • 埋め込みモデルの選択
  • クエリ変換
  • ハイブリッド検索
  • リランキング
    • この記事の実験ではベクトル検索とりランカーを組み合わせた場合は、性能が低下した
  • クエリのルーティング

LangSmith Hub

smith.langchain.com

  • プロンプトが共有されている