[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"similar-awarebayes--RecNN":3,"tool-awarebayes--RecNN":61},[4,18,26,36,44,53],{"id":5,"name":6,"github_repo":7,"description_zh":8,"stars":9,"difficulty_score":10,"last_commit_at":11,"category_tags":12,"status":17},4358,"openclaw","openclaw\u002Fopenclaw","OpenClaw 是一款专为个人打造的本地化 AI 助手，旨在让你在自己的设备上拥有完全可控的智能伙伴。它打破了传统 AI 助手局限于特定网页或应用的束缚，能够直接接入你日常使用的各类通讯渠道，包括微信、WhatsApp、Telegram、Discord、iMessage 等数十种平台。无论你在哪个聊天软件中发送消息，OpenClaw 都能即时响应，甚至支持在 macOS、iOS 和 Android 设备上进行语音交互，并提供实时的画布渲染功能供你操控。\n\n这款工具主要解决了用户对数据隐私、响应速度以及“始终在线”体验的需求。通过将 AI 部署在本地，用户无需依赖云端服务即可享受快速、私密的智能辅助，真正实现了“你的数据，你做主”。其独特的技术亮点在于强大的网关架构，将控制平面与核心助手分离，确保跨平台通信的流畅性与扩展性。\n\nOpenClaw 非常适合希望构建个性化工作流的技术爱好者、开发者，以及注重隐私保护且不愿被单一生态绑定的普通用户。只要具备基础的终端操作能力（支持 macOS、Linux 及 Windows WSL2），即可通过简单的命令行引导完成部署。如果你渴望拥有一个懂你",349277,3,"2026-04-06T06:32:30",[13,14,15,16],"Agent","开发框架","图像","数据工具","ready",{"id":19,"name":20,"github_repo":21,"description_zh":22,"stars":23,"difficulty_score":10,"last_commit_at":24,"category_tags":25,"status":17},3808,"stable-diffusion-webui","AUTOMATIC1111\u002Fstable-diffusion-webui","stable-diffusion-webui 是一个基于 Gradio 构建的网页版操作界面，旨在让用户能够轻松地在本地运行和使用强大的 Stable Diffusion 图像生成模型。它解决了原始模型依赖命令行、操作门槛高且功能分散的痛点，将复杂的 AI 绘图流程整合进一个直观易用的图形化平台。\n\n无论是希望快速上手的普通创作者、需要精细控制画面细节的设计师，还是想要深入探索模型潜力的开发者与研究人员，都能从中获益。其核心亮点在于极高的功能丰富度：不仅支持文生图、图生图、局部重绘（Inpainting）和外绘（Outpainting）等基础模式，还独创了注意力机制调整、提示词矩阵、负向提示词以及“高清修复”等高级功能。此外，它内置了 GFPGAN 和 CodeFormer 等人脸修复工具，支持多种神经网络放大算法，并允许用户通过插件系统无限扩展能力。即使是显存有限的设备，stable-diffusion-webui 也提供了相应的优化选项，让高质量的 AI 艺术创作变得触手可及。",162132,"2026-04-05T11:01:52",[14,15,13],{"id":27,"name":28,"github_repo":29,"description_zh":30,"stars":31,"difficulty_score":32,"last_commit_at":33,"category_tags":34,"status":17},1381,"everything-claude-code","affaan-m\u002Feverything-claude-code","everything-claude-code 是一套专为 AI 编程助手（如 Claude Code、Codex、Cursor 等）打造的高性能优化系统。它不仅仅是一组配置文件，而是一个经过长期实战打磨的完整框架，旨在解决 AI 代理在实际开发中面临的效率低下、记忆丢失、安全隐患及缺乏持续学习能力等核心痛点。\n\n通过引入技能模块化、直觉增强、记忆持久化机制以及内置的安全扫描功能，everything-claude-code 能显著提升 AI 在复杂任务中的表现，帮助开发者构建更稳定、更智能的生产级 AI 代理。其独特的“研究优先”开发理念和针对 Token 消耗的优化策略，使得模型响应更快、成本更低，同时有效防御潜在的攻击向量。\n\n这套工具特别适合软件开发者、AI 研究人员以及希望深度定制 AI 工作流的技术团队使用。无论您是在构建大型代码库，还是需要 AI 协助进行安全审计与自动化测试，everything-claude-code 都能提供强大的底层支持。作为一个曾荣获 Anthropic 黑客大奖的开源项目，它融合了多语言支持与丰富的实战钩子（hooks），让 AI 真正成长为懂上",159636,2,"2026-04-17T23:33:34",[14,13,35],"语言模型",{"id":37,"name":38,"github_repo":39,"description_zh":40,"stars":41,"difficulty_score":32,"last_commit_at":42,"category_tags":43,"status":17},2271,"ComfyUI","Comfy-Org\u002FComfyUI","ComfyUI 是一款功能强大且高度模块化的视觉 AI 引擎，专为设计和执行复杂的 Stable Diffusion 图像生成流程而打造。它摒弃了传统的代码编写模式，采用直观的节点式流程图界面，让用户通过连接不同的功能模块即可构建个性化的生成管线。\n\n这一设计巧妙解决了高级 AI 绘图工作流配置复杂、灵活性不足的痛点。用户无需具备编程背景，也能自由组合模型、调整参数并实时预览效果，轻松实现从基础文生图到多步骤高清修复等各类复杂任务。ComfyUI 拥有极佳的兼容性，不仅支持 Windows、macOS 和 Linux 全平台，还广泛适配 NVIDIA、AMD、Intel 及苹果 Silicon 等多种硬件架构，并率先支持 SDXL、Flux、SD3 等前沿模型。\n\n无论是希望深入探索算法潜力的研究人员和开发者，还是追求极致创作自由度的设计师与资深 AI 绘画爱好者，ComfyUI 都能提供强大的支持。其独特的模块化架构允许社区不断扩展新功能，使其成为当前最灵活、生态最丰富的开源扩散模型工具之一，帮助用户将创意高效转化为现实。",108322,"2026-04-10T11:39:34",[14,15,13],{"id":45,"name":46,"github_repo":47,"description_zh":48,"stars":49,"difficulty_score":32,"last_commit_at":50,"category_tags":51,"status":17},6121,"gemini-cli","google-gemini\u002Fgemini-cli","gemini-cli 是一款由谷歌推出的开源 AI 命令行工具，它将强大的 Gemini 大模型能力直接集成到用户的终端环境中。对于习惯在命令行工作的开发者而言，它提供了一条从输入提示词到获取模型响应的最短路径，无需切换窗口即可享受智能辅助。\n\n这款工具主要解决了开发过程中频繁上下文切换的痛点，让用户能在熟悉的终端界面内直接完成代码理解、生成、调试以及自动化运维任务。无论是查询大型代码库、根据草图生成应用，还是执行复杂的 Git 操作，gemini-cli 都能通过自然语言指令高效处理。\n\n它特别适合广大软件工程师、DevOps 人员及技术研究人员使用。其核心亮点包括支持高达 100 万 token 的超长上下文窗口，具备出色的逻辑推理能力；内置 Google 搜索、文件操作及 Shell 命令执行等实用工具；更独特的是，它支持 MCP（模型上下文协议），允许用户灵活扩展自定义集成，连接如图像生成等外部能力。此外，个人谷歌账号即可享受免费的额度支持，且项目基于 Apache 2.0 协议完全开源，是提升终端工作效率的理想助手。",100752,"2026-04-10T01:20:03",[52,13,15,14],"插件",{"id":54,"name":55,"github_repo":56,"description_zh":57,"stars":58,"difficulty_score":32,"last_commit_at":59,"category_tags":60,"status":17},4721,"markitdown","microsoft\u002Fmarkitdown","MarkItDown 是一款由微软 AutoGen 团队打造的轻量级 Python 工具，专为将各类文件高效转换为 Markdown 格式而设计。它支持 PDF、Word、Excel、PPT、图片（含 OCR）、音频（含语音转录）、HTML 乃至 YouTube 链接等多种格式的解析，能够精准提取文档中的标题、列表、表格和链接等关键结构信息。\n\n在人工智能应用日益普及的今天，大语言模型（LLM）虽擅长处理文本，却难以直接读取复杂的二进制办公文档。MarkItDown 恰好解决了这一痛点，它将非结构化或半结构化的文件转化为模型“原生理解”且 Token 效率极高的 Markdown 格式，成为连接本地文件与 AI 分析 pipeline 的理想桥梁。此外，它还提供了 MCP（模型上下文协议）服务器，可无缝集成到 Claude Desktop 等 LLM 应用中。\n\n这款工具特别适合开发者、数据科学家及 AI 研究人员使用，尤其是那些需要构建文档检索增强生成（RAG）系统、进行批量文本分析或希望让 AI 助手直接“阅读”本地文件的用户。虽然生成的内容也具备一定可读性，但其核心优势在于为机器",93400,"2026-04-06T19:52:38",[52,14],{"id":62,"github_repo":63,"name":64,"description_en":65,"description_zh":66,"ai_summary_zh":66,"readme_en":67,"readme_zh":68,"quickstart_zh":69,"use_case_zh":70,"hero_image_url":71,"owner_login":72,"owner_name":73,"owner_avatar_url":74,"owner_bio":75,"owner_company":76,"owner_location":77,"owner_email":78,"owner_twitter":78,"owner_website":79,"owner_url":80,"languages":81,"stars":86,"forks":87,"last_commit_at":88,"license":89,"difficulty_score":10,"env_os":90,"env_gpu":91,"env_ram":90,"env_deps":92,"category_tags":99,"github_topics":100,"view_count":32,"oss_zip_url":78,"oss_zip_packed_at":78,"status":17,"created_at":109,"updated_at":110,"faqs":111,"releases":140},8803,"awarebayes\u002FRecNN","RecNN","Reinforced Recommendation toolkit built around pytorch 1.7","RecNN 是一个基于 PyTorch 1.7 构建的强化学习推荐系统工具包，专注于解决个性化新闻推荐中的在线离策略（online off-policy）学习难题。它创新性地引入了动态生成的物品嵌入技术，旨在为研究人员和开发者提供一个灵活、高效的实验平台，用于探索和实现前沿的强化学习推荐算法。\n\n该工具特别适合那些希望将强化学习应用于推荐场景的算法工程师与科研人员。RecNN 提供了极高的抽象自由度：用户既可以直接调用封装好的完整算法（如 DDPG、TD3、SAC 等）进行快速训练，也可以拆解网络结构与学习函数，自定义数据加载器以适配特定任务。其核心亮点包括支持序列化环境建模（兼容 ML20M 等数据集）、提供多种状态表示方法（如 LSTM、GRU），以及利用 Modin 实现并行数据加载与缓存，显著提升了数据处理效率。此外，项目代码风格纯净，示例文件去除了冗余逻辑，并配有详细的技术文章指导，帮助用户轻松上手从基础概念到高级修正策略的各类应用。","\u003Cp align=\"center\"> \n\u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fawarebayes_RecNN_readme_841403f28f02.png\">\n\u003C\u002Fp>\n\n\u003Cp align=\"center\"> \n\n\u003Ca href='https:\u002F\u002Frecnn.readthedocs.io\u002Fen\u002Flatest\u002F?badge=latest'>\n    \u003Cimg src='https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fawarebayes_RecNN_readme_13d664e1afd7.png' alt='Documentation Status' \u002F>\n\u003C\u002Fa>\n\n\u003Ca href='https:\u002F\u002Fcircleci.com\u002Fgh\u002Fawarebayes\u002FRecNN'>\n    \u003Cimg src='https:\u002F\u002Fcircleci.com\u002Fgh\u002Fawarebayes\u002FRecNN.svg?style=svg' alt='Documentation Status' \u002F>\n\u003C\u002Fa>\n\n\u003Ca href=\"https:\u002F\u002Fcodeclimate.com\u002Fgithub\u002Fawarebayes\u002FRecNN\u002Fmaintainability\">\n    \u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fawarebayes_RecNN_readme_eee3fb5bb03b.png\" \u002F>\n\u003C\u002Fa>\n\n\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fawarebayes\u002FRecNN\">\n    \u003Cimg src=\"https:\u002F\u002Fimg.shields.io\u002Fgithub\u002Fstars\u002Fawarebayes\u002FRecNN?style=social\" \u002F>\n\u003C\u002Fa>\n\n\u003Ca href=\"https:\u002F\u002Fcolab.research.google.com\u002Fgithub\u002Fawarebayes\u002FRecNN\u002F\">\n    \u003Cimg src=\"https:\u002F\u002Fcolab.research.google.com\u002Fassets\u002Fcolab-badge.svg\" \u002F>\n\u003C\u002Fa>\n\n\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fpsf\u002Fblack\">\n    \u003Cimg alt=\"Code style: black\" src=\"https:\u002F\u002Fimg.shields.io\u002Fbadge\u002Fcode%20style-black-000000.svg\">\n\u003C\u002Fa>\n\u003C\u002Fp>\n\n\n\u003Cp align=\"center\"> \nThis is my school project. It focuses on Reinforcement Learning for personalized news recommendation. The main distinction is that it tries to solve online off-policy learning with dynamically generated item embeddings. I want to create a library with SOTA algorithms for reinforcement learning recommendation, providing the level of abstraction you like.\n\u003C\u002Fp>\n\n\u003Cp align=\"center\">\n    \u003Ca href=\"https:\u002F\u002Frecnn.readthedocs.io\">recnn.readthedocs.io\u003C\u002Fa>\n\u003C\u002Fp>\n\n### 📊 The features can be summed up to\n\n- Abstract as you decide: you can import the entire algorithm (say DDPG) and tell it to ddpg.learn(batch), you can import networks and the learning function separately, create a custom loader for your task, or can define everything by yourself.\n\n- Examples do not contain any of the junk code or workarounds: pure model definition and the algorithm itself in one file. I wrote a couple of articles explaining how it functions.\n\n- The learning is built around sequential or frame environment that supports ML20M and like. Seq and Frame determine the length type of sequential data, seq is fully sequential dynamic size (WIP), while the frame is just a static frame.\n\n- State Representation module with various methods. For sequential state representation, you can use LSTM\u002FRNN\u002FGRU (WIP) \n\n- Parallel data loading with Modin (Dask \u002F Ray) and caching\n\n- Pytorch 1.7 support with Tensorboard visualization.\n\n- New datasets will be added in the future.\n\n## 📚 Medium Articles\n\nThe repo consists of two parts: the library (.\u002Frecnn), and the playground (.\u002Fexamples) where I explain how to work with certain things. \n\n -  Pretty much what you need to get started with this library if you know recommenders but don't know much about\n  reinforcement learning:\n\n\u003Cp align=\"center\"> \n   \u003Ca href=\"https:\u002F\u002Ftowardsdatascience.com\u002Freinforcement-learning-ddpg-and-td3-for-news-recommendation-d3cddec26011\">\n        \u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fawarebayes_RecNN_readme_afff6d862cd8.png\"  width=\"70%\">\n    \u003C\u002Fa>\n\u003C\u002Fp>\n\n -  Top-K Off-Policy Correction for a REINFORCE Recommender System:\n\u003Cp align=\"center\"> \n   \u003Ca href=\"https:\u002F\u002Ftowardsdatascience.com\u002Ftop-k-off-policy-correction-for-a-reinforce-recommender-system-e34381dceef8\">\n        \u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fawarebayes_RecNN_readme_b9f12baaa333.png\" width=\"70%\">\n    \u003C\u002Fa>\n\u003C\u002Fp>\n\n\n## Algorithms that are\u002Fwill be added\n\n\u003Cp align=\"center\"> \n    \n| Algorithm                             | Paper                            | Code                       |\n|---------------------------------------|----------------------------------|----------------------------|\n| Deep Q Learning (PoC)                 | https:\u002F\u002Farxiv.org\u002Fabs\u002F1312.5602  | examples\u002F0. Embeddings\u002F 1.DQN |\n| Deep Deterministic Policy Gradients   | https:\u002F\u002Farxiv.org\u002Fabs\u002F1509.02971 | examples\u002F1.Vanilla RL\u002FDDPG |\n| Twin Delayed DDPG (TD3)               | https:\u002F\u002Farxiv.org\u002Fabs\u002F1802.09477 | examples\u002F1.Vanilla RL\u002FTD3  |\n| Soft Actor-Critic                     | https:\u002F\u002Farxiv.org\u002Fabs\u002F1801.01290 | examples\u002F1.Vanilla RL\u002FSAC  |\n| Batch Constrained Q-Learning          | https:\u002F\u002Farxiv.org\u002Fabs\u002F1812.02900 | examples\u002F99.To be released\u002FBCQ |\n| REINFORCE Top-K Off-Policy Correction | https:\u002F\u002Farxiv.org\u002Fabs\u002F1812.02353 | examples\u002F2. REINFORCE TopK |\n\n\u003C\u002Fp>\n\n### ‍Repos I used code from\n\n -  Sfujim's [BCQ](https:\u002F\u002Fgithub.com\u002Fsfujim\u002FBCQ) (not implemented yet)\n -  Higgsfield's [RL Adventure 2](https:\u002F\u002Fgithub.com\u002Fhiggsfield\u002FRL-Adventure-2) (great inspiration)\n\n### 🤔 What is this\n\n\u003Cp align=\"center\"> \nThis is my school project. It focuses on Reinforcement Learning for personalized news recommendation. The main distinction is that it tries to solve online off-policy learning with dynamically generated item embeddings. Also, there is no exploration, since we are working with a dataset. In the example section, I use Google's BERT on the ML20M dataset to extract contextual information from the movie description to form the latent vector representations. Later, you can use the same transformation on new, previously unseen items (hence, the embeddings are dynamically generated). If you don't want to bother with embeddings pipeline, I have a DQN embeddings generator as a proof of concept.\n\u003C\u002Fp>\n\n\n## ✋ Getting Started\n\u003Cp align=\"center\"> \n\u003Ca href=\"https:\u002F\u002Fcolab.research.google.com\u002Fdrive\u002F1xWX4JQvlcx3mizwL4gB0THEyxw6LsXTL\">\u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fawarebayes_RecNN_readme_6568ab2a8b69.png\">\u003C\u002Fa>\n\u003C\u002Fp>\n\n\u003Cp align=\"center\"> \n\u003Ca href=\"https:\u002F\u002Fcolab.research.google.com\u002Fdrive\u002F1xWX4JQvlcx3mizwL4gB0THEyxw6LsXTL\">\u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fawarebayes_RecNN_readme_da52ea3d5ab3.png\">\u003C\u002Fa>\n\u003C\u002Fp>\n\n\np.s. Image is clickable. here is direct link:\n\u003Ca href=\"https:\u002F\u002Fcolab.research.google.com\u002Fdrive\u002F1xWX4JQvlcx3mizwL4gB0THEyxw6LsXTL\">\n    \u003Cimg src=\"https:\u002F\u002Fcolab.research.google.com\u002Fassets\u002Fcolab-badge.svg\" \u002F>\n\u003C\u002Fa>\n\nTo learn more about recnn, read the docs: \u003Ca href=\"https:\u002F\u002Frecnn.readthedocs.io\">recnn.readthedocs.io\u003C\u002Fa> \n\n### ⚙️ Installing\n\n```\npip install git+git:\u002F\u002Fgithub.com\u002Fawarebayes\u002FRecNN.git\n```\n\nPyPi is on its way...\n\n### 🚀 Try demo\n\nI built a [Streamlit](https:\u002F\u002Fwww.streamlit.io\u002F) demo to showcase its features.\nIt has 'recommend me a movie' feature! Note how the score changes when you **rate** the movies. When you start\nand the movies aren't rated (5\u002F10 by default) the score is about ~40 (euc), but as you rate them it drops to \u003C10,\nindicating more personalized and precise predictions. You can also test diversity, check out the correlation of\nrecommendations, pairwise distances, and pinpoint accuracy.\n\nRun it:\n```\ngit clone git@github.com:awarebayes\u002FRecNN.git \ncd RecNN && streamlit run examples\u002Fstreamlit_demo.py\n```\n\n[Docker image is available here](https:\u002F\u002Fgithub.com\u002Fawarebayes\u002Frecnn-demo)\n\n## 📁 Downloads\n -  [MovieLens 20M](https:\u002F\u002Fgrouplens.org\u002Fdatasets\u002Fmovielens\u002F20m\u002F)\n -  [Movie Embeddings](https:\u002F\u002Fdrive.google.com\u002Fopen?id=1EQ_zXBR3DKpmJR3jBgLvt-xoOvArGMsL)\n -  [Misc Data](https:\u002F\u002Fdrive.google.com\u002Fopen?id=1TclEmCnZN_Xkl3TfUXL5ivPYmLnIjQSu)\n -  [Parsed (omdb,tmdb)](https:\u002F\u002Fdrive.google.com\u002Fopen?id=1t0LNCbqLjiLkAMFwtP8OIYU-zPUCNAjK)\n\n## 📁 [Download the Models](https:\u002F\u002Fdrive.google.com\u002Ffile\u002Fd\u002F1goGa15XZmDAp2msZvRi2v_1h9xfmnhz7\u002Fview?usp=sharing)\n\n## 📄 Citing\nIf you find RecNN useful for an academic publication, then please use the following BibTeX to cite it:\n\n```\n@misc{RecNN,\n  author = {M Scherbina},\n  title = {RecNN: RL Recommendation with PyTorch},\n  year = {2019},\n  publisher = {GitHub},\n  journal = {GitHub repository},\n  howpublished = {\\url{https:\u002F\u002Fgithub.com\u002Fawarebayes\u002FRecNN}},\n}\n```\n","\u003Cp align=\"center\"> \n\u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fawarebayes_RecNN_readme_841403f28f02.png\">\n\u003C\u002Fp>\n\n\u003Cp align=\"center\"> \n\n\u003Ca href='https:\u002F\u002Frecnn.readthedocs.io\u002Fen\u002Flatest\u002F?badge=latest'>\n    \u003Cimg src='https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fawarebayes_RecNN_readme_13d664e1afd7.png' alt='文档状态' \u002F>\n\u003C\u002Fa>\n\n\u003Ca href='https:\u002F\u002Fcircleci.com\u002Fgh\u002Fawarebayes\u002FRecNN'>\n    \u003Cimg src='https:\u002F\u002Fcircleci.com\u002Fgh\u002Fawarebayes\u002FRecNN.svg?style=svg' alt='文档状态' \u002F>\n\u003C\u002Fa>\n\n\u003Ca href=\"https:\u002F\u002Fcodeclimate.com\u002Fgithub\u002Fawarebayes\u002FRecNN\u002Fmaintainability\">\n    \u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fawarebayes_RecNN_readme_eee3fb5bb03b.png\" \u002F>\n\u003C\u002Fa>\n\n\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fawarebayes\u002FRecNN\">\n    \u003Cimg src=\"https:\u002F\u002Fimg.shields.io\u002Fgithub\u002Fstars\u002Fawarebayes\u002FRecNN?style=social\" \u002F>\n\u003C\u002Fa>\n\n\u003Ca href=\"https:\u002F\u002Fcolab.research.google.com\u002Fgithub\u002Fawarebayes\u002FRecNN\u002F\">\n    \u003Cimg src=\"https:\u002F\u002Fcolab.research.google.com\u002Fassets\u002Fcolab-badge.svg\" \u002F>\n\u003C\u002Fa>\n\n\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fpsf\u002Fblack\">\n    \u003Cimg alt=\"代码风格：black\" src=\"https:\u002F\u002Fimg.shields.io\u002Fbadge\u002Fcode%20style-black-000000.svg\">\n\u003C\u002Fa>\n\u003C\u002Fp>\n\n\n\u003Cp align=\"center\"> \n这是我的学校项目。它专注于使用强化学习进行个性化新闻推荐。其主要特点在于尝试解决在线离策略学习问题，并采用动态生成的物品嵌入。我希望创建一个包含强化学习推荐领域最先进算法的库，提供您所需的抽象层次。\n\u003C\u002Fp>\n\n\u003Cp align=\"center\">\n    \u003Ca href=\"https:\u002F\u002Frecnn.readthedocs.io\">recnn.readthedocs.io\u003C\u002Fa>\n\u003C\u002Fp>\n\n### 📊 功能概述\n\n- 按需抽象：您可以导入整个算法（如DDPG），直接调用ddpg.learn(batch)；也可以分别导入网络和学习函数，为您的任务创建自定义加载器，或者完全自行定义所有内容。\n\n- 示例中不包含任何冗余代码或变通方法：纯模型定义与算法本身都集中在单个文件中。我还撰写了几篇文章来解释其工作原理。\n\n- 学习框架围绕序列或帧环境构建，支持ML20M等数据集。Seq和Frame决定了序列数据的长度类型，seq是完全动态长度的序列数据（开发中），而frame则是静态帧。\n\n- 状态表示模块提供多种方法。对于序列状态表示，可以使用LSTM\u002FRNN\u002FGRU（开发中）。\n\n- 使用Modin（Dask \u002F Ray）实现并行数据加载及缓存。\n\n- 支持PyTorch 1.7，并可进行TensorBoard可视化。\n\n- 未来还将添加新的数据集。\n\n## 📚 Medium文章\n\n该仓库分为两部分：库（.\u002Frecnn）和示例区（.\u002Fexamples），后者用于说明如何使用某些功能。\n\n - 如果您熟悉推荐系统但对强化学习了解不多，以下内容几乎涵盖了入门所需的一切：\n\n\u003Cp align=\"center\"> \n   \u003Ca href=\"https:\u002F\u002Ftowardsdatascience.com\u002Freinforcement-learning-ddpg-and-td3-for-news-recommendation-d3cddec26011\">\n        \u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fawarebayes_RecNN_readme_afff6d862cd8.png\"  width=\"70%\">\n    \u003C\u002Fa>\n\u003C\u002Fp>\n\n - REINFORCE推荐系统中的Top-K离策略修正：\n\u003Cp align=\"center\"> \n   \u003Ca href=\"https:\u002F\u002Ftowardsdatascience.com\u002Ftop-k-off-policy-correction-for-a-reinforce-recommender-system-e34381dceef8\">\n        \u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fawarebayes_RecNN_readme_b9f12baaa333.png\" width=\"70%\">\n    \u003C\u002Fa>\n\u003C\u002Fp>\n\n\n## 已加入\u002F将加入的算法\n\n\u003Cp align=\"center\"> \n    \n| 算法                             | 论文                            | 代码                       |\n|---------------------------------------|----------------------------------|----------------------------|\n| 深度Q学习（概念验证）                 | https:\u002F\u002Farxiv.org\u002Fabs\u002F1312.5602  | examples\u002F0. Embeddings\u002F 1.DQN |\n| 深度确定性策略梯度                   | https:\u002F\u002Farxiv.org\u002Fabs\u002F1509.02971 | examples\u002F1.Vanilla RL\u002FDDPG |\n| 双延迟DDPG（TD3）                    | https:\u002F\u002Farxiv.org\u002Fabs\u002F1802.09477 | examples\u002F1.Vanilla RL\u002FTD3  |\n| 软演员-评论家算法                     | https:\u002F\u002Farxiv.org\u002Fabs\u002F1801.01290 | examples\u002F1.Vanilla RL\u002FSAC  |\n| 批量约束Q学习                        | https:\u002F\u002Farxiv.org\u002Fabs\u002F1812.02900 | examples\u002F99.To be released\u002FBCQ |\n| REINFORCE Top-K离策略修正              | https:\u002F\u002Farxiv.org\u002Fabs\u002F1812.02353 | examples\u002F2. REINFORCE TopK |\n\n\u003C\u002Fp>\n\n### ‍我参考过的仓库\n\n -  Sfujim的[BCQ](https:\u002F\u002Fgithub.com\u002Fsfujim\u002FBCQ)（尚未实现）\n -  Higgsfield的[RL Adventure 2](https:\u002F\u002Fgithub.com\u002Fhiggsfield\u002FRL-Adventure-2)（极大启发）\n\n### 🤔 这是什么\n\n\u003Cp align=\"center\"> \n这是我的学校项目。它专注于使用强化学习进行个性化新闻推荐。其主要特点在于尝试解决在线离策略学习问题，并采用动态生成的物品嵌入。此外，由于我们使用的是数据集，因此不存在探索机制。在示例部分，我利用Google的BERT模型处理ML20M数据集，从电影描述中提取上下文信息，形成潜在向量表示。之后，您可以对新出现的、从未见过的物品应用相同的转换（因此嵌入是动态生成的）。如果您不想费心处理嵌入流程，我还提供了一个作为概念验证的DQN嵌入生成器。\n\u003C\u002Fp>\n\n\n## ✋ 入门指南\n\u003Cp align=\"center\"> \n\u003Ca href=\"https:\u002F\u002Fcolab.research.google.com\u002Fdrive\u002F1xWX4JQvlcx3mizwL4gB0THEyxw6LsXTL\">\u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fawarebayes_RecNN_readme_6568ab2a8b69.png\">\u003C\u002Fa>\n\u003C\u002Fp>\n\n\u003Cp align=\"center\"> \n\u003Ca href=\"https:\u002F\u002Fcolab.research.google.com\u002Fdrive\u002F1xWX4JQvlcx3mizwL4gB0THEyxw6LsXTL\">\u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fawarebayes_RecNN_readme_da52ea3d5ab3.png\">\u003C\u002Fa>\n\u003C\u002Fp>\n\n\n附注：图片可点击。直接链接如下：\n\u003Ca href=\"https:\u002F\u002Fcolab.research.google.com\u002Fdrive\u002F1xWX4JQvlcx3mizwL4gB0THEyxw6LsXTL\">\n    \u003Cimg src=\"https:\u002F\u002Fcolab.research.google.com\u002Fassets\u002Fcolab-badge.svg\" \u002F>\n\u003C\u002Fa>\n\n欲了解更多关于recnn的信息，请阅读文档： \u003Ca href=\"https:\u002F\u002Frecnn.readthedocs.io\">recnn.readthedocs.io\u003C\u002Fa> \n\n### ⚙️ 安装\n\n```\npip install git+git:\u002F\u002Fgithub.com\u002Fawarebayes\u002FRecNN.git\n```\n\nPyPi版本正在筹备中……\n\n### 🚀 尝试演示\n\n我搭建了一个[Streamlit](https:\u002F\u002Fwww.streamlit.io\u002F)演示，以展示其功能。其中有一个“给我推荐一部电影”的功能！请注意，当您**评分**电影时，得分会如何变化。刚开始时，电影未被评分（默认评分为5\u002F10），得分约为~40（欧氏距离），但随着您不断评分，得分会降至10以下，这表明预测更加个性化和精准。您还可以测试多样性、查看推荐的相关性、成对距离以及预测的准确性。\n\n运行方式如下：\n```\ngit clone git@github.com:awarebayes\u002FRecNN.git \ncd RecNN && streamlit run examples\u002Fstreamlit_demo.py\n```\n\n[Docker镜像在此处可用](https:\u002F\u002Fgithub.com\u002Fawarebayes\u002Frecnn-demo)\n\n## 📁 下载资源\n -  [MovieLens 20M](https:\u002F\u002Fgrouplens.org\u002Fdatasets\u002Fmovielens\u002F20m\u002F)\n -  [电影嵌入](https:\u002F\u002Fdrive.google.com\u002Fopen?id=1EQ_zXBR3DKpmJR3jBgLvt-xoOvArGMsL)\n -  [其他数据](https:\u002F\u002Fdrive.google.com\u002Fopen?id=1TclEmCnZN_Xkl3TfUXL5ivPYmLnIjQSu)\n -  [解析数据（omdb,tmdb）](https:\u002F\u002Fdrive.google.com\u002Fopen?id=1t0LNCbqLjiLkAMFwtP8OIYU-zPUCNAjK)\n\n## 📁 [下载模型](https:\u002F\u002Fdrive.google.com\u002Ffile\u002Fd\u002F1goGa15XZmDAp2msZvRi2v_1h9xfmnhz7\u002Fview?usp=sharing)\n\n## 📄 引用\n如果您在学术出版物中使用了 RecNN，请使用以下 BibTeX 格式进行引用：\n\n```\n@misc{RecNN,\n  author = {M Scherbina},\n  title = {RecNN: 使用 PyTorch 的强化学习推荐},\n  year = {2019},\n  publisher = {GitHub},\n  journal = {GitHub 仓库},\n  howpublished = {\\url{https:\u002F\u002Fgithub.com\u002Fawarebayes\u002FRecNN}},\n}\n```","# RecNN 快速上手指南\n\nRecNN 是一个基于 PyTorch 的开源库，专注于利用强化学习（Reinforcement Learning）进行个性化新闻\u002F物品推荐。其核心特色是支持在线离策学习（Online Off-Policy Learning）以及动态生成的物品嵌入（Item Embeddings）。\n\n## 环境准备\n\n在开始之前，请确保您的开发环境满足以下要求：\n\n*   **操作系统**: Linux, macOS 或 Windows\n*   **Python 版本**: 建议 Python 3.6+\n*   **核心依赖**:\n    *   PyTorch >= 1.7\n    *   Streamlit (用于运行演示)\n    *   Modin (可选，用于并行数据加载)\n*   **硬件建议**: 推荐使用 NVIDIA GPU 以加速模型训练，但 CPU 亦可运行示例。\n\n## 安装步骤\n\n您可以通过直接安装 GitHub 仓库的最新版本来获取 RecNN（PyPI 版本即将发布）。\n\n### 方式一：直接安装（推荐）\n\n```bash\npip install git+git:\u002F\u002Fgithub.com\u002Fawarebayes\u002FRecNN.git\n```\n\n> **提示**：国内用户若下载速度较慢，可尝试配置 pip 使用国内镜像源（如清华源、阿里源）加速基础依赖的安装，但仓库源码仍需从 GitHub 拉取。\n> ```bash\n> pip install -i https:\u002F\u002Fpypi.tuna.tsinghua.edu.cn\u002Fsimple git+git:\u002F\u002Fgithub.com\u002Fawarebayes\u002FRecNN.git\n> ```\n\n### 方式二：克隆源码运行演示\n\n如果您希望运行官方提供的 Streamlit 演示项目，需要克隆完整仓库：\n\n```bash\ngit clone git@github.com:awarebayes\u002FRecNN.git \ncd RecNN\npip install -r requirements.txt # 如果存在 requirements 文件，否则手动安装 streamlit\n```\n\n## 基本使用\n\nRecNN 提供了高度灵活的抽象层级，您可以直接调用完整算法，也可以自定义网络结构和数据加载器。\n\n### 1. 快速体验演示 (Demo)\n\n安装完成后，您可以立即运行内置的电影推荐演示，观察强化学习代理如何根据用户的评分反馈调整推荐策略：\n\n```bash\nstreamlit run examples\u002Fstreamlit_demo.py\n```\n*运行后浏览器将自动打开，您可以尝试对电影进行评分，观察推荐分数的变化。*\n\n### 2. 代码使用示例\n\nRecNN 允许您像使用标准 PyTorch 模块一样使用强化学习算法。以下是一个简化的概念示例，展示如何导入算法并进行学习：\n\n```python\nimport recnn\nfrom recnn import ddpg # 导入具体的算法，例如 DDPG\n\n# 初始化环境与模型 (具体参数需参考文档或示例)\n# 这里假设您已经准备好了符合库要求的数据加载器 (loader) 和环境 (env)\nmodel = ddpg.DDPG(state_dim, action_dim, hidden_dim)\n\n# 核心学习循环示例\n# batch 是从您的数据加载器中获取的一批交互数据 (state, action, reward, next_state, done)\nbatch = loader.get_batch() \n\n# 执行一步学习\nloss = model.learn(batch)\n\nprint(f\"Training loss: {loss}\")\n```\n\n### 3. 进阶用法提示\n\n*   **算法支持**: 库中已实现 DQN, DDPG, TD3, SAC, REINFORCE (Top-K Off-Policy Correction) 等主流算法。\n*   **状态表示**: 支持使用 LSTM\u002FRNN\u002FGRU 处理序列状态数据。\n*   **数据加载**: 支持通过 Modin (基于 Dask\u002FRay) 进行并行数据加载和缓存，适用于 ML-20M 等大型数据集。\n*   **可视化**: 原生支持 Tensorboard 进行训练过程可视化。\n\n更多详细用法、网络结构定义及自定义环境构建，请参考官方文档：[recnn.readthedocs.io](https:\u002F\u002Frecnn.readthedocs.io) 或查看仓库中的 `examples` 目录。","某新闻平台算法团队正致力于将传统的静态推荐系统升级为能实时响应用户点击行为的强化学习模型，以解决用户兴趣快速漂移的问题。\n\n### 没有 RecNN 时\n- 开发人员需从零搭建复杂的强化学习推荐架构，手动处理动态生成的物品嵌入（Item Embeddings），代码冗余且极易出错。\n- 面对在线离策略（Off-policy）学习难题，缺乏现成的校正算法（如 Top-K Correction），导致模型在利用历史数据训练时偏差严重，推荐准确率难以提升。\n- 序列状态表示（State Representation）需要自行编写 LSTM 或 GRU 模块来捕捉用户阅读历史，调试周期长且难以复用。\n- 数据加载效率低下，缺乏并行处理机制，无法高效支撑 ML20M 级别的大规模序列数据训练。\n- 算法实现与业务逻辑耦合紧密，若想切换 DDPG 或 TD3 等不同算法，往往需要重构大量底层代码。\n\n### 使用 RecNN 后\n- 直接调用 RecNN 内置的 SOTA 算法（如 TD3、SAC），库自动处理动态嵌入生成，纯模型定义让核心逻辑清晰可见，开发效率提升数倍。\n- 内置先进的离策略校正机制，有效利用历史交互数据进行安全训练，显著降低了探索成本并提升了新闻推荐的即时相关性。\n- 灵活的状态表示模块支持一键切换 LSTM\u002FRNN\u002FGRU，轻松适配不同长度的用户行为序列，快速捕捉兴趣变化。\n- 集成 Modin 并行数据加载与缓存技术，大幅加速大规模序列数据的预处理过程，完美适配 PyTorch 1.7 环境。\n- 提供高度抽象的接口，既可一键运行完整算法，也能拆解网络与学习函数进行自定义组合，轻松在不同强化学习策略间自由切换。\n\nRecNN 通过封装复杂的强化学习细节并提供灵活的抽象层级，让新闻推荐系统从“静态匹配”进化为“动态决策”，大幅降低了前沿算法的落地门槛。","https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fawarebayes_RecNN_613a26ed.png","awarebayes","Mikhail Scherbina","https:\u002F\u002Foss.gittoolsai.com\u002Favatars\u002Fawarebayes_c459d06b.jpg","Inference & Infra @ GLAM | \r\ncreator of RecNN |\r\n TDS writer","Glam Labs","Bangkok, Thailand",null,"https:\u002F\u002Fawarebayes.github.io\u002F","https:\u002F\u002Fgithub.com\u002Fawarebayes",[82],{"name":83,"color":84,"percentage":85},"Python","#3572A5",100,588,113,"2026-04-10T07:47:18","Apache-2.0","未说明","未说明 (项目基于 PyTorch，支持 GPU 加速，但 README 未指定具体型号或显存要求)",{"notes":93,"python":90,"dependencies":94},"该项目是一个用于个性化新闻推荐的强化学习库。支持通过 Modin (Dask\u002FRay) 进行并行数据加载。提供 Streamlit 演示程序。部分示例使用了 BERT 提取上下文信息（需额外安装 transformers 等库，但核心依赖未强制列出）。可通过 Google Colab 直接运行示例。",[95,96,97,98],"torch>=1.7","modin","streamlit","tensorboard",[14],[101,102,103,104,105,106,107,108],"pytorch","reinforcement-learning","news-recommendation","pytorch-rl","recommender-system","recommendation-system","library","toolkit","2026-03-27T02:49:30.150509","2026-04-18T09:19:26.987528",[112,117,122,126,131,136],{"id":113,"question_zh":114,"answer_zh":115,"source_url":116},39476,"Top-K Off-Policy 校正功能何时实现？是否有相关代码？","该功能已实现。用户可以参考项目 examples 目录下的 Notebook 示例：'2. REINFORCE TopK Off Policy Correction\u002F2. Reinforce Off Policy Correction.ipynb'。此外，维护者曾发布过相关的技术文章草稿和策略损失对比图，展示了校正前后的效果差异。","https:\u002F\u002Fgithub.com\u002Fawarebayes\u002FRecNN\u002Fissues\u002F3",{"id":118,"question_zh":119,"answer_zh":120,"source_url":121},39474,"如何为特定用户生成推荐？","在基于强化学习的推荐系统中，生成推荐时只需选择概率最高的动作（物品）。即从 Actor 网络输出的动作分布中，取具有最高概率值的项作为推荐结果。","https:\u002F\u002Fgithub.com\u002Fawarebayes\u002FRecNN\u002Fissues\u002F23",{"id":123,"question_zh":124,"answer_zh":125,"source_url":121},39475,"是否应该使用 Beta 网络对推荐动作进行折扣处理？","不需要复杂的折扣逻辑。维护者确认，直接选取概率最高的动作即可，无需额外通过 Beta 网络进行折扣操作。",{"id":127,"question_zh":128,"answer_zh":129,"source_url":130},39477,"遇到 'Expected sequence or array-like, got NoneType' 错误如何解决？","该错误通常发生在自定义数据集预处理函数（prepare_dataset）中。常见原因是函数内部变量命名错误或未正确返回数据序列。请检查传递给 FrameEnv 的 prepare_dataset 函数，确保其正确提取并返回了数组格式的物品序列和评分数据，且没有因变量名拼写错误导致返回 None。","https:\u002F\u002Fgithub.com\u002Fawarebayes\u002FRecNN\u002Fissues\u002F18",{"id":132,"question_zh":133,"answer_zh":134,"source_url":135},39478,"学习深度强化学习（Deep RL）有哪些推荐的资源或路线图？","维护者推荐以下学习资源：1. Yandex 的 Practical RL 课程（GitHub 上有交互式 Notebook）；2. Andrej Karpathy 的博客；3. Jonathan Hui 关于 RL 的系列文章；4. DLSchool 网站及其 GitHub 仓库。这些资源涵盖了从基础到实战的内容。","https:\u002F\u002Fgithub.com\u002Fawarebayes\u002FRecNN\u002Fissues\u002F2",{"id":137,"question_zh":138,"answer_zh":139,"source_url":135},39479,"该项目是否是论文《Deep Reinforcement Learning based Recommendation with Explicit User-Item Interactions Modeling》的完整实现？","是的，该项目旨在实现该论文的核心算法。维护者在回复中确认了代码与论文的对应关系，并提供了相关的数据处理和环境构建示例，帮助用户复现论文中的显式用户 - 物品交互建模过程。",[141,146,151],{"id":142,"version":143,"summary_zh":144,"released_at":145},315421,"0.2","### 阅读文章：\n\n\u003Cp align=\"center\"> \n   \u003Ca href=\"https:\u002F\u002Ftowardsdatascience.com\u002Ftop-k-off-policy-correction-for-a-reinforce-recommender-system-e34381dceef8\">\n        \u003Cimg src=\"https:\u002F\u002Fraw.githubusercontent.com\u002Fawarebayes\u002FRecNN\u002Fmaster\u002Fres\u002Farticle_2.png\">\n    \u003C\u002Fa>\n\u003C\u002Fp>\n\n### 查看笔记本！\n- [recnn 内部 REINFORCE 的工作原理（可选）.ipynb](https:\u002F\u002Fgithub.com\u002Fawarebayes\u002FRecNN\u002Fblob\u002Fmaster\u002Fexamples\u002F2.%20REINFORCE%20TopK%20Off%20Policy%20Correction\u002F0.%20Inner%20workings%20of%20REINFORCE%20inside%20recnn%20(optional).ipynb)\n- [使用 RecNN 的基础 REINFORCE.ipynb](https:\u002F\u002Fgithub.com\u002Fawarebayes\u002FRecNN\u002Fblob\u002Fmaster\u002Fexamples\u002F2.%20REINFORCE%20TopK%20Off%20Policy%20Correction\u002F1.%20Basic%20Reinforce%20with%20RecNN.ipynb)\n- [REINFORCE 离策略校正.ipynb](https:\u002F\u002Fgithub.com\u002Fawarebayes\u002FRecNN\u002Fblob\u002Fmaster\u002Fexamples\u002F2.%20REINFORCE%20TopK%20Off%20Policy%20Correction\u002F2.%20Reinforce%20Off%20Policy%20Correction.ipynb) \t\n- [TopK REINFORCE 离策略校正.ipynb](https:\u002F\u002Fgithub.com\u002Fawarebayes\u002FRecNN\u002Fblob\u002Fmaster\u002Fexamples\u002F2.%20REINFORCE%20TopK%20Off%20Policy%20Correction\u002F3.%20TopK%20Reinforce%20Off%20Policy%20Correction.ipynb)\n\n所有笔记本都位于 RecNN\u002Fexamples\u002F2. REINFORCE TopK Off Policy Correction\u002F 目录下。\n\n### 使用 TensorBoard 可视化在线查看\n\n\u003Ca href=\"https:\u002F\u002Fcolab.research.google.com\u002Fdrive\u002F1bCAJG_lGQg9dBGp2InvVygworHcqETlC?\">![截图](https:\u002F\u002Fuser-images.githubusercontent.com\u002F42784580\u002F70438563-2882bb80-1a9f-11ea-823b-1ae803bfb903.png)\u003C\u002Fa>\n","2019-12-09T13:19:50",{"id":147,"version":148,"summary_zh":149,"released_at":150},315422,"0.1","呼，这真是一段不平凡的旅程。\n## 功能：\n- 已添加并测试了基础算法\n- 环境现已完全重构，可直接用于您的数据\n- 在线教程\n- Code Climate 对我的代码评分为 B\n- 编写了 CircleCI 测试\n- 文档已初具雏形，不久后将更加完善。\n## 即将推出：\n- PyPI 页面\n- BCQ 实现将进行压力测试和优化调整\n- TopK 离策略校正","2019-10-28T19:15:21",{"id":152,"version":153,"summary_zh":154,"released_at":155},315423,"0.0.1","# RecNN 环境包已创建\n1. 目前，我已经从笔记本中移除了所有冗余代码，以便您能够专注于实现本身。代码已被拆分并迁移到以下模块中：调试器、绘图工具、优化器（目前仅包含 Radam 的副本）、模型（策略网络、价值网络、BCQ 生成器、BCQ 扰动器）以及数据加载器。各模型的学习函数将在下个版本中推出。\n2. 已完全移除受版权保护的 ML20M 数据集，并实现了一个自定义数据加载器，原生支持 ML20M 数据集及其他具有相似数据结构的数据集。目前该加载器仅支持 Pandas，后续将增加对 Dask 和 Numba 的支持。\n\n目前，本仓库仍处于 Alpha 阶段。接下来我正在推进的工作包括：\n1. 实现与 reco-gym [github.com\u002Fcriteo-research\u002Freco-gym] 的无缝集成。\n2. 算法的 LSTM 版本。\n3. 基于自回归归一化流的高级 BCQ VAE 生成器实现。","2019-08-30T09:39:28"]