[P] citracer: 引用グラフ内で概念がどこから来たのかをたどる小さなCLIツール

Reddit r/MachineLearning / 2026/4/9

💬 オピニオンDeveloper Stack & InfrastructureTools & Practical Usage

要点

  • citracerのCLIツールは、研究PDF内のアイデアがどこから生まれたのかを追跡するのに役立ちます。GROBIDで参考文献を解析し、本文中のキーワード出現付近で引用されている文献を見つけ、さらに引用グラフを再帰的に拡張します。
  • arXivやOpenReview(利用可能な場合)から論文をダウンロードして取り込むこともでき、引用チェーンをインタラクティブなHTML可視化として出力します。
  • 「reverse」モードでは、Semantic Scholarの引用コンテキストを用いて、特定のキーワードと関連づけて対象の研究を引用している論文を特定します。PDFのダウンロードは行いません。
  • 著者は制限事項として、GROBIDの対応範囲(ML/CSではより強い)、Semantic Scholarの引用コンテキストのカバレッジが不完全であること、無料のSemantic Scholar APIキーがない場合はレート制限により実行が遅くなることを挙げています。
  • 本プロジェクトは、より広範な文献グラフツールに対する、狭く焦点を当てた代替として位置付けられており、バグ報告、パーサの修正、エッジケース対応、ドキュメント改善による貢献を呼びかけています。

みなさんこんにちは。自分の文献レビュー用に使っている小さなツールを作ったのですが、誰かの役に立つかもしれないと思って共有します。

研究用のPDFとキーワードを受け取り、GROBIDで参考文献を解析し、本文中でそのキーワードが出現する近くに引用されている文献を見つけ、arXiv または OpenReview にある場合はその論文をダウンロードして、生成されるグラフを再帰的に辿ります。出力はインタラクティブなHTMLの可視化です。

また、「reverse(逆方向)」モードもあり、Semantic Scholar の citation contexts エンドポイントを使って、ある特定のキーワードについて論じていることを明確に含む形で、指定した文献を引用している論文を見つけます(PDFはダウンロードしません)。

短いデモ(2分):https://youtu.be/0VxWgaKixSI

これを作ったのは、ふと見かけたあるアイデアを、どの論文が最初に提示したのかを突き止めるのに、Google Scholarをクリックし続ける時間があまりにも多かったからです。Connected Papers や Inspire HEP のようなツールの代わりではありません。これらは別の質問に答えます。こちらは「このPDFに書かれているXを言及している引用(citation)を見せて」という一点にかなり絞っています。

正直な注意点もいくつかあります:- パースにはGROBIDに依存しており、ML/CSの論文ではうまく動く一方で、他の分野では苦戦することがあります。- reverseモードはSemantic Scholarのカバレッジと citation contexts に全面的に依存しており、常に完全ではありません。- 無料のSemantic Scholar APIキーがないと、レート制限のため明らかに遅くなります。- 個人プロジェクトなので、荒い部分があることを想定してください。

このプロジェクトはまだ非常に若く、進化していくにつれてさらに役立つようになるはずだとかなり確信しています。もし貢献に興味がある方がいれば――不具合報告、想定外のケース(エッジケース)、パーサの修正、新機能、ドキュメント改善など、何でも――本当に歓迎します。PR(プルリクエスト)とissueは公開されています。

Repo:https://github.com/marcpinet/citracer PyPI:https://pypi.org/project/citracer/

興味のある論文で試してみた場合、生成されるチェーンが意味のあるものかどうかぜひ教えてください。

submitted by /u/Roux55
[link] [comments]