Explore Patents and Literature Semantically with Sciverse
PatentRetrievalAgentIntermediate

Explore Patents and Literature Semantically with Sciverse

Use semantic retrieval across patents and academic literature to discover technical connections

Scenario
R&D teams need to understand how a technology appears across patents and academic papers, and discover overlaps or gaps between the two sources.
Estimated calls
~10-20 API calls
Tools
agentic-searchcontent
Pipeline
agentic-search(专利关键词)→ agentic-search(学术关键词)→ content(验证)→ 对比分析

Input example

Research topic:
"solid-state electrolyte interface stabilization for lithium metal batteries"
Need: compare academic literature and patent coverage.

Output example

Cross-source summary:
- Academic papers emphasize mechanisms and experimental characterization.
- Patents emphasize formulations, manufacturing processes, and application claims.
- Shared themes: interface coatings, sulfide electrolytes, polymer composites.

Agent Prompt example

You are a technology intelligence assistant. Use Sciverse semantic search to collect academic and patent-related evidence, then compare topics, claims, and source types.

Implementation steps

Step 1: Set up the environment

Configure token and HTTP client

!pip install httpx anthropic
import os
os.environ["SCIVERSE_API_TOKEN"] = "sv-your-token-here"  # 替换为你的真实值
import os
os.environ["ANTHROPIC_API_KEY"] = "sk-ant-..."  # 替换为你的真实值

Step 2: Retrieve patents and academic papers semantically

Search the topic from multiple phrasings to collect diverse evidence

import os
import asyncio
import httpx

BASE = "https://api.sciverse.space"
TOKEN = os.environ["SCIVERSE_API_TOKEN"]
HEADERS = {"Authorization": f"Bearer {TOKEN}"}

async def search(query: str, top_k: int = 15):
    async with httpx.AsyncClient(timeout=30) as client:
        resp = await client.post(
            f"{BASE}/agentic-search",
            headers=HEADERS,
            json={"query": query, "top_k": top_k}
        )
        resp.raise_for_status()
        return (resp.json().get("hits") or [])

async def main():
    # 检索专利相关内容
    patent_hits = await search("CRISPR base editing patent method composition")
    print(f"Patent-related: {len(patent_hits)} chunks")

    # 检索学术文献
    academic_hits = await search("CRISPR base editing adenine cytosine mechanism")
    print(f"Academic-related: {len(academic_hits)} chunks")

    return patent_hits, academic_hits

patent_hits, academic_hits = await main()

Step 3: Cross-analyze and generate a report

Group results by source type, theme, and claim focus

from anthropic import Anthropic

client = Anthropic()

patent_summary = "\
".join([
    f"- [{h['doc_id']}] (score: {h['score']:.2f}) {h['title']}: {h.get('chunk', '')[:80]}..."
    for h in patent_hits[:8]
])
academic_summary = "\
".join([
    f"- [{h['doc_id']}] (score: {h['score']:.2f}) {h['title']}: {h.get('chunk', '')[:80]}..."
    for h in academic_hits[:8]
])

msg = client.messages.create(
    model="claude-sonnet-4-20250514",
    max_tokens=4096,
    messages=[{
        "role": "user",
        "content": f"""分析以下两组检索结果的技术关联:

## 专利相关片段
{patent_summary}

## 学术文献片段
{academic_summary}

请输出:
1) 两组结果中的技术主题对比
2) 可能的专利-论文关联(基于内容相似性)
3) 技术发展脉络推测

注意:所有结论必须基于上述检索结果,标注 doc_id。"""
    }]
)
print(msg.content[0].text)

Notes

  • Use multiple query phrasings to improve recall.
  • Do not treat patent claims and academic findings as equivalent evidence.
  • Keep source type and metadata in the final report.
  • Use structured filters when you need a strict year or venue range.

FAQ

适合什么任务?

适合 prior art、技术调研、专利与论文交叉验证。

输出时要注意什么?

应区分论文证据和专利证据,不要混成同一种来源。

为什么要交叉检索?

同一技术可能先出现在论文、专利或产品材料中,交叉检索能提高覆盖率。

如何组织结果?

建议按技术主题、论文证据、专利证据和风险判断分组输出。

Next steps

Need an API key?

Create one in Console > Tokens.The same API key works for enabled Sciverse, DianShi, and Skills capabilities, with starter quota available according to account permissions.

Open console