feat: Enhance patent search and update research documentation

- Improve patent search service with expanded functionality
- Update PatentSearchPanel UI component
- Add new research_report.md
- Update experimental protocol, literature review, paper outline, and theoretical framework

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
2026-01-19 15:52:33 +08:00
parent ec48709755
commit 26a56a2a07
13 changed files with 1446 additions and 537 deletions

View File

@@ -1,4 +1,4 @@
"""Patent Search Router - Search for similar patents"""
"""Patent Search Router - Search for similar patents using Lens.org API"""
import logging
from typing import Optional, List
@@ -21,16 +21,20 @@ class PatentSearchRequest(BaseModel):
class PatentResult(BaseModel):
"""Single patent result"""
publication_number: str
"""Single patent result from Lens.org"""
lens_id: str
doc_number: str
jurisdiction: str
kind: str
title: str
snippet: str
publication_date: Optional[str] = None
assignee: Optional[str] = None
inventor: Optional[str] = None
status: str # ACTIVE, NOT_ACTIVE, UNKNOWN
pdf_url: Optional[str] = None
thumbnail_url: Optional[str] = None
abstract: Optional[str] = None
date_published: Optional[str] = None
applicants: List[str] = []
inventors: List[str] = []
legal_status: Optional[str] = None
classifications_cpc: List[str] = []
families_simple: List[str] = []
url: str
class PatentSearchResponse(BaseModel):
@@ -68,7 +72,7 @@ async def search_patents(request: PatentSearchRequest):
"""
Search for patents similar to the given description/query.
Uses Google Patents to find related patents based on keywords.
Uses Lens.org API to find related patents based on title, abstract, and claims.
"""
logger.info(f"Patent search request: {request.query[:100]}...")