#
57
どうも、みなさんこんにちは!「zenncast」のマイクです。今日は2024年7月3日、水曜日ですね。みなさんいかがお過ごしでしょうか?さて、今回はZennでトレンドの記事を紹介していきますよ。

前回は「Llama-3-Swallow」という日本語に強い継続事前学習モデルの記事や、「AtCoder の過去問精選 10 問を Terraform で解いてみる」といった記事を紹介しました。引数の話も触れましたね。どれも興味深い内容でした!

では、今日のトレンド記事を紹介していきましょう。今日は全部で5本の記事を紹介します。それでは早速、1つ目の記事からいきましょう!

。。。

1つ目の記事は「【緊急】OpenSSHの脆弱性について」です。2024年7月2日に公開されたCVE-2024-6387という深刻な脆弱性についての内容です。この脆弱性を放置すると、SSHを受け付ける全てのサーバーが乗っ取られる可能性があり、特にデフォルト設定のSSHを狙った攻撃が懸念されています。特にGoogle Compute Engine(GCE)も影響を受けるため、早急な対策が求められます。

対策としては、Linuxディストリビューションのアップデート、ファイアウォールルールの見直し、sshdの構成変更、そしてOpenSSH Serverの無効化が挙げられます。特にGoogle Cloudを利用しているユーザーは、Googleが公表しているセキュリティ手順に従って対策を講じることが推奨されます。

この脆弱性は非常に緊急性が高く、大企業でも被害が出ている事例があるため、速やかな対応が求められます。各ディストリビューションの公式セキュリティページを参照し、詳細な対策を確認してくださいね。

。。。

次に紹介するのは「LLMで学習不要のレコメンドエンジンを実現」という記事です。この記事では、Amazonの研究チームが発表したLLMを用いた学習不要のレコメンドエンジンのフレームワークについて解説しています。従来のレコメンドエンジンは、商品の数が増えるたびに再学習が必要でしたが、この新しい手法ではその必要がありません。

提案されたレコメンドエンジンは、ユーザー行動データを元に、LLMが関連性の高い商品を推測することでレコメンド性能を向上させます。具体的には、レコメンド対象アイテムに対する質問とそのアイテムが選択された確率をLLMに渡し、適切な質問を生成するフローを繰り返すことで、クリック率をシミュレートして最適な質問を作成します。

このシステムは質問の生成に焦点を当てており、実際のレコメンドエンジンとして利用するためには、生成された質問を元に商品を検索する仕組みが必要です。質問生成の精度が高ければ、実用に近づく可能性がありますので、エンジニアの皆さんにはぜひ参考にしていただきたい内容です。

。。。

さて、3つ目の記事は「暗号化に対応した次世代dotenvツールdotenvxを使う」です。dotenvxは、Motさんによってリリースされたdotenvの次世代版で、環境変数を暗号化して管理できる点が特徴です。dotenvxは、dotenvの弱点を克服し、特に暗号化サポートが追加されています。

dotenvxは、npmやHomebrew、curlのいずれかでインストール可能です。インストール後は、`.env`ファイルに環境変数を定義し、`dotenvx run`コマンドで環境変数を適用できます。さらに、複数の環境に対応するために、`-f`オプションで異なるdotenvファイルを指定したり、`--overload`オプションで後に指定したファイルを優先することも可能です。

特に注目すべきは、dotenvファイル自体を暗号化する機能です。これにより、ファイル全体を暗号化して安全に管理することができます。dotenvxを使用することで、安全かつ効率的に環境変数の管理が可能となります。

。。。

次に4つ目の記事、「LangGraphの基本的な使い方」です。この記事では、PharmaXのエンジニアである諸岡さんが、LangChainのツールチェインの一つであるLangGraphについて紹介しています。LangGraphは、LLMエージェントのステップをグラフ化して状態管理を行うためのツールで、複数のエージェントが協調して動作する「マルチエージェント」の構築を容易にします。

LangGraphの基本コンポーネントには、Graph、State、Node、Edgeがあります。Graphは各NodeとEdgeの集合体で、Stateはノード間の遷移の際に保持される情報、Nodeはグラフ内のステップや状態を表す要素、そしてEdgeはノード間の接続を表し、遷移の条件やアクションを定義します。

具体的な使い方としては、Graphの作成、Nodeの定義と追加、Edgeの定義、Graphのコンパイルと実行といったステップがあります。LangGraphは作成したグラフを可視化するための機能も提供しており、Mermaidでグラフを出力することができます。

LangGraphの基本的な使い方を紹介した後、今後はより複雑なグラフの作成方法やLangChainとの連携についても説明する予定です。興味のあるエンジニアの方はぜひチェックしてみてください。

。。。

最後に紹介するのは、「第3世代の自動運転@CVPR2024」という記事です。Turing生成AIチームの佐々木さんが、CVPR 2024に参加し、Vision Language Model(VLM)のワークショップで日本語VLM評価ベンチマークHeron-Benchを発表しました。

CVPR 2024では、エンドツーエンドの自動運転や大規模言語モデル(LLM)、ビジョン言語モデル(VLM)、ワールドモデルを自動運転に活用する多くの手法が発表されました。この記事では特に注目された5本の論文を紹介しています。

1つ目は、「DriveLM: Driving with Graph Visual Question Answering」。運転の状況理解のためにGVQAタスクを提案し、安全な運転を計画するタスクです。2つ目は、「Generalized Predictive Model for Autonomous Driving」。未来のフレームを予測し、一貫性のある未来のシナリオを生成する能力を持つ自動運転のVideo Prediction Modelです。

3つ目は、「CarLLaVA: Vision language models for camera-only closed-loop driving」。カメラ画像のみをVLMで処理して自動運転を実現する手法です。4つ目は、「LaMPilot: An Open Benchmark Dataset for Autonomous Driving with Language Model Programs」。自然言語の指示をLLMが解釈し、自動運転システムがプランニングするフレームワークです。

最後に5つ目は、「Driving into the Future: Multiview Visual Forecasting and Planning with World Model for Autonomous Driving」。複数の視点からの映像を生成し、一貫性のある未来のシナリオを予測し、安全な運転経路を選択する世界モデルです。

自動運転技術は進化し続けており、特に第3世代の自動運転では、LLMやVLMの活用が注目されています。今後の動向にも目が離せませんね。

。。。

さて、今日は5本の記事を紹介しました。駆け足でおさらいすると、まず「【緊急】OpenSSHの脆弱性について」、次に「LLMで学習不要のレコメンドエンジンを実現」、そして「暗号化に対応した次世代dotenvツールdotenvxを使う」、「LangGraphの基本的な使い方」、最後に「第3世代の自動運転@CVPR2024」でした。

次回も面白い記事を紹介しますので、ぜひお楽しみに。今日紹介した記事の詳しい内容はショーノートに書いてありますので、ぜひチェックしてみてください。そして、番組の感想も募集していますので、どしどしお便りくださいね。それではまた次回お会いしましょう。バイバイ!

Related episodes

内容の近いエピソードを推薦しています