Ideator:用知识图谱让AI告诉你该做什么产品

Ideator用知识图谱加Gemma智能体,把竞品调研变成可追溯的五格建品简报。
Ideator是开发者Ronak Sarda在Hacktoberfest开源AI挑战赛提交的项目,目标是把创业想法验证从"翻二十个标签页得到竞品清单"转变为"可执行的建品决策"。系统并行检索Google、Google Play与Reddit,把结果清洗成结构化记录写入FalkorDB图数据库,每个会话拥有独立图谱。Gemma智能体通过MCP工具逐步查询图谱,用Cypher多跳查询定位"多个竞品用户抱怨、而你的想法尚未解决"的功能缺口,最终输出谁付费、解决什么痛、凭什么赢、定价与第一版范围组成的五格简报,每条结论都能点回原始来源。技术栈几乎全建立在开放权重组件之上,TabPFN负责定价与拥挤度评分,本地Ollama回退在托管端点故障时救了产品。作者复盘的核心教训是:流程约束写在代码层比写在提示词层可靠。
创业者验证一个想法,通常要开二十个浏览器标签页,翻遍应用商店和Reddit,最后得到一份竞品清单,却依然不知道第一版该做什么。聊天助手也解决不了问题——同一个问题问两次,得到的答案可能完全不同。
开发者Ronak Sarda在Hacktoberfest开源AI挑战赛第二周提交了一个名为Ideator的项目,试图把"竞品调研"变成"可执行的建品决策"。它的核心思路是:把搜索结果落成一张知识图谱,让Gemma智能体在图上推理,最终输出一份带来源的构建简报。

