Semantic Scholar Lookup について
`asta`コマンドラインからSemantic Scholar APIを使う、対象を絞った文献検索スキルです。研究者が論文や著者の情報、全文スニペット、引用関係を調べるのに役立ち、包括的な文献レポートの作成は対象外です。
主な機能
- 01論文メタデータの取得
- 02キーワードと日付による論文検索
- 03全文スニペットの検索
- 04引用論文の確認
- 05著者とその論文の検索
活用シーン
- 01論文メタデータの確認
- 02論文本文から根拠を検索
- 03論文の引用関係の追跡
- 04著者の出版物の一覧化
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ allenai/ asta-plugins --skill semantic-scholar-lookupインストール後、Claude Code で/semantic-scholar-lookupを入力して読み込まれたか確認します。
詳細
Semantic Scholar Lookup
`asta papers` コマンドを使用して、Semantic Scholar API から論文のメタデータ、引用、著者情報を素早く的確に検索します。
このスキルを使用する場面
- ユーザーが特定の論文について(タイトル、DOI、arXiv ID などで)詳細を尋ねている
- ユーザーが特定の論文を引用している論文を確認したい
- ユーザーが著者の論文について尋ねている
- ユーザーが手早くキーワード検索したい(包括的なレポートではない)
- ユーザーが論文の全文から特定の主張、手法、根拠を見つけたい(
snippet-searchを使用) - タスクで、対象を絞った論文メタデータや引用グラフが必要
包括的なレポートには使用しないでください。その場合は Literature Report Generation スキルを使用してください。
インストール
このスキルには asta CLI が必要です。
# Install/reinstall at the correct version
PLUGIN_VERSION=0.16.0
if [ "$(asta --version 2>/dev/null | grep -oE '[0-9]+\.[0-9]+\.[0-9]+')" != "$PLUGIN_VERSION" ]; then
uv tool install --force git+https://github.com/allenai/asta-plugins.git@v$PLUGIN_VERSION
fi
前提条件: Python 3.11 以降、および uv package manager
使用できるコマンド
論文の詳細を取得
asta papers get - ID を指定して単一の論文のメタデータを取得します
asta papers get ARXIV:2005.14165
asta papers get "DOI:10.18653/v1/N18-3011" --fields title,year,authors,abstract
asta papers get CorpusId:215416146 --format text
対応する ID 形式:
ARXIV:2106.15928DOI:10.18653/v1/N18-3011CorpusId:215416146PMID:19872477URL:https://arxiv.org/abs/2106.15928
一般的なフィールド:title,abstract,authors,year,venue,citationCount,publicationDate,url,isOpenAccess,fieldsOfStudy
論文を検索
asta papers search - キーワードに基づいて論文を検索します
asta papers search "transformers attention mechanism"
asta papers search "RLHF" --date 2023- --limit 10
asta papers search "neural networks" --fields title,year,abstract,authors
asta papers search "LLM safety" --date 2024-01-01:2024-12-31
オプション:
--fields:返すフィールドをカンマ区切りで指定します--limit:結果数(デフォルトは 20、最大 100)--date:出版日または年で絞り込みます。年(2020、2020-2024、2020-)または日付範囲(2024-01-01:2024-12-31)を指定できます。S2 のpublicationDateOrYearパラメーターに対応します。--format:出力形式をjsonまたはtextに指定します
スニペット検索
asta papers snippet-search - S2 の snippet/search API を介して、論文の全文(タイトル、要旨、本文)を検索します。一致するテキストの抜粋と論文のメタデータを返します。
asta papers snippet-search "in-context learning emerges at scale"
asta papers snippet-search "RLHF reward hacking" --date 2023- --limit 10
asta papers snippet-search "sparse mixture of experts" --fields snippet.text,snippet.snippetKind,snippet.section
# Pin results to papers indexed before a date (useful for reproducible benchmarks)
asta papers snippet-search "chain-of-thought" --inserted-before 2024-01-01
--fields オプションでは、スニペットのフィールドを指定できます。
snippet.text- 一致したテキストの抜粋(約 500 語)snippet.snippetKind- ソースの種類(例:タイトル、要旨、本文)snippet.section- スニペットの出典となった論文のセクションsnippet.snippetOffset- 文字位置データ(start、end)snippet.annotations- 参照への言及や文の境界を含むマークアップ
--fields を省略すると、デフォルトは snippet.text,snippet.snippetKind です。論文のメタデータ(corpusId、タイトル、著者、openAccessInfo)と関連度スコアは、--fields の指定にかかわらず常に返されます。
オプション:
--fields:返すスニペットのフィールドをカンマ区切りで指定します--date:日付または年で絞り込みます。通常の検索と同じです--limit:最大結果数(デフォルトは 20、最大 1000。通常の検索より上限が高く設定されています)--inserted-before:指定した日付(YYYY-MM-DD、YYYY-MM、またはYYYY)より前にインデックスされた論文のみを含めます。ベンチマークの一貫性を保つために通常使用します。カットオフ日を固定すると、新しい論文が継続的にインデックスされても、実行を繰り返すたびに同じ論文セットが返されます。--format:出力形式をjsonまたはtextに指定します
引用を取得
asta papers citations - 指定した論文を引用している論文を取得します
asta papers citations ARXIV:2005.14165
asta papers citations CorpusId:218487638 --limit 20 --format text
オプション:
--fields:引用している論文のフィールド--limit:最大結果数(デフォルトは 50、最大 1000)--format:出力形式をjsonまたはtextに指定します
著者の検索と論文の取得
asta papers author search - 名前で著者を検索します
asta papers author search "Yoav Goldberg"
asta papers author search "Hinton" --limit 5 --format text
asta papers author papers - 著者の論文を取得します
# First, get author ID from search
asta papers author search "Yoav Goldberg"
# Then get their papers using the author ID
asta papers author papers 1741101 --limit 50
asta papers author papers 1741101 --fields title,year,venue,citationCount
オプション:
--fields:論文について返すフィールド--limit:最大結果数(デフォルトは 50、最大 1000)--format:出力形式をjsonまたはtextに指定します
出力形式
すべてのコマンドで、次の 2 つの出力形式を使用できます。
JSON 形式(デフォルト):
- 機械可読
- 完全なデータ構造
jqにパイプして絞り込み可能- プログラムでの利用に最適
テキスト形式(--format text):
- 人間が読みやすい形式
- 書式設定済みの出力
- 手早く内容を確認するのに最適
- ユーザーに結果を表示する場合に使用
使用のヒント
効率的なフィールド選択
応答を速くするため、必要なフィールドのみをリクエストしてください。
# Good - minimal fields for quick browse
asta papers search "deep learning" --fields title,year,authors,citationCount
# Less efficient - many fields slow down response
asta papers search "deep learning" --fields title,abstract,authors,year,venue,citations,references
日付による絞り込み
必要に応じて、最近の論文に絞り込みます。
asta papers search "RLHF" --date 2023-2024 # 2023-2024
asta papers search "RLHF" --date 2023- # 2023 onwards
asta papers search "RLHF" --date -2020 # Before 2020
asta papers search "RLHF" --date 2024-06-01:2024-12-31 # Specific date range
jq へのパイプ
複雑な JSON 処理の場合:
# Extract just titles
asta papers search "transformers" | jq '.data[].title'
# Filter by citation count
asta papers search "neural networks" | jq '.data[] | select(.citationCount > 100)'
# Get author names
asta papers get ARXIV:2005.14165 | jq '.authors[].name'
複数ステップのワークフロー
複雑なクエリでは、コマンドを連結します:
例 1:ある著者の、最近の被引用数が多い論文を探す
# 1. Find author
asta papers author search "Geoffrey Hinton" --format text
# 2. Get their recent papers
asta papers author papers 1751273 --fields title,year,citationCount --limit 50 | \
jq '.data[].paper | select(.year >= 2020) | select(.citationCount > 100)'
例 2:引用ネットワークを調べる
# 1. Get paper details
asta papers get ARXIV:2005.14165
# 2. Get who cited it
asta papers citations ARXIV:2005.14165 --limit 20 --format text
# 3. Get details on specific citing papers
asta papers get CorpusId:123456789
ワークフローの例
「arXiv:2005.14165 の詳細を取得する」
asta papers get ARXIV:2005.14165 --format text
出力を読みやすい形式でユーザーに提示します。
「GPT-3 の論文を引用しているのはどの論文ですか?」
# GPT-3 paper
asta papers citations ARXIV:2005.14165 --limit 50 --format text
結果から最近の論文や被引用数の多い論文を表示します。
「RLHF に関する最近の論文」
asta papers search "RLHF reinforcement learning from human feedback" \
--date 2023- \
--limit 20 \
--fields title,abstract,year,authors,venue,citationCount \
--format text
「Yoav Goldberg の論文」
# Step 1: Find author
asta papers author search "Yoav Goldberg" --format text
# Step 2: Get their papers (using author ID from step 1)
asta papers author papers 1741101 \
--fields title,year,venue,citationCount \
--limit 50 \
--format text
「『chain-of-thought』推論の根拠を探す」
# Snippet search finds mentions in paper bodies, not just titles/abstracts
asta papers snippet-search "chain-of-thought reasoning improves performance" \
--limit 15
# Or use standard search for paper-level results
asta papers search "chain-of-thought reasoning" \
--fields title,abstract,year,authors \
--limit 15
# Then examine specific papers with 'asta papers get'
回答の提示
結果をユーザーに表示する際:
単一の論文の場合:
**Title** (Year)
Authors: [author list]
Venue: [venue name]
Citations: [count]
[Abstract]
URL: [Semantic Scholar link]
論文の一覧の場合:
Found [N] papers:
1. **Paper Title** - Author et al. (Year) - [Venue] - [X citations]
2. **Another Paper** - ...
...
スニペットの検索結果の場合(snippet-search):
Found [N] snippet results:
1. **Paper Title** - Author et al.
Score: 0.95
Snippet (abstract): "...matching text excerpt..."
2. **Another Paper** - ...
...
引用の場合:
Found [N] papers citing this work:
Recent citations:
1. [Paper 1] (2024) - [citations]
2. [Paper 2] (2023) - [citations]
...
ベストプラクティス
- 結果をユーザーに直接表示する場合は、
--format textを使用します - 結果を処理またはフィルタリングする必要がある場合は、JSON 出力を使用します
- 小さな件数から始め、必要に応じて増やします
- 実際に使用するフィールドのみを取得します
- 論文本文から特定の主張、手法、根拠を検索する場合は、
snippet-searchを使用します - トピックレベルで論文を探す場合は、
searchを使用します - 包括的な調査では、代わりに Literature Report Generation スキルを提案します
- 必要に応じて Semantic Scholar の URL を提示します(
https://semanticscholar.org/paper/{paperId})
API キー
コマンドは、利用可能な場合、ASTA_TOOL_KEY 環境変数を使用します。ほとんどのクエリはキーなしで実行できますが、キーがあるとレート制限が緩和されます。