CCCMKホールディングス TECH LABの Tech Blog

https://techblog.cccmkhd.co.jp/

TECH LABのエンジニアが技術情報を発信しています

フィード

記事のアイキャッチ画像
2024年も終わりなので、来年の目標達成のための計画を作ってくれるMulti-Agentの仕組みを作ってみました。
はてなブックマークアイコン 1
CCCMKホールディングス TECH LABの Tech Blog
こんにちは、CCCMKホールディングスTECH LABの三浦です。 今年ももう終わりですね。この時期は「今年こんなことあったなぁ」と振り返りつつ、「来年こんなことが出来るようになりたいなぁ」と考える時期だと思います。今年、AI領域ではLLMの活用として"Agent"という単語を目にすることが多かったです。さらに複数のAgentを組み合わせた"Multi-Agent"というシステムについても様々な事例を目にしました。 そんな2024年の締めくくりとして、今回来年の目標と現在の自身のステータスを入力すると、実現するまでのプランと体験内容を考えてくれる仕組みをMulti-Agentで作ってみましたの…
4日前
記事のアイキャッチ画像
RecSys2024 論文紹介③
CCCMKホールディングス TECH LABの Tech Blog
こんにちは。データサイエンスグループの木下です。 今回はRecSys2024論文紹介シリーズの最後の記事になります。 最終回にふさわしく、今回紹介する論文はRecSys2024でベストペーパーに選ばれた Towards Empathetic Conversational Recommender Systems という論文になります。 概要 Conversational Recommender System(CRS)はベンチマークデータセットから学習して一般的な商品をレコメンドしていたため、一般的な商品に対して苦手意識を持っていることを見過ごしてしまったり、感情的に訴えることができなかった。 そ…
7日前
記事のアイキャッチ画像
RecSys2024 論文紹介②
CCCMKホールディングス TECH LABの Tech Blog
こんにちは。データサイエンスグループの木下です。 RecSys2024の論文解説シリーズの続きで、2本目の今回は FLIP: Fine-grained Alignment between ID-based Models and Pretrained Language Models for CTR Predictionという論文を紹介いたします。 概要 CTR(クリックスルー率)予測において、PLM(事前学習済み言語モデル)を用いて文字の意味を取得することで、既存のID-basedな表形式モーダル※1だけではなく、テキストモーダル※2を追加することで予測精度を上げた。 ※1:表形式モーダルとは、…
8日前
記事のアイキャッチ画像
LLMの評価の観点について、調べてみました。
CCCMKホールディングス TECH LABの Tech Blog
こんにちは、CCCMKホールディングスTECH LABの三浦です。 今日はクリスマスイブですね。クリスマスが過ぎるとあっという間にお正月で、毎年この時期には独特な雰囲気があるなぁと感じています。 参考資料 LLMの評価 汎用的言語性能 ドメイン特化性能 安全性能 LLMの評価タイミング LLM評価用ツール"LLM-jp 評価スクリプト" まとめ 先日NeurIPS 2024に参加してから、色々な論文を読んでみていました。その中で特に大切だな、と感じたのが適切な評価方法です。公になる論文では、誰もが納得できる評価方法が必要で、そのためには適切な評価用データセットと、それに対する結果を適切な方法で…
9日前
記事のアイキャッチ画像
NeurIPS 2024に参加しました!
CCCMKホールディングス TECH LABの Tech Blog
こんにちは、CCCMKホールディングスTECH LABの三浦です。今回はカナダのバンクーバーから、機械学習・AIに関する国際カンファレンスである"NeurIPS 2024"に現地参加したレポートをお送りしたいと思います! NeurIPSとは 最初に会場で受け付け カンファレンス期間中の様子について 1日目 2日目/3日目/4日目 5日目 NeurIPS 2024に参加してみて 参加して感じたこと 次回参加するならこうしたい 気になるトピックと日本に帰ったら取り組みたいこと その他 ChatGPTが大活躍 意外と寒くなかったバンクーバー まとめ NeurIPSとは NeurIPS 2024 "N…
18日前
記事のアイキャッチ画像
RecSys2024 論文紹介①
CCCMKホールディングス TECH LABの Tech Blog
こんにちは。データサイエンスグループの木下です。 前回の記事の続きとして、今回からRecSys2024で発表された論文を紹介していきます。 前回の記事はこちら↓ techblog.cccmkhd.co.jp 今回の記事では学生部門のベストペーパーに選ばれたUnlocking the Hidden Treasures:Enhancing Recommendations with Unlabeled Dataという論文を紹介いたします。 概要 協調フィルタリングにおいて、大量の未評価のデータを活用する方法は確立されていなかった。一般的にはネガティブサンプリングしていたが、それだと使われなかったデー…
20日前
記事のアイキャッチ画像
事前学習におけるトークンの選択の重要性についての論文"RHO-1:Not All Tokens Are What You Need"を読みました。
CCCMKホールディングス TECH LABの Tech Blog
こんにちは、CCCMKホールディングスTECH LABの三浦です。 今年もあと1か月ですね。振り返ってみると色々とあった1年ですが、個人的には夏の厳しい暑さが印象に残っています。残りわずかですが、2024年の最後まで頑張ろうと思います。 学習中のトークンごとの損失の変化 不要なトークンを学習中に除くSelective Language Modelingというテクニック SLMによる効果 まとめ 今回は最近読んで印象に残った論文の内容についてまとめてみたいなと思います。次の論文です。 【Title】Rho-1: Not All Tokens Are What You Need 【Authors】…
24日前
記事のアイキャッチ画像
RecSys 2024に現地参加しました
CCCMKホールディングス TECH LABの Tech Blog
こんにちは。 データサイエンスグループの木下です。 10/14~10/18にイタリアのバーリで開催されたRecSys2024に現参加してきたので、その報告をしようと思います。 このシリーズは4回にわたる予定で、第一回目はカンファレンス自体の内容、 それ以降は論文を一本ずつ紹介していこうと思います。 RecSysとは ACM(Association for Computing Machinery)が主催する レコメンドシステムに関する主要な国際会議の1つです。 Recommender Systemsの頭文字の略称になります。 今年で18回目の開催になりました。 アカデミアより、企業から参加してい…
1ヶ月前
記事のアイキャッチ画像
Azure AI Searchでベクトル検索と日本語キーワードのフィルターを組み合わせる
CCCMKホールディングス TECH LABの Tech Blog
こんにちは。テックラボの高橋です。 今回はAzure AI Searchでベクトル検索とキーワードのフィルターの組み合わせを、日本語データに対して適用する方法を検証します。 テキスト クエリのフィルター - Azure AI Search | Microsoft Learn ドキュメントによると、 フィルターは、filterable という属性が付いているフィールドの英数字の内容に適用されます。 とのことです。 英語版ドキュメントだと以下となります。 Filters apply to alphanumeric content on fields that are attributed as f…
1ヶ月前
記事のアイキャッチ画像
様々な形式のドキュメントからテキスト情報を取得する"Docling"を使ってみる。
CCCMKホールディングス TECH LABの Tech Blog
こんにちは、CCCMKホールディングス TECH LABの三浦です。 先日チームのメンバーに教えてもらい、試してみたいな・・・と思っていたライブラリを今回試すことが出来ました。"Docling"というライブラリで、PDFなどのファイルから、内容をマークダウンかjsonのテキストデータで抽出することが出来るライブラリです。RAGでの活用が期待できます。 試しに使ってみたところ、日本語のファイルでもかなり良い感じにテキストデータが取得出来ており、すごいなぁとビックリしました。 DoclingはarXivにテクニカルレポートがあり、そちらを読むことでどういったパイプラインで処理を行っているのかを理解…
1ヶ月前
記事のアイキャッチ画像
Chatアプリケーションが開発出来る"Chainlit"をPostgreSQLと接続して会話データの永続化を実現してみました。
CCCMKホールディングス TECH LABの Tech Blog
こんにちは、CCCMKホールディングスTECH LABの三浦です。 あっという間に11月も終わりですね!クリスマスまであと1か月なので、ブログのサムネイルもクリスマス仕様になりました! はじめに Chainlitのデータ永続化の仕組み 今回試した構成 プロジェクトの構成 docker-compose.yml PostgreSQLの設定 初期設定スクリプトの内容 Chainlitアプリの設定 requirements.txt app.env Chainlitアプリのログインユーザを追加する(add-initial-user.py) Chainlitアプリの定義(app.py) 起動スクリプト(s…
1ヶ月前
記事のアイキャッチ画像
DatabricksでOllamaを使ったLLMアプリの実験と検証をやってみました!
CCCMKホールディングス TECH LABの Tech Blog
こんにちは、CCCMKホールディングスTECH LABの三浦です。 だいぶ気温が下がって、空気が乾燥してきたように感じます。すぐに手がしもやけになってしまうので、外に出る時は手袋をするようにしないと・・・と思います。 はじめに 先日Databricksの年次のイベント"Data + AI World Tour 2024 Tokyo"に参加しました。他社様のLLMを使った取り組みを聞くことが出来て、とても刺激になりました。特にLLMの動作の検証は単に「いい感じの結果が生成された」という感覚的な評価でなく、定量的な評価もしている、という他社様の取り組みを聞き、自身の今のLLMへの取り組み方を見直さ…
1ヶ月前
記事のアイキャッチ画像
LangGraphでMap-reduce型のテキスト参照処理を作ってみました。
CCCMKホールディングス TECH LABの Tech Blog
はじめに 参照するドキュメント Graphの構造 実装 ライブラリのインストール GraphのState ルーティング機能の実装 Nodeの実装 並列処理の実行部分 Graphの構築 実行する 課題 まとめ こんにちは、CCCMKホールディングスTECH LABの三浦です。 最近寒いですね。朝吐く息が白くなったのを見て、寒くなったなぁと感じました。 はじめに LLMアプリケーションの開発をグラフ構造を組み立てて進めることが出来るLangGraphというライブラリがあります。最近ドキュメントを読んでいたところ、「これ、使ってみたい!」という機能がありました。Sendというクラスで、これを使うこと…
2ヶ月前
記事のアイキャッチ画像
人格設定されたLLMはどんな文章を生成する?論文を読んでまとめてみました。
CCCMKホールディングス TECH LABの Tech Blog
Big Five personality traits LIWC-22 論文における問題設定 実験の設定 LLM personaの構築 ストーリーライティング 評価のステップ BFIテスト LIWC-22による分析 ストーリーの評価 ストーリーからの人格特性の推計 結果 RQ1: LLM personaがBFIテストで自身に設定された人格通りの結果を出すことが出来るのか。 RQ2: LLM personaが書くストーリーの中にどんな言語パターンを見出せるか。 RQ3: 人とLLMの評価者はLLM personaの書いたストーリーをどう評価するのか。 RQ4: LLM personaの書いたスト…
2ヶ月前
記事のアイキャッチ画像
Azure DatabricksでRAG AgentのModel Servingへのデプロイ・モニタリングまでを実装してみる!
CCCMKホールディングス TECH LABの Tech Blog
テストからPoCへ RAG Agentの概要 PlaygroundからExportする Vector Indexにクエリ実行するFunctionが動かない・・・ agent Notebookの変更箇所 追加パッケージのインストール configの記述と出力 LLMとToolの定義 driverの変更箇所 追加パッケージのインストール Agentのロギングの見直し Evaluate Dataの変更 Agent(モデル)を登録する先の指定 Review Appを使う APIで利用する Agentのモニタリングダッシュボードを起動する ダッシュボード起動Notebookの取得 Notebookの変更…
2ヶ月前
記事のアイキャッチ画像
Azure DatabricksのVector Searchを使ってRAG Agentを構築してみる。
CCCMKホールディングス TECH LABの Tech Blog
DatabricksのModel Servingが楽しい・・・ Vector Search Vector Searchを使ってベクトルデータベースを構築 ブログ⇒テキスト抽出⇒Delta Tableへの格納 Delta Table⇒テキスト分割(chunking)⇒Delta Tableへの格納 埋め込みモデルのModel Serving Endpointの作成 Delta Table⇒埋め込み⇒Vector Index LLMからVector Indexへのクエリを実行出来るようにする PlaygroundでLLMからVector Indexにクエリ実行をさせる まとめ こんにちは、CCCM…
2ヶ月前
記事のアイキャッチ画像
さくらのクラウド検定を受検しました
CCCMKホールディングス TECH LABの Tech Blog
こんにちは。AIエンジニアリンググループの矢澤です。 例年より暑い日々が続いていましたが、夕方や夜はだんだん涼しくなり秋を感じるようになってきました。 秋の代表的な花であるコスモスを秋桜と書くようになったのは、日本の有名な歌謡曲が元になっているらしく、日本人にとって桜は昔から特別なものだったのだなと思いました。 最近クラウドが普及したことで、ソフトウェア開発の流れが大きく変わったと実感しています。 特に、オンプレ時代に苦労していたようなインフラの構築や保守に時間をかける機会が少なくなり、OSイメージが搭載済みのサーバーや様々な用途に合ったDBなどを簡単に利用できるようになりました。 またアプリ…
2ヶ月前
記事のアイキャッチ画像
GraphRAGで生成したKnowledge-GraphをNetworkXとPlotlyで描画しました!
CCCMKホールディングス TECH LABの Tech Blog
はじめに 今回作ったグラフ 描画に使うデータ 作業の流れ 実際のコード ライブラリのインストール NetworkXによるNodeの配置 EdgeとTextの描画設定 Nodeの描画設定 Graphの描画 まとめ こんにちは、CCCMKホールディングス TECH LAB三浦です。 秋の晴れの日は本当に気持ちがいいですね!特に用もないのにふらっと外を歩きたくなります。 はじめに さて前回の記事ではMicrosoft Researchの"GraphRAG"というPythonのライブラリをご紹介しました。GraphRAGを使うと、LLMを利用してテキストデータからテキスト内に登場するEntity(物事…
3ヶ月前
記事のアイキャッチ画像
GPT Builderで英語学習アプリを作ってみました
CCCMKホールディングス TECH LABの Tech Blog
こんにちは。テックラボの矢澤です。 最近は英語を話す機会があまり無く、たまに外国人の方に路上で道を聞かれたりした際、簡単な内容でもとっさに出てこなくて困ることがあります。 英語の文法や難解な技術用語などを覚えることも大切ですが、基本的な単語をすぐに答えられるようにしておくと、日常会話がスムーズに行えるのではないかと思いました。 英単語の中でも、名詞や動詞は義務教育や書籍・論文などで目にする機会が多いため比較的覚えやすいですが、形容詞や副詞は使わなくても会話が成り立つことも多く、意識しないとなかなか学べないと感じています。 そこで今回は、英語の形容詞を重点的に学習するための簡易アプリを、ノーコー…
3ヶ月前
記事のアイキャッチ画像
GraphRAGを使ったKnowledge-Graphの構築にチャレンジ!
CCCMKホールディングス TECH LABの Tech Blog
はじめに GraphRAG GraphRAGのKnowledge Graph構築フロー Phase1. Documentの分割 Phase2. Graph情報の生成 Phase3. Graph情報の強化 Community Graph Embedding Phase4. Community情報の要約 Phase5. Documentの処理 Phase6. Graphの可視化 Knowledge Graphに対するクエリフロー Local Search Global Search やってみる セットアップ .envファイルの設定 setting.yamlの設定 Knowledge-Graphの構…
3ヶ月前
記事のアイキャッチ画像
Databricksの"Foundation Model API"と"AI Functions"が面白かったのでまとめてみます!
CCCMKホールディングス TECH LABの Tech Blog
はじめに Foundation Model API 提供されたLLMの利用 それ以外のLLMを使いたい場合 AI Functions Foundation Model APIを利用するAI Functions Model Servingで提供されるLLMを利用したAI Functions まとめ こんにちは、CCCMKホールディングスTECH LABの三浦です。 10月1日です。この日はちょうどこの会社に入社した日なので、毎年「これで〇年働いたのかー」と考えるのですが、今年はちょうど10年なので、例年よりも少し感慨深い気持ちになりました。 はじめに さて、機械学習やデータエンジニアリングでよく…
3ヶ月前
記事のアイキャッチ画像
統計学を再考する: 気づいたことを共有します
CCCMKホールディングス TECH LABの Tech Blog
統計学の本を久しぶりに読みました 統計学 推測統計学 記述統計学 ベイズ統計学 推測統計学の理解 用語 写像の重要性 推定量の例 まとめ 参考文献 統計学の本を久しぶりに読みました CCCMKHDテックラボの佐藤です。 最近、統計学の本を読んだので、気づいた点を簡単にご紹介します。 統計学 統計学は、データを分析し、理解するための学問で、いくつかの分類方法があります。 その中でも主要なものとして、以下の3つの分け方があります。 推測統計学 記述統計学 ベイズ統計学 推測統計学 推測統計学は、母集団の特性を理解するために一部のデータ(標本)を基に推測を行う方法です。 標本から得られた情報を使い、…
3ヶ月前
記事のアイキャッチ画像
DeepCTRのESMMを使ってみました
CCCMKホールディングス TECH LABの Tech Blog
こんにちは。データサイエンスグループの木下です。 弊社では、デジタル広告の運用を行っておりますが、基本的に配信数に比例して金額がかかってくるため、 なるべくコンバージョンしてくれそうな人に配信する必要があります。 そこで、CTR予測に特化したDNNモデルを実装したpythonライブラリ​であるDeepCTRの中から、 ESMMというモデルを使ってみました。 ESMMの特徴 まず、ESMMについて説明します。 ESMMとはEntire Space Multi-Task Modelの略です。 デジタル広告のCVR予測タスクにおける、​ インプレッション→クリック→コンバージョン​ という時系列を意…
3ヶ月前
記事のアイキャッチ画像
DatabricksでMLflow Tracingを使ってLLM Agentの内部処理を確認してみました。
CCCMKホールディングス TECH LABの Tech Blog
こんにちは、CCCMKホールディングス TECH LABの三浦です。 なんだか急に気温が下がり、秋めいてきました。秋は美味しいものが多く、外を歩くのも気持ちがいいので一年で一番好きな時期です。 LLM AgentはLarge Language Model(LLM)にWeb APIやデータベース検索機能をツールとして与え、ユーザーの入力に対してそれを解くための計画を作らせ、必要なツールを実行し、その結果を使って回答を生成させる手法です。LLMを有効に活用する方法として、LLM自体の性能向上と並行して注目しています。 LLM Agentはユーザー目線で見れば入力した質問に対して回答が返ってくるだけ…
3ヶ月前
記事のアイキャッチ画像
VOICEVOXとAzure OpenAIで、ずんだもんボットを作ってみました
CCCMKホールディングス TECH LABの Tech Blog
こんにちは。AIエンジニアリンググループの矢澤です。 先日、実家の近所でかき氷を食べました。 お店でちゃんとしたかき氷を食べたのはおそらく初めてで、屋台で食べるかき氷も美味しいですが、食感などが全然違って新鮮な経験でした。 かき氷だけでなく、大人になった今だからこそ、日本の伝統的な和菓子や料理を改めて食べてみたいと思いました。 業務では、最近チャットボットなどLLM関連のサービスを開発することが多いですが、AIの回答をテキスト表示するだけでなく音声で再生できるとユーザー体験が向上するのではと考えています。 特に最近はキャラクター音声の品質が高く、音声合成技術を活用することで長い文章であっても流…
3ヶ月前
記事のアイキャッチ画像
LLMアプリケーション開発フレームワーク"Haystack"を試してみる。
CCCMKホールディングス TECH LABの Tech Blog
こんにちは、CCCMKホールディングスTECH LABの三浦です。 最近は手書きのメッセージを送ることが少なくなりましたが、1年に2回、今でも手書きのメッセージを書くのが年末年始の年賀状と敬老の日です。先日久しぶりに手紙を書いたのですが、「頭で書きたい」と思った文章を書くのに、手が追い付いてくれないなんだかふわふわした感覚を味わいました。自分にとってキーボードを使って文章を書くことの方が自然なことになってしまったんだな、とちょっとびっくりした気持ちになりました。 さて、今回は大規模言語モデル(LLM)を組み込んだアプリケーション開発用のフレームワークの1つである"Haystack"について調べ…
4ヶ月前
記事のアイキャッチ画像
LLMが物事を判断する時どのように事前知識を利用しているのかを可視化する手法に関する論文を読みました。
CCCMKホールディングス TECH LABの Tech Blog
こんにちは、CCCMKホールディングスTECH LABの三浦です。 この前初めて訪れた街を朝早起きしてジョギングしたのですが、普段見られない景色や雰囲気を感じられてとても楽しかったです。いつか色々なところを旅して朝走ることを趣味に出来たらいいな、と思いました。 Large Language Model(LLM)を使っていると、"どうしてこういう回答が返ってくるんだろう?"と時々不思議に感じることがあります。現在のLLMのモデル構造として主に採用されているTransformerでは何層にも積み重ねられた層を通過しながら、入力テキストが変換されていき、LLMの事前知識が反映されたテキストが生成され…
4ヶ月前
記事のアイキャッチ画像
Deep Learningモデルの学習で"Out-Of-Memory"が出てしまう理由をDeepSpeedの論文を読んで調べてみました。
CCCMKホールディングス TECH LABの Tech Blog
こんにちは、CCCMKホールディングス TECH LABの三浦です。 9月になりました。夏から秋に変わる時期で気候もコロコロ変わるので、体調管理をちゃんとしないと・・・と思います。 さて、LLMに限らずDeep LearningモデルをGPUを使って学習していると、「なんでこんなにGPUメモリを消費しているんだろう・・・?」と不思議に思うことがあります。特にモデルそのもののファイルサイズ上は十分にGPUメモリに読み込めるはずなのに、学習を始めるとGPUメモリの容量オーバー時に発生する"Out-Of-Memory"エラーが出てしまったりします。この理由について、最近調べていた分散学習に関する論文…
4ヶ月前
記事のアイキャッチ画像
Agentに関する論文"A Survey on Large Language Model based Autonomous Agents"を読んでAgentシステムの構成についてまとめてみました。
CCCMKホールディングス TECH LABの Tech Blog
こんにちは、CCCMKホールディングス TECH LAB三浦です。 8月ももうすぐ終わりですね。日中はまだまだ暑いですが、夜に洗濯物を取り込んでいたら虫の鳴き声が聞こえてきて、夏の終わりだなぁとしみじみとしてしまいました。 "Autonomous Agent(自律型エージェント)"はLLMの応用事例として研究が進められているテーマだと思います。さらにArtificial General Intelligence(AGI: 汎用人工知能)到達への一歩としても捉えられている印象があります。 現在様々な"Agent"に関するテクニックが存在しているのですが、"Agentってなに?"と聞かれると私の中…
4ヶ月前
記事のアイキャッチ画像
OllamaとLangGraphでローカルLLMによるAgentを作って動かしてみました。
CCCMKホールディングス TECH LABの Tech Blog
こんにちは、CCCMKホールディングス TECH LABの三浦です。 相変わらず厳しい暑さが続いていますが、朝夕は少しだけ涼しくなってきたように感じます。日中の気温もはやく落ち着くといいなぁと心待ちにしています。 さて、最近はオープンソースのLLMの活用に興味があり、いろいろ試しています。オープンソースのLLMを試すことができる環境は、たとえばOllamaというツールを使うと比較的容易に構築することができます。 techblog.cccmkhd.co.jp Ollamaはバックエンドでllama.cppというツールが動いていて、llama.cppを使うとそれほど多くないコンピュータリソース上で…
4ヶ月前