AIの動きを記録したデータを活用
How to Use AgentTrove: Streaming 1.7M Agentic Traces and Building a Clean ShareGPT SFT Dataset in Python

AgentTroveという170万件のAI行動記録をストリーミングで解析し、AIが学ぶためのきれいなデータセットをPythonで効率的に作成する方法が公開されました。
このチュートリアルでは、エージェントの対話記録の最大級のオープンソースコレクションの1つであるAgentTroveを探求し、効率的に作業する方法を学びます。全データセットをダウンロードする代わりに、ストリーミングを使用して行を検査し、会話スキーマを検出し、エージェントの応答を正規化し、ユーザー、assistant、system、toolメッセージがどのように構造化されているかを理解します。また、コマンド形式のassistant出力を解析したり、完全な軌跡を読みやすい形式でレンダリングしたり、さまざまなタスクでエージェントがツールとどのように相互作用するかを研究するためのユーティリティも構築します。さらに、数千のtraceをサンプリングし、それらをDataFrameに変換し、ターンレベルの統計を要約し、重要なデータセットパターンを視覚化し、成功したtraceをsupervised fine-tuning用のクリーンなShareGPT-style JSONL形式でエクスポートする軽量な分析ワークフローも作成します。Copy Code Copied Use a different Browser !pip -q install "datasets>=2.19" pandas matplotlib pyarrow huggingface_hub import itertools, json, collections, textwrap, re, random, statistics import pandas as pd import matplotlib.pyplot as plt from datasets import load_dataset REPO = "open-thoughts/AgentTrove" random.seed(0) print(" Imports ready. Target dataset:", REPO) ds = load_dataset(REPO, split="train", streaming=True) print(" Streaming dataset opened.") first = next(iter(ds)) print("\n Columns present in a row:") for k in first.keys(): v = first[k] t = type(v).__name__ preview = (str(v)[:70] + "…") if v is not None and len(str(v)) > 70 else v print(f" • {k:<18} ({t}): {preview}")必要なライブラリをインストールし、ストリーミング、分析、視覚化に必要なコアツールをインポートします。AgentTroveリポジトリを定義し、データセットをストリーミングモードで開き、全データセットをローカルにダウンロードするのを避けます。次に、最初の行を検査して利用可能な列を理解し、データセットスキーマの初期ビューを取得します。Copy Code Copied Use a different Browser def find_trace_key(row): for cand in ("conversations", "messages"): if cand in row and