V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
xsank
V2EX  ›  程序员

open-rec:基于开源技术栈的推荐系统

  •  1
     
  •   xsank · 2022-11-14 16:34:13 +08:00 · 1008 次点击
    这是一个创建于 522 天前的主题,其中的信息可能已经有所发展或是发生改变。

    项目地址

    https://github.com/open-rec

    运行模式

    standalone 模式

    image.png

    SDK

    数据推送与推荐接口交互 client ,目前仅支持 java 版本

    rec-server

    推荐系统在线服务,整合实时数据链路、运营操作以及召回+排序链路,完成整套推荐系统在线服务功能串通

    rec-algorithm

    推荐算法模块,基于 pandas 实现,故而目前仅支持单机环境:包含 i2i,word2vec,hot 以及 new 四种召回算法

    recall-engine

    推荐召回引擎,包括两部分

    1. redis:用户 i2i,hot,new 以及曝光过滤等
    2. elasticsearch:用于向量召回以及文本检索

    example

    顾名思义,为了使开发者更容易的了解整套链路的工作流程而准备的辅助模块

    cluster 模式

    主要是 rec-algorithm 以及实时链路部分会进行集群版本的扩充,挖个坑先... 先将 standalone 版本放出来试试水,尝试搜集下需求和建议,当然如果能一起参与开发就更好了,说实话一个人搞还是蛮累的...

    演示说明

    使用了开放的豆瓣数据集,由于太大没有上传至 git
    其中包含用户数据 64w+,物品数据 14w+,行为数据 210w+ 测试效果:
    个性化推荐,当你点了悬疑电影《葬礼之后》

    {
      "code": 200,
      "status": true,
      "msg": "",
      "data": {
        "results": [
          {
            "id": "1768141",
            "score": 0.08358968296584475
          },
          {
            "id": "3426877",
            "score": 0.07665220781278664
          },
          {
            "id": "1427040",
            "score": 0.07655959028113997
          },
          {
            "id": "1427039",
            "score": 0.07570950809055003
          },
          {
            "id": "1768209",
            "score": 0.07437190381291456
          },
          {
            "id": "3228086",
            "score": 0.0697870242753483
          },
          {
            "id": "1421737",
            "score": 0.06672216347590268
          },
          {
            "id": "3992966",
            "score": 0.0652121816197966
          },
          {
            "id": "4106641",
            "score": 0.06475048223743467
          },
          {
            "id": "1768212",
            "score": 0.06289306435371969
          }
        ],
        "detailInfos": [
          {
            "id": "1768141",
            "weight": 0,
            "title": "遗产风波 - 电影",
            "category": "悬疑 /惊悚 /犯罪",
            "tags": "英剧 /阿加莎·克里斯蒂 /推理 /英国 /悬疑 /Poirot/AgathaChristie/侦探",
            "scene": "douban_movie",
            "pubTime": "0",
            "modifyTime": "0",
            "expireTime": "0",
            "status": 1,
            "extFields": "{}"
          },
          {
            "id": "3426877",
            "weight": 7,
            "title": "鸽群中的猫",
            "category": "剧情 /悬疑 /惊悚 /犯罪",
            "tags": "英剧 /阿加莎·克里斯蒂 /推理 /英国 /悬疑 /AgathaChristie/Poirot/波洛",
            "scene": "douban_movie",
            "pubTime": "0",
            "modifyTime": "0",
            "expireTime": "0",
            "status": 1,
            "extFields": "{}"
          },
          {
            "id": "1427040",
            "weight": 7,
            "title": "空幻之屋",
            "category": "剧情 /爱情 /悬疑 /犯罪",
            "tags": "阿加莎·克里斯蒂 /推理 /英剧 /英国 /波洛 /悬疑 /Poirot/AgathaChristie",
            "scene": "douban_movie",
            "pubTime": "0",
            "modifyTime": "0",
            "expireTime": "0",
            "status": 1,
            "extFields": "{}"
          },
          {
            "id": "1427039",
            "weight": 8,
            "title": "H 庄园的一次午餐",
            "category": "剧情 /爱情 /悬疑 /犯罪",
            "tags": "阿加莎·克里斯蒂 /推理 /英国 /英剧 /悬疑 /波洛 /侦探 /Poirot",
            "scene": "douban_movie",
            "pubTime": "0",
            "modifyTime": "0",
            "expireTime": "0",
            "status": 1,
            "extFields": "{}"
          },
          {
            "id": "1768209",
            "weight": 7,
            "title": "底牌",
            "category": "剧情 /悬疑 /犯罪",
            "tags": "阿加莎·克里斯蒂 /推理 /英剧 /英国 /悬疑 /Poirot/侦探 /波洛",
            "scene": "douban_movie",
            "pubTime": "0",
            "modifyTime": "0",
            "expireTime": "0",
            "status": 1,
            "extFields": "{}"
          },
          {
            "id": "3228086",
            "weight": 7,
            "title": "第三个女郎",
            "category": "悬疑 /惊悚 /犯罪",
            "tags": "英剧 /阿加莎·克里斯蒂 /推理 /Poirot/AgathaChristie/英国 /悬疑 /波洛",
            "scene": "douban_movie",
            "pubTime": "0",
            "modifyTime": "0",
            "expireTime": "0",
            "status": 1,
            "extFields": "{}"
          },
          {
            "id": "1421737",
            "weight": 0,
            "title": "埃奇威尔爵士之死 - 电影",
            "category": "悬疑 /犯罪",
            "tags": "阿加莎·克里斯蒂 /推理 /英国 /悬疑 /英剧 /波洛 /侦探 /Poirot",
            "scene": "douban_movie",
            "pubTime": "0",
            "modifyTime": "0",
            "expireTime": "0",
            "status": 1,
            "extFields": "{}"
          },
          {
            "id": "3992966",
            "weight": 0,
            "title": "三幕悲剧 - 电影",
            "category": "剧情 /悬疑 /惊悚 /犯罪",
            "tags": "阿加莎·克里斯蒂 /推理 /英剧 /英国 /悬疑 /Poirot/波洛 /AgathaChristie",
            "scene": "douban_movie",
            "pubTime": "0",
            "modifyTime": "0",
            "expireTime": "0",
            "status": 1,
            "extFields": "{}"
          },
          {
            "id": "4106641",
            "weight": 7,
            "title": "怪钟疑案",
            "category": "剧情 /悬疑 /犯罪",
            "tags": "阿加莎·克里斯蒂 /推理 /英国 /悬疑 /英剧 /波洛 /侦探 /Poirot",
            "scene": "douban_movie",
            "pubTime": "0",
            "modifyTime": "0",
            "expireTime": "0",
            "status": 1,
            "extFields": "{}"
          },
          {
            "id": "1768212",
            "weight": 7,
            "title": "蓝色特快上的秘密",
            "category": "剧情 /悬疑 /犯罪",
            "tags": "阿加莎·克里斯蒂 /推理 /英剧 /英国 /波洛 /悬疑 /侦探 /Poirot",
            "scene": "douban_movie",
            "pubTime": "0",
            "modifyTime": "0",
            "expireTime": "0",
            "status": 1,
            "extFields": "{}"
          }
        ]
      }
    }
    
    6 条回复    2023-02-10 18:15:23 +08:00
    xsank
        1
    xsank  
    OP
       2022-11-15 10:14:27 +08:00
    看起来大家对于推荐系统不感兴趣啊...
    xsank
        2
    xsank  
    OP
       2022-11-16 14:32:19 +08:00
    再询问下大家,是介绍不清楚吗?
    感觉大家没什么反馈,还是想了解下开发同学的真实想法的,欢迎交流
    yuhuigreed
        3
    yuhuigreed  
       2022-11-18 00:33:54 +08:00
    同行,先 star 了
    xsank
        4
    xsank  
    OP
       2022-11-18 11:20:23 +08:00
    欢迎交流
    hadesjaky0607
        5
    hadesjaky0607  
       2022-12-21 14:16:18 +08:00
    确实是专业,赞一个
    WabbyWabbo
        6
    WabbyWabbo  
       2023-02-10 18:15:23 +08:00 via Android
    我最近也在打算写一个简单的推荐引擎,打算召回重排用 Golang ,精排用 C++调 TensorFlow
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   1011 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 27ms · UTC 19:28 · PVG 03:28 · LAX 12:28 · JFK 15:28
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.