知识产权分析¶
项目背景与目标¶
知识产权(专利、商标、著作权)是企业核心资产,IP 检索与分析对研发立项、侵权风险排查、并购尽调至关重要。传统 IP 检索依赖专业代理人,成本高且效率受限;海量专利数据下人工分析难以覆盖。智能 IP 分析 Agent 通过语义检索、相似度计算、侵权风险识别,为研发与法务提供自动化 IP 分析能力。
本项目目标是构建一个知识产权分析 Agent,支持专利与商标的检索、相似度分析、侵权风险评估、布局建议。
需求分析¶
核心能力: 1. 专利检索:语义检索 + 关键词检索 + 分类号检索 2. 相似度分析:专利/商标相似度计算与排序 3. 侵权风险识别:对比目标技术与已有专利权利要求 4. 商标近似检索:文字/图形商标近似判断 5. 布局建议:专利空白点识别与布局建议 6. 分析报告:技术全景、竞争对手、风险地图
用户场景:研发立项前查新、产品上市前 FTO(自由实施)分析、竞争对手监控、商标注册前排查。
技术选型说明¶
| 模块 | 技术方案 | 选型理由 |
|---|---|---|
| Agent 框架 | LangGraph | 多步骤分析流程 |
| 专利数据 | 专利局 Open API + 商业库 | 权威数据源 |
| 检索 | 语义 + 关键词 + IPC 分类 | 多维检索 |
| 相似度 | Sentence-BERT + 权利要求解析 | 语义相似度 |
| LLM | Qwen-Max | 技术理解与报告 |
| 图像识别 | ResNet + Siamese 网络 | 商标图形相似 |
| 后端 | FastAPI + Elasticsearch | 高并发检索 |
| 数据库 | PostgreSQL + Milvus | 结构化 + 向量 |
架构设计¶
flowchart TD
Q[查询请求] --> AGENT[IP 分析 Agent]
AGENT --> SEARCH[多维检索]
SEARCH --> VEC[(专利向量库)]
SEARCH --> ES[(Elasticsearch)]
SEARCH --> IPC[(IPC 分类)]
SEARCH --> RESULT[候选集]
RESULT --> SIM[相似度计算]
SIM --> SBERT[Sentence-BERT]
SIM --> CLAIM[权利要求解析]
AGENT --> RISK[侵权风险]
RISK --> COMP[权利要求对比]
AGENT --> LAY[布局分析]
LAY --> MAP[技术地图]
AGENT --> REP[分析报告]
REP --> LLM[LLM 生成]
关键模块实现思路¶
模块1:多维专利检索¶
检索融合三种方式: - 语义检索:将查询描述向量化,在专利向量库中召回语义相似的专利,适合用自然语言描述技术方案 - 关键词检索:Elasticsearch 全文检索,精确匹配术语 - 分类检索:按 IPC/CPC 分类号过滤,限定技术领域
def search_patent(query, filters):
vec_results = vector_search(query, top_k=100)
kw_results = es_search(query, filters, top_k=100)
ipc_results = ipc_filter(filters.ipc, vec_results + kw_results)
merged = hybrid_rank(vec_results, kw_results)
return merged[:50]
混合排序综合语义相似度、关键词匹配度、时间相关性,提升召回质量。
模块2:专利相似度计算¶
专利相似度分层面计算: - 摘要/说明书相似度:Sentence-BERT 编码文本,计算余弦相似度 - 权利要求相似度:解析权利要求树(独立权利要求 + 从属),逐项对比 - 技术特征对比:LLM 抽取技术特征(手段-功能-效果),结构化对比
def patent_similarity(patent_a, patent_b):
abstract_sim = cosine(sbert_encode(patent_a.abstract), sbert_encode(patent_b.abstract))
claim_sim = compare_claims(patent_a.claims, patent_b.claims)
feature_sim = llm_feature_compare(patent_a, patent_b)
return 0.3 * abstract_sim + 0.5 * claim_sim + 0.2 * feature_sim
模块3:侵权风险识别(FTO 分析)¶
FTO 分析判断目标产品是否落入在先专利保护范围。核心是权利要求对比:将目标产品的技术特征与在先专利的独立权利要求逐项对比,适用"全面覆盖原则"——目标包含权利要求所有技术特征则可能侵权。
def fto_analysis(product_features, patent_claims):
risks = []
for claim in patent_claims:
if claim.type == "independent":
coverage = check_full_coverage(product_features, claim.features)
if coverage:
risks.append({"patent": patent.id, "claim": claim.id,
"risk": "high", "reason": "全面覆盖权利要求"})
return risks
LLM 辅助技术特征抽取与等同侵权判断(手段-功能-效果三要素),但最终结论须 IP 律师确认。
模块4:商标近似检索¶
商标近似分文字与图形: - 文字商标:字形、读音、含义三维近似。字形用编辑距离,读音用拼音相似度,含义用同义词典 - 图形商标:用 Siamese 网络提取图像特征,计算相似度
def trademark_similarity(tm_a, tm_b):
if tm_a.type == "文字":
visual = edit_distance(tm_a.text, tm_b.text) / max_len
phonetic = pinyin_similarity(tm_a.text, tm_b.text)
meaning = synonym_similarity(tm_a.text, tm_b.text)
return 0.4 * (1-visual) + 0.3 * phonetic + 0.3 * meaning
else:
return siamese_image_sim(tm_a.image, tm_b.image)
近似商标按《商标审查指南》标准判断,避免误判影响注册决策。
模块5:技术布局分析¶
基于专利地图识别技术空白点:按技术维度聚类专利,统计各技术领域专利密度,密度低的区域为潜在布局机会。结合竞争对手专利分布,分析其布局策略与威胁。
核心流程详解¶
FTO 分析流程: 1. 输入目标产品技术描述 → LLM 抽取技术特征 2. 检索相关在先专利(语义 + 关键词) 3. 权利要求解析 → 逐项对比技术特征 4. 风险分级:全面覆盖(高)、部分覆盖(中)、不覆盖(低) 5. 生成 FTO 报告:风险专利清单 + 规避建议 6. 律师确认 → 输出正式意见
商标排查流程: 1. 输入待注册商标 → 文字/图形识别 2. 近似检索:相同或近似商标召回 3. 类别过滤:按尼斯分类限定商品/服务类别 4. 风险评估:近似度高 → 注册风险高 5. 输出排查报告:近似商标清单 + 注册建议
部署与优化建议¶
- 数据更新:专利局数据每日同步,新公开专利及时入库
- 多语言:支持中英文专利检索,跨语言语义匹配
- 模型微调:用专利领域语料微调 Sentence-BERT,提升相似度准确性
- 专业确认:分析结论须 IP 专业人员复核,Agent 辅助而非替代
- 可视化:专利地图、权利要求树、技术演进图可视化呈现
常见问题与解决方案¶
| 问题 | 原因 | 解决方案 |
|---|---|---|
| 语义检索召回不准 | 专利术语特殊 | 领域语料微调 + 同义词扩展 |
| 权利要求解析错 | 句法复杂 | 专项解析模型 + LLM 兜底 |
| 图形商标相似度低 | 设计风格多样 | 增加训练样本 + 多特征融合 |
| 漏检关键专利 | 检索策略单一 | 多维检索 + 人工补充关键词 |
扩展方向¶
- 专利价值评估:引用数、同族数、技术生命周期
- 竞争对手监控:新增专利自动推送
- 专利运营:许可、转让机会识别
- 著作权分析:代码/作品相似度检测