AI 在筛选和分析长篇主题时非常有用。
这是我目前使用 AI 语言模型语境下的主题数据模型:
- 下载主题的所有讨论帖子。
- 提取相关数据。
- 将相关数据上传到 AI 语言模型。
- 对 AI 语言模型进行数据相关查询。
下载主题的所有讨论帖:
- 可以通过 CLI 程序 ‘discourse-reader’ 进行。
- 要求:
- 一次性申请用户 API 密钥。
- 在(论坛)用户设置中授权 API 密钥。
一次性申请用户 API 密钥:
- 可以通过 CLI 程序 ‘discourse-user-api-key’ 进行。
- 具体工作流程在程序帮助中有描述。
下载主题会得到一个复杂的 JSON 文件:
{
"meta_data": ...,
"post_data": [ ... ]
}
示例:
# 从论坛下载主题
discourse-reader -forum="meta.discourse.org" -topic=210780 -output="210780.json" -userapikey="107dc02b7fad3bc217b6f0c121fdc805"
提取相关数据:
- 可以通过 CLI 程序 ‘jq’ 进行。
- 也可以对 JSON 数据进行更改。
示例:
# 过滤掉不必要的数据
# 元数据
jq '.meta_data | {title, created_by:.details.created_by.username, created_at, id, posts_count, last_posted_at}' 210780.json > 210780.compact.json
# 帖子数据
jq '.post_data[] | .post_stream.posts[] | {post_number, username, created_at, reply_to_post_number, post:.cooked, reactions, accepted_answer}' 210780.json >> 210780.compact.json
将相关数据上传到 AI 语言模型。
对 AI 语言模型进行数据相关查询。
- 一个简单的 CLI 程序将在不久后为此开发。
- 最初,可以使用 AI 语言模型的浏览器界面。
提到的程序可以在 GitHub 上找到。
以下是来自本论坛主题 210780 的使用示例:
https://meta.discourse.org/t/matrix-protocol-for-chat/210780/
AI - Google Gemini 2.0 (exp)
给 Gemini 的提示:
创建一个按用户列出的帖子数量列表。
创建讨论的简短摘要。
讨论的结果是什么?
下一步是什么?
Gemini 的回复:
每位用户的帖子数:
- mattdm: 4
- david: 1
- sam: 4
- AquaL1te: 2
- seong: 1
- Stephen: 1
- satonotdead: 1
- user12: 1
- attj: 1
- Falco: 3
- halfshot: 2
- merefield: 2
- anarcat: 1
- dan: 1
- rokejulianlockhart: 3
- volanar: 4
- mcdanlj: 1
- jimkleiber: 2
- sunjam: 6
- dubwoc: 1
- davy: 2
- Lhc_fl: 1
- Thomas_Rother: 12
- thoka: 2
- mcwumbly: 4
- joshsimmons: 2
- hellekin: 5
- kOS: 1
讨论摘要:
讨论围绕将 Matrix 协议与 Discourse 聊天集成。最初的建议是将 Discourse 聊天室变成 Matrix 房间,这比桥接更无缝。参与者看到了其中的吸引力,许多人强烈支持 Matrix 作为开放、联邦的标准。然而,有人担心如果使用非 Discourse 的 Matrix 客户端,用户参与“慢车道”(主题)的可能性会降低。其他人指出,在不同平台上拥有聊天和论坛也是一个障碍。讨论还触及了通过 Matrix 联邦 Discourse 实例的可能性,以及使用 ActivityPub。
Discourse 聊天插件的 Matrix 桥接器的开发得到了关注,并概述了其功能。然而,Discourse 聊天中缺乏端到端加密也得到了讨论。用户映射、代理的复杂性以及所需的工作量都被强调为重大挑战。鉴于大型组织对 Matrix 的采用日益增加,人们普遍认为 Discourse 聊天和 Matrix 之间的互操作性具有优势。
讨论结果:
尽管人们对将 Matrix 与 Discourse 聊天集成的想法充满热情和支持,但讨论突显了重大的挑战,包括:
- 用户管理: 两个系统之间的用户映射很复杂。
- 技术难题: 实现一个健壮的桥接器是一项艰巨的任务,可能需要特定的技能集。
- 资源限制: 由于资源有限,CDCK 尚未将此作为优先事项,也尚未看到引人注目的商业案例。
- 资金挑战: 寻求德国主权基金资助的机会已经过去。
现有的桥接代码被视为一个良好的起点,但它被认为是 alpha 阶段,文档不完善,需要进一步开发。CDCK 没有明确承诺优先考虑此集成,除非获得外部资金或客户优先考虑该请求并赞助开发。讨论结束时,没有明确的前进方向或实施承诺。
下一步:
- 寻找技术娴熟的开发人员: 最大的障碍是需要一位同时精通 Matrix 和 Discourse 的开发人员。
- 客户赞助: 尚未制定证明开发合理性的商业案例;客户可能需要赞助这项工作。
- 与 Matrix 基金会互动: 与 Matrix 基金会进行更多互动,以获得帮助、技术指导和潜在的资助机会。
- 评估现有代码: 审查现有代码,评估将其提升到 beta 状态所需的开发工作,以及这是否是一种可维护的方法。
- 社区倡议: 探索社区开发第三方插件的可能性。
- 众筹: 评估众筹的可能性。
- OFFDEM 讨论: 在下次 OFFDEM 上讨论更多资助机会。