
zhenghaoz/gorse-in-oneGorse是一个用Go编写的开源推荐系统,旨在成为可快速引入各类在线服务的通用开源推荐引擎。通过将项目、用户和交互数据导入Gorse,系统会自动训练模型为每个用户生成个性化推荐。其设计目标是提供开箱即用的推荐能力,适用于多种在线服务场景。
!工作流程
适用于各类需要个性化推荐功能的在线服务,包括但不限于:
为初学者提供playground模式,可通过以下命令快速搭建GitHub仓库推荐系统演示环境:
bashdocker run -p 8088:8088 zhenghaoz/gorse-in-one --playground
该命令会启动Gorse服务并映射8088端口,playground模式将从GitRec下载示例数据集并自动导入。服务启动后,可通过
http://localhost:8088访问可视化仪表板。
!仪表板
在仪表板"Tasks"页面完成"Find neighbors of items"任务后,可通过API插入用户交互数据。以下示例为用户"bob"(前端开发者)插入GitHub仓库"star"行为:
bashread -d '' JSON << EOF [ { "FeedbackType": "star", "UserId": "bob", "ItemId": "vuejs:vue", "Timestamp": "2022-02-24" }, { "FeedbackType": "star", "UserId": "bob", "ItemId": "d3:d3", "Timestamp": "2022-02-25" }, { "FeedbackType": "star", "UserId": "bob", "ItemId": "dogfalo:materialize", "Timestamp": "2022-02-26" }, { "FeedbackType": "star", "UserId": "bob", "ItemId": "mozilla:pdf.js", "Timestamp": "2022-02-27" }, { "FeedbackType": "star", "UserId": "bob", "ItemId": "moment:moment", "Timestamp": "2022-02-28" } ] EOF curl -X POST [***] \ -H 'Content-Type: application/json' \ -d "$JSON"
通过API获取用户"bob"的10个推荐项目:
bashcurl [***]
json[ "mbostock:d3", "nt1m:material-framework", "mdbootstrap:vue-bootstrap-with-material-design", "justice47:f2-vue", "10clouds:cyclejs-cookie", "academicpages:academicpages.github.io", "accenture:alexia", "addyosmani:tmi", "1wheel:d3-starterkit", "acdlite:redux-promise" ]
确切输出可能与示例不同,因为 playground 数据集会随时间更新。
Gorse采用单节点训练与分布式预测架构,数据存储支持MySQL、MongoDB、Postgres和ClickHouse,中间结果可缓存在Redis、MySQL、MongoDB或Postgres中。
!架构图
管理员可通过主节点提供的仪表板进行系统监控、数据导入导出及集群状态检查。




manifest unknown 错误
TLS 证书验证失败
DNS 解析超时
410 错误:版本过低
402 错误:流量耗尽
身份认证失败错误
429 限流错误
凭证保存错误
来自真实用户的反馈,见证轩辕镜像的优质服务