从竞品清单到五格决策简报
Ideator的用法很简单:用户用一句话输入想法,系统并行执行三路实时搜索——Google找竞品、Google Play找真实应用名称与定价、Reddit找用户抱怨。Gemma把原始结果清洗成结构化记录,写入FalkorDB图数据库。
每个会话拥有独立图谱,节点包括公司、价格、功能与抱怨(Grievance)。随后Gemma智能体通过MCP工具逐步查询图谱,最终每条回复都以一份五格构建简报收尾:
| 槽位 | 含义 |
|---|---|
| 谁付费 | 精确的付费人群 |
| 解决什么痛 | 你修复的那一条抱怨,带提出人数 |
| 凭什么赢 | 相对点名竞品的优势 |
| 定价 | 带理由的美元价格(来自TabPFN模型) |
| 第一版 | v1只交付2-3件事,其余不做 |
其中"痛点"和"定价"由证据自动填充,其余三项由用户决定,Ideator会逐个追问并附上基于证据的建议。几轮对话后,用户得到完整简报;行动方案标签页给出段落版计划和编号构建顺序,每条用户引述都可点击回到来源。
图谱推理:找到"未被回应的抱怨"
这个项目最有意思的技术设计,是把市场调研建模为图上的多跳查询。承担主要工作量的一条Cypher查询,寻找的是"多个竞品用户都在抱怨、而你的想法尚未解决"的功能点:
MATCH (u:UserIdea {id: $idea})-[:TARGETS]->(c:Competitor)
-[:DRAWS_COMPLAINT]->(g:Grievance)
-[:TARGETS_FEATURE]->(f:Feature)
WHERE NOT (u)-[:SOLVES]->(g)
RETURN f.name, count(DISTINCT g), collect(DISTINCT c.name)
ORDER BY count(DISTINCT g) DESC
当用户根据反馈迭代想法时,新版本会获得SOLVES边,同一条查询自然转向下一个未满足的需求。这种"用图结构记录决策及其证据"的做法,是Ideator区别于普通AI助手的关键:决策节点带有指向抱怨与功能的BECAUSE边,用户可以在可视化地图上点击决策,沿着边一路追溯到原始Reddit帖子。
智能体在执行时会逐步骤选择MCP工具:市场概览、多跳抱怨热点、功能PageRank、社区发现、证据路径,以及TabPFN价格预测。每一步都以自然语言流式呈现在界面上,图谱地图会同步高亮当前查询的区域。
Cypher是Neo4j为属性图数据库设计的声明式查询语言,FalkorDB兼容其语法子集。它的核心是MATCH模式匹配:用()-[]->()这样的ASCII图形描述节点与边的路径,数据库据此在图上做多跳遍历,而非像SQL那样靠JOIN拼表。文中那条查询里的NOT (u)-[:SOLVES]->(g)是反模式匹配,用来排除已被当前想法覆盖的抱怨,这正是"找缺口"这一语义在查询层的直接表达。Cypher还支持count(DISTINCT ...)聚合、collect()把多行折叠为列表、ORDER BY排序,因此一条查询就能同时完成"聚合抱怨热度"和"带回点名竞品"两件事。对智能体而言,这种语言的价值在于:一次工具调用即可返回结构化、可解释的多跳证据,而不需要模型自己去拼多次单跳查询。
开源模型栈如何撑起产品
Ideator几乎全部建立在开源或开放权重组件之上,这既是技术选择,也是产品韧性的来源。
**Gemma驱动的智能体循环。**项目先后使用gemma-4-26b-a4b-it和gemma-4-31b-it运行智能体循环并撰写报告。当托管端点失败时,短提示会回退到本地Ollama上的gemma2:2b;如果所有模型都无响应,报告则仅由搜索数据构建,并明确说明这一点。
**TabPFN做定价与拥挤度评分。**每次分析都会把竞品复制到共享的market_history图,predict_price工具在调用时现场训练一个TabPFN回归器——用得越多,价格估计越准。另一个工具把图计数输入TabPFN分类器,给市场拥挤程度打分。
**FalkorDB与MCP。**图谱数据库按会话隔离,PageRank和社区发现是数据库内置能力;MCP Python SDK把图查询封装为工具,智能体通过MCP客户端逐步挑选。
作者在文中坦言,开放权重直接救了产品一命:构建期间托管Gemma端点多次返回错误,正因为模型开源,才能回退到本地Gemma继续应答,而不是给用户看错误页。
TabPFN是一类基于Transformer的"表格基础模型",其思路与常规监督学习相反:它先在海量合成表格数据集上预训练,学到的是"给定一小批带标签样本,如何对新样本做贝叶斯式预测"这个学习算法本身。因此使用时不需要传统意义上的训练循环和超参调优,把训练集作为上下文喂进去,一次前向传播就能出预测,常被称为"上下文学习"或in-context learning for tables。它的适用边界也很明确:样本量通常在几千行以内、特征数在百级以内时表现最佳,恰好匹配Ideator这种"每次会话只积累几十上百条竞品记录"的场景。文中说"调用时现场训练",实质是每次把当前图的计数或价格样本当上下文重新推理,好处是新数据立刻生效、无需维护模型版本,代价是每次调用都有一次前向计算开销。
MCP(Model Context Protocol)是Anthropic提出并开源的协议,用于把外部工具与数据源以统一接口暴露给模型/智能体。它采用客户端-服务器结构:MCP服务器声明一组带JSON Schema的工具(名称、参数、描述),MCP客户端把这些工具描述注入模型上下文,模型再以结构化调用请求某个工具,由客户端执行并把结果回传。相比把工具硬编码进提示词或业务代码,MCP的好处是工具可独立部署、可复用、可替换,智能体能按需"发现"能力。Ideator的MCP Python SDK正是把Cypher查询、价格预测等能力逐个封装成工具,智能体每一轮自行挑选调用哪个,这也解释了文中"逐步骤选择工具"以及界面上逐步流式呈现的交互形态——每一步工具调用都是一次可观测的协议往返。
踩坑记录:提示词约束不如代码约束
项目复盘中最有价值的部分,是作者列出的几个具体失败与修正。
最典型的一条:作者在提示词里要求Gemma"回答前必须检查抱怨和价格",但模型有时会跳过步骤直接作答。最终这条规则被移入代码(tools.py中的REQUIRED),智能体在两项工具未运行前无法结束。这个细节说明,对当前模型而言,流程约束放在代码层比放在提示词层更可靠。
另一个问题是托管Gemma持续返回500错误,根因是JSON模式叠加最小思考设置,作者改为不再要求JSON模式、自行解析回答后解决。
还有一个颇具自省意味的发现:作者逐帧回看演示录像时,发现市场地图里把一条NFL讨论帖和一个电视节目列成了某日志工具的竞品——搜索结果从未做过相关性检查。修复方式是加入关键词校验,丢弃与想法无关的结果。
性能上,Ideator并非即时响应:一个新想法需要约一到两分半钟,因为实时搜索和智能体步骤都要真实耗时,后续追问会更快。
PageRank与社区发现是图分析中的两类经典算法,FalkorDB把它们作为数据库内置过程直接提供,无需把图导出到外部计算框架。PageRank最初用于网页排序,其直觉是"被重要节点指向的节点也重要",在Ideator的语境下,它可以给功能节点排序,衡量某个功能在整个竞品网络中的"枢纽程度"——被越多竞品和抱怨共同牵涉,越值得关注。社区发现(如Louvain一类算法)则把连接紧密的节点聚成簇,用来识别"同一批用户在抱怨的同一组功能",即潜在细分市场或产品品类。两者结合,能让智能体在回答"这个市场里有哪些功能集群、哪些是核心"时不必靠模型臆测,而是拿到图算法给出的、可复现的数值依据,再叠加多跳查询得到的抱怨计数,形成相互印证的证据链。
隐私边界与"副业"路径
创始人的未公开想法是敏感信息。Ideator的立场是:开放权重意味着读取想法的模型不必是租来的黑箱,图数据库和工具服务器都跑在本地,且已支持通过Ollama回退到本地Gemma。但作者诚实地划出了边界——搜索仍需经过SerpApi,价格预测经过Prior Labs,完全本地化是方向而非现状。
首批用户是作者的几位大学朋友,他们在作者机器上用自己的想法试用后表示愿意各付约2500卢比使用,但尚未发生实际付费。作者告知他们项目开源且BYOK(自带密钥)可免费自部署,得到的回应是"那就发布它":加登录页和付费墙,正式收费。这构成了下一步的副业计划。
最有说服力的反馈来自后续:一位朋友受Ideator启发,把自己的想法跑了一遍之后,启动了一个面向本校的ERP智能体项目Praesentia,处理成绩、课程等事务。
技术栈全景
除核心组件外,Ideator还用Temporal把搜索和报告生成作为带重试的持久化工作流运行(智能体循环本身不在工作流内);Sentry记录每轮对话一个事务,每次Gemma调用和MCP工具调用各一个span;ElevenLabs提供任何回复的朗读按钮。后端为FastAPI加服务器发送事件,前端是原生JavaScript与Cytoscape.js。
值得留意的是项目对自身局限的坦白:智能体循环不受Temporal管理、搜索与定价尚未本地化、响应时间以分钟计。在一个充斥着"全自动AI创业助手"叙事的领域,这种克制的工程自述反而更能说明系统的实际能力边界。
对于独立开发者、需要会前简报的产品经理、每周评审大量想法的加速器导师,以及想避免重复造轮子的学生,Ideator提供的价值很明确:不是再给你一份竞品列表,而是逼你在五格里做出决定——而每一格都可以点回它的证据。计划还能导出为AGENTS.md文件,直接放进Claude Code或Cursor,让编码智能体从既定决策出发,而不是从空白提示词开始。
相关推荐

Gemini 4 Argon API实战:思考等级、后台模式一次讲透
Free Code Camp 出品的 Gemini 4 Argon API 速成教程:从申请密钥、发送首次请求,到用思考等级控制推理成本、用 previous_interaction_id 实现多轮对话,再到后台模式一句话生成打砖块游戏,附 Google 工程师对模型能力的解读。

强化学习通关《抡大锤》:63%进度背后的分布式训练策略
开发者用深度强化学习挑战《抡大锤》,智能体从底部攀爬至63%进度,卡在铁砧部分。项目开源,采用分治训练和CPU训练策略,寻求社区协作突破瓶颈。

AAAI 2027二审放榜在即:社区热议评审公平与投稿生态
AAAI 2027第二阶段评审结果即将公布,Reddit社区热议评审一致性与流程透明度。本文梳理放榜前的社区情绪、顶会评审的结构性矛盾,以及作者应对二审结果的务实策略。