[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"similar-inspirehep--magpie":3,"tool-inspirehep--magpie":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 真正成长为懂上",155373,2,"2026-04-14T11:34:08",[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":72,"owner_avatar_url":73,"owner_bio":74,"owner_company":74,"owner_location":74,"owner_email":75,"owner_twitter":74,"owner_website":76,"owner_url":77,"languages":78,"stars":83,"forks":84,"last_commit_at":85,"license":86,"difficulty_score":32,"env_os":87,"env_gpu":88,"env_ram":89,"env_deps":90,"category_tags":95,"github_topics":96,"view_count":32,"oss_zip_url":74,"oss_zip_packed_at":74,"status":17,"created_at":105,"updated_at":106,"faqs":107,"releases":145},7535,"inspirehep\u002Fmagpie","magpie","Deep neural network framework for multi-label text classification","Magpie 是一款专为多标签文本分类设计的深度学习框架，由欧洲核子研究中心（CERN）开发，最初用于给高能物理摘要自动分配学科类别并提取关键词。它解决了传统方法难以从单篇文档中精准识别多个相关主题的技术难题，能够学习标注数据中的规律，进而对未知文本进行多维度的标签预测。\n\n这款工具特别适合需要处理大量文献归类、内容打标或关键词提取任务的开发者与研究人员。用户只需准备成对的文本文件与标签文件，Magpie 即可自动完成词向量训练、数据归一化及模型构建的全流程。其技术亮点在于灵活集成了 Word2Vec 词向量表示与 Keras 深度学习模型，支持自定义向量维度，并提供内存高效的批量训练模式以应对大规模数据集。此外，Magpie 允许将训练好的词向量、缩放矩阵及模型独立保存与加载，便于在不同项目中复用已学到的语言特征，显著提升了研发效率与模型部署的便捷性。","![image](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Finspirehep_magpie_readme_b89fc2d1b607.png)\n\nMagpie is a deep learning tool for multi-label text classification. It learns on the training corpus to assign labels to arbitrary text and can be used to predict those labels on unknown data. It has been developed at CERN to assign subject categories to High Energy Physics abstracts and extract keywords from them.\n\n## Very short introduction\n```\n>>> magpie = Magpie()\n>>> magpie.init_word_vectors('\u002Fpath\u002Fto\u002Fcorpus', vec_dim=100)\n>>> magpie.train('\u002Fpath\u002Fto\u002Fcorpus', ['label1', 'label2', 'label3'], epochs=3)\nTraining...\n>>> magpie.predict_from_text('Well, that was quick!')\n[('label1', 0.96), ('label3', 0.65), ('label2', 0.21)]\n```\n\n\n## Short introduction\nTo train the model you need to have a large corpus of labeled data in a text format encoded as UTF-8. An example corpus can be found under data\u002Fhep-categories directory. Magpie looks for `.txt` files containing the text to predict on and corresponding `.lab` files with assigned labels in separate lines. A pair of files containing the labels and the text should have the same name and differ only in extensions e.g.\n\n```\n$ ls data\u002Fhep-categories\n1000222.lab 1000222.txt 1000362.lab 1000362.txt 1001810.lab 1001810.txt ...\n```\n\nBefore you train the model, you need to build appropriate word vector representations for your corpus. In theory, you can train them on a different corpus or reuse already trained ones ([tutorial](http:\u002F\u002Frare-technologies.com\u002Fword2vec-tutorial\u002F)), however Magpie enables you to do that as well.\n```python\nfrom magpie import Magpie\n\nmagpie = Magpie()\nmagpie.train_word2vec('data\u002Fhep-categories', vec_dim=100)\n```\n\nThen you need to fit a scaling matrix to normalize input data, it is specific to the trained word2vec representation. Here's the one liner:\n\n```python\nmagpie.fit_scaler('data\u002Fhep-categories')\n```\n\nYou would usually want to combine those two steps, by simply running:\n```python\nmagpie.init_word_vectors('data\u002Fhep-categories', vec_dim=100)\n```\n\nIf you plan to reuse the trained word representations, you might want to save them and pass in the constructor to `Magpie` next time. For the training, just type:\n```python\nlabels = ['Gravitation and Cosmology', 'Experiment-HEP', 'Theory-HEP']\nmagpie.train('data\u002Fhep-categories', labels, test_ratio=0.2, epochs=30)\n```\nBy providing the `test_ratio` argument, the model splits data into train & test datasets (in this example into 80\u002F20 ratio) and evaluates itself after every epoch displaying it's current loss and accuracy. The default value of `test_ratio` is 0 meaning that all the data will be used for training.\n\nIf your data doesn't fit into memory, you can also run `magpie.batch_train()` which has a similar API, but is more memory efficient.\n\nTrained models can be used for prediction with methods:\n```python\n>>> magpie.predict_from_file('data\u002Fhep-categories\u002F1002413.txt')\n[('Experiment-HEP', 0.47593361),\n ('Gravitation and Cosmology', 0.055745006),\n ('Theory-HEP', 0.02692855)]\n\n>>> magpie.predict_from_text('Stephen Hawking studies black holes')\n[('Gravitation and Cosmology', 0.96627593),\n ('Experiment-HEP', 0.64958507),\n ('Theory-HEP', 0.20917746)]\n```\n\n## Saving & loading the model\nA `Magpie` object consists of three components - the word2vec mappings, a scaler and a `keras` model. In order to train Magpie you can either provide the word2vec mappings and a scaler in advance or let the program compute them for you on the training data. Usually you would want to train them yourself on a full dataset and reuse them afterwards. You can use the provided functions for that purpose:\n\n```python\nmagpie.save_word2vec_model('\u002Fsave\u002Fmy\u002Fembeddings\u002Fhere')\nmagpie.save_scaler('\u002Fsave\u002Fmy\u002Fscaler\u002Fhere', overwrite=True)\nmagpie.save_model('\u002Fsave\u002Fmy\u002Fmodel\u002Fhere.h5')\n```\n\nWhen you want to reinitialize your trained model, you can run:\n\n```python\nmagpie = Magpie(\n    keras_model='\u002Fsave\u002Fmy\u002Fmodel\u002Fhere.h5',\n    word2vec_model='\u002Fsave\u002Fmy\u002Fembeddings\u002Fhere',\n    scaler='\u002Fsave\u002Fmy\u002Fscaler\u002Fhere',\n    labels=['cat', 'dog', 'cow']\n)\n```\nor just pass the objects directly!\n\n## Installation\n\nThe package is not on PyPi, but you can get it directly from GitHub:\n```\n$ pip install git+https:\u002F\u002Fgithub.com\u002Finspirehep\u002Fmagpie.git@v2.1.1\n```\nIf you encounter any problems with the installation, make sure to install the correct versions of dependencies listed in `setup.py` file.\n\n## Disclaimer & citation\nThe neural network models used within Magpie are based on work done by [Yoon Kim](https:\u002F\u002Farxiv.org\u002Fabs\u002F1408.5882) and subsequently [Mark Berger](https:\u002F\u002Fcs224d.stanford.edu\u002Freports\u002FBergerMark.pdf).\n\n## Contact\nIf you have any problems, feel free to open an issue. We'll do our best to help :+1:\n","![image](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Finspirehep_magpie_readme_b89fc2d1b607.png)\n\nMagpie 是一款用于多标签文本分类的深度学习工具。它通过训练语料库学习，能够为任意文本分配标签，并可用于对未知数据进行标签预测。该工具由欧洲核子研究中心（CERN）开发，主要用于为高能物理摘要分配主题类别并从中提取关键词。\n\n## 极简介绍\n```python\n>>> magpie = Magpie()\n>>> magpie.init_word_vectors('\u002Fpath\u002Fto\u002Fcorpus', vec_dim=100)\n>>> magpie.train('\u002Fpath\u002Fto\u002Fcorpus', ['label1', 'label2', 'label3'], epochs=3)\n训练中...\n>>> magpie.predict_from_text('嗯，这速度真快！')\n[('label1', 0.96), ('label3', 0.65), ('label2', 0.21)]\n```\n\n\n## 简介\n要训练模型，您需要一个采用 UTF-8 编码的文本格式标注数据语料库。示例语料库可在 `data\u002Fhep-categories` 目录下找到。Magpie 会查找包含待预测文本的 `.txt` 文件以及对应、每行一个标签的 `.lab` 文件。标签文件和文本文件应具有相同的文件名，仅扩展名不同，例如：\n\n```\n$ ls data\u002Fhep-categories\n1000222.lab 1000222.txt 1000362.lab 1000362.txt 1001810.lab 1001810.txt ...\n```\n\n在训练模型之前，您需要为语料库构建合适的词向量表示。理论上，您可以使用其他语料库来训练词向量，或复用已训练好的词向量（[教程](http:\u002F\u002Frare-technologies.com\u002Fword2vec-tutorial\u002F)），不过 Magpie 也支持直接完成这一过程。\n```python\nfrom magpie import Magpie\n\nmagpie = Magpie()\nmagpie.train_word2vec('data\u002Fhep-categories', vec_dim=100)\n```\n\n接下来，您需要拟合一个缩放矩阵以归一化输入数据，该矩阵与所训练的 Word2Vec 表示密切相关。只需一行代码即可完成：\n```python\nmagpie.fit_scaler('data\u002Fhep-categories')\n```\n\n通常，您可以将这两个步骤合并执行，只需运行：\n```python\nmagpie.init_word_vectors('data\u002Fhep-categories', vec_dim=100)\n```\n\n如果您计划复用已训练好的词向量表示，可以将其保存下来，并在下次实例化 `Magpie` 时传入构造函数。然后，只需输入以下内容即可开始训练：\n```python\nlabels = ['引力与宇宙学', '实验-高能物理', '理论-高能物理']\nmagpie.train('data\u002Fhep-categories', labels, test_ratio=0.2, epochs=30)\n```\n\n通过提供 `test_ratio` 参数，模型会将数据划分为训练集和测试集（本例中为 80\u002F20 的比例），并在每个 epoch 结束后评估自身表现，显示当前的损失值和准确率。`test_ratio` 的默认值为 0，表示所有数据都将用于训练。\n\n如果您的数据无法完全加载到内存中，也可以使用 `magpie.batch_train()` 方法，其 API 类似，但更节省内存。\n\n训练好的模型可以通过以下方法进行预测：\n```python\n>>> magpie.predict_from_file('data\u002Fhep-categories\u002F1002413.txt')\n[('实验-高能物理', 0.47593361),\n ('引力与宇宙学', 0.055745006),\n ('理论-高能物理', 0.02692855)]\n\n>>> magpie.predict_from_text('史蒂芬·霍金研究黑洞')\n[('引力与宇宙学', 0.96627593),\n ('实验-高能物理', 0.64958507),\n ('理论-高能物理', 0.20917746)]\n```\n\n## 模型的保存与加载\n`Magpie` 对象由三个部分组成：Word2Vec 映射、缩放器和 Keras 模型。为了训练 Magpie，您可以提前提供 Word2Vec 映射和缩放器，也可以让程序根据训练数据自行计算。通常，建议您在完整数据集上独立训练这些组件，并在后续使用中重复利用它们。为此，您可以使用提供的函数：\n\n```python\nmagpie.save_word2vec_model('\u002Fsave\u002Fmy\u002Fembeddings\u002Fhere')\nmagpie.save_scaler('\u002Fsave\u002Fmy\u002Fscaler\u002Fhere', overwrite=True)\nmagpie.save_model('\u002Fsave\u002Fmy\u002Fmodel\u002Fhere.h5')\n```\n\n当您希望重新初始化已训练好的模型时，可以运行：\n```python\nmagpie = Magpie(\n    keras_model='\u002Fsave\u002Fmy\u002Fmodel\u002Fhere.h5',\n    word2vec_model='\u002Fsave\u002Fmy\u002Fembeddings\u002Fhere',\n    scaler='\u002Fsave\u002Fmy\u002Fscaler\u002Fhere',\n    labels=['猫', '狗', '牛']\n)\n```\n或者直接传入这些对象！\n\n## 安装\n该软件包尚未发布到 PyPI，但您可以直接从 GitHub 获取：\n```\n$ pip install git+https:\u002F\u002Fgithub.com\u002Finspirehep\u002Fmagpie.git@v2.1.1\n```\n\n如果在安装过程中遇到任何问题，请确保安装 `setup.py` 文件中列出的正确版本依赖项。\n\n## 免责声明与引用\nMagpie 中使用的神经网络模型基于 [Yoon Kim](https:\u002F\u002Farxiv.org\u002Fabs\u002F1408.5882) 的工作，随后又受到 [Mark Berger](https:\u002F\u002Fcs224d.stanford.edu\u002Freports\u002FBergerMark.pdf) 的影响。\n\n## 联系方式\n如果您有任何问题，欢迎随时提交 issue。我们将竭诚为您提供帮助 :+1:","# Magpie 快速上手指南\n\nMagpie 是一款用于多标签文本分类的深度学习工具，由 CERN 开发，主要用于高能物理摘要的主题分类和关键词提取。它基于训练语料学习标签分配，并可对未知文本进行预测。\n\n## 环境准备\n\n- **系统要求**：支持 Python 3 的操作系统（Linux\u002FmacOS\u002FWindows）\n- **前置依赖**：\n  - Python 3.x\n  - `pip` 包管理工具\n  - 确保已安装 `git`（用于从 GitHub 安装）\n  - 依赖库将在安装时自动解决（包括 `keras`, `gensim`, `scikit-learn` 等，具体版本参考项目 `setup.py`）\n\n> 💡 提示：若在国内网络环境下安装较慢，可配置 pip 使用国内镜像源（如清华、阿里云等），例如：\n> ```bash\n> pip install -i https:\u002F\u002Fpypi.tuna.tsinghua.edu.cn\u002Fsimple ...\n> ```\n\n## 安装步骤\n\n由于 Magpie 未发布到 PyPI，需直接从 GitHub 安装指定版本：\n\n```bash\npip install git+https:\u002F\u002Fgithub.com\u002Finspirehep\u002Fmagpie.git@v2.1.1\n```\n\n如遇安装问题，请检查 `setup.py` 中列出的依赖版本是否冲突，并手动安装兼容版本。\n\n## 基本使用\n\n### 1. 初始化与训练\n\n准备标注数据：每个文本文件（`.txt`）需对应一个标签文件（`.lab`），文件名相同仅扩展名不同。例如：\n```\n1000222.txt  1000222.lab\n1000362.txt  1000362.lab\n```\n\n```python\nfrom magpie import Magpie\n\n# 初始化模型\nmagpie = Magpie()\n\n# 构建词向量并拟合缩放矩阵（一步完成）\nmagpie.init_word_vectors('data\u002Fhep-categories', vec_dim=100)\n\n# 定义标签列表并开始训练\nlabels = ['Gravitation and Cosmology', 'Experiment-HEP', 'Theory-HEP']\nmagpie.train('data\u002Fhep-categories', labels, test_ratio=0.2, epochs=30)\n```\n\n> `test_ratio=0.2` 表示将 20% 数据用于验证，其余用于训练；设为 0 则全量训练。\n\n### 2. 文本预测\n\n训练完成后，可直接对文件或字符串进行预测：\n\n```python\n# 从文件预测\nresults = magpie.predict_from_file('data\u002Fhep-categories\u002F1002413.txt')\nprint(results)\n# 输出示例：[('Experiment-HEP', 0.4759), ('Gravitation and Cosmology', 0.0557), ...]\n\n# 从文本字符串预测\nresults = magpie.predict_from_text('Stephen Hawking studies black holes')\nprint(results)\n# 输出示例：[('Gravitation and Cosmology', 0.9663), ('Experiment-HEP', 0.6496), ...]\n```\n\n### 3. 模型保存与加载（可选）\n\n训练后可持久化模型组件以便复用：\n\n```python\nmagpie.save_word2vec_model('\u002Fpath\u002Fto\u002Fembeddings')\nmagpie.save_scaler('\u002Fpath\u002Fto\u002Fscaler', overwrite=True)\nmagpie.save_model('\u002Fpath\u002Fto\u002Fmodel.h5')\n```\n\n重新加载时：\n\n```python\nmagpie = Magpie(\n    keras_model='\u002Fpath\u002Fto\u002Fmodel.h5',\n    word2vec_model='\u002Fpath\u002Fto\u002Fembeddings',\n    scaler='\u002Fpath\u002Fto\u002Fscaler',\n    labels=['Gravitation and Cosmology', 'Experiment-HEP', 'Theory-HEP']\n)\n```\n\n---\n\n现在你已成功使用 Magpie 完成多标签文本分类任务的端到端流程！","某高能物理研究团队每天需处理数千篇新提交的论文摘要，必须将其精准归类到“引力与宇宙学”、“实验高能物理”等特定主题库中以便检索。\n\n### 没有 magpie 时\n- 依赖人工专家逐篇阅读摘要并手动打标，耗时费力且难以应对海量数据增长。\n- 不同标注人员对分类标准理解不一，导致标签体系混乱，同一类研究被贴上不同标签。\n- 无法从文本中自动提取关键术语，遗漏重要元数据，降低了后续文献挖掘的效率。\n- 新增类别或调整分类体系时，需要重新培训人员并回溯历史数据，成本极高。\n\n### 使用 magpie 后\n- 利用深度神经网络自动学习训练语料，秒级完成对新摘要的多标签预测，吞吐量提升百倍。\n- 基于统一的数学模型输出概率化标签（如 `('Gravitation', 0.96)`），消除了人为主观偏差，确保分类一致性。\n- 内置词向量训练与关键词提取能力，不仅能分类，还能自动识别摘要中的核心物理概念。\n- 支持模型持久化与增量更新，当物理学科出现新方向时，只需补充数据重新训练即可快速适配。\n\nmagpie 将原本需要数周的人工编目工作压缩至分钟级，同时通过标准化算法显著提升了高能物理文献库的整理质量与检索精度。","https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Finspirehep_magpie_b89fc2d1.png","inspirehep","https:\u002F\u002Foss.gittoolsai.com\u002Favatars\u002Finspirehep_06f0ed15.png",null,"feedback@inspirehep.net","http:\u002F\u002Finspirehep.net","https:\u002F\u002Fgithub.com\u002Finspirehep",[79],{"name":80,"color":81,"percentage":82},"Python","#3572A5",100,688,190,"2025-12-31T09:43:38","MIT","","未说明","未说明（若数据无法载入内存，需使用 batch_train 方法）",{"notes":91,"python":88,"dependencies":92},"该工具未在 PyPi 发布，需通过 GitHub 安装。运行前需要准备 UTF-8 编码的文本语料库及对应的标签文件。主要依赖 Keras 构建神经网络以及 Word2Vec 进行词向量训练。若数据集过大无法一次性载入内存，官方提供了批处理训练接口 (batch_train)。",[93,94],"keras","word2vec (通过 gensim 或类似库实现)",[14,35],[97,98,99,100,101,102,103,104],"neural-network","nlp","deep-learning","word2vec","classification","multi-label-classification","machine-learning","prediction","2026-03-27T02:49:30.150509","2026-04-15T06:51:07.827061",[108,113,118,123,128,132,137,141],{"id":109,"question_zh":110,"answer_zh":111,"source_url":112},33784,"训练模型时准确率是如何计算的？为什么训练准确率总是高于 90%？","在多标签文本分类中，准确率是基于模型预测与真实标签的匹配程度计算的。如果训练准确率异常高（如始终大于 90%），可能是因为数据集中某些标签出现频率过高，导致模型偏向这些标签。如果一个类别出现在超过一半的文本中，模型可能会对几乎所有输入都给出该类别的高分。此外，确保验证损失（val_loss）在下降是继续训练的依据；如果验证损失不再下降，应考虑使用 EarlyStopping 回调来防止过拟合。","https:\u002F\u002Fgithub.com\u002Finspirehep\u002Fmagpie\u002Fissues\u002F84",{"id":114,"question_zh":115,"answer_zh":116,"source_url":117},33785,"如何正确加载已训练的模型？使用 load_from_disk() 还是 MagpieModel 构造函数？","加载模型时，建议将 Keras 模型与其他组件分开处理。对于 Keras 模型部分，应使用 `model.keras_model.save()` 进行保存，并使用 `keras.models.load_model()` 进行加载。对于其他元素（如词汇表、标量器等），继续使用 `magpie.utils.save_to_disk()` 和 `magpie.utils.load_from_disk()`。避免使用 pickle 序列化 Keras 模型，因为这可能导致加载错误。","https:\u002F\u002Fgithub.com\u002Finspirehep\u002Fmagpie\u002Fissues\u002F70",{"id":119,"question_zh":120,"answer_zh":121,"source_url":122},33786,"train_word2vec 报错提示需要词汇表，但创建词汇表又需要先运行 train_word2vec，陷入死循环怎么办？","这是一个依赖顺序问题。首先确保安装了正确的依赖版本，推荐组合为：nltk 3.2.2, numpy 1.12.0, scipy 0.18.1, gensim 0.13.4, sklearn 0.18.1, keras 1.1.0。此外，需要安装 'python nltk' 并下载其语料库以支持 word2vec 功能。通常先初始化一个空的或基础的词汇表，或者直接使用内置方法让训练过程自动构建词汇表，而不是手动预先创建完整的词汇表对象传入。","https:\u002F\u002Fgithub.com\u002Finspirehep\u002Fmagpie\u002Fissues\u002F77",{"id":124,"question_zh":125,"answer_zh":126,"source_url":127},33787,"如何处理非英语语料库（如荷兰语）的训练？停用词和词干提取器需要更换吗？","是的，对于非英语语料库，需要将默认的英语停用词替换为目标语言（如荷兰语）的停用词列表。虽然可以设置目标语言的 Snowball 词干提取器作为默认值，但需注意 Magpie 模型内部可能未直接调用该词干提取器，需检查代码确认。如果训练后第一个 epoch 损失值稳定但预测分数极低，可能是数据标注不一致或标签分布不均导致的，建议检查数据质量并考虑针对不同类别建立独立的语料库。","https:\u002F\u002Fgithub.com\u002Finspirehep\u002Fmagpie\u002Fissues\u002F86",{"id":129,"question_zh":130,"answer_zh":131,"source_url":127},33788,"训练过程中如何防止过拟合或在合适的时候停止训练？","可以在训练方法的 `callbacks` 参数中传递 Keras 回调函数列表。最常用的是 `EarlyStopping`，它可以在监控指标（如验证损失）不再改善时自动停止训练。如果训练时间较长，还可以结合 `ModelCheckpoint` 定期保存最佳模型。一般原则是：只要验证损失（val_loss）在下降，就值得继续训练；一旦验证损失开始上升或停滞，则应停止。",{"id":133,"question_zh":134,"answer_zh":135,"source_url":136},33789,"在 Python 2.7 环境下运行 Magpie 时遇到 UnicodeDecodeError 错误如何解决？","该错误通常发生在读取包含非 ASCII 字符的文件时。解决方法是修改 `magpie\u002Fbase\u002Fdocument.py` 文件中的 `read_sentences` 方法，强制使用 UTF-8 解码。具体做法是移除针对 Python 2 的条件判断，直接使用 `io.open(filename, 'r', encoding='utf-8')` 打开文件。也可以直接安装修复了该问题的分支版本：`pip install https:\u002F\u002Fgithub.com\u002Finspirehep\u002Fmagpie.git@fix-file-reading-inpy2`。","https:\u002F\u002Fgithub.com\u002Finspirehep\u002Fmagpie\u002Fissues\u002F82",{"id":138,"question_zh":139,"answer_zh":140,"source_url":112},33790,"Word2Vec 训练中是否需要移除停用词（stopwords）？移除后对性能有何影响？","Word2Vec 依赖单词的上下文来确定其含义。例如，介词“to”可以帮助模型推断后续单词可能是地点。如果移除停用词，可能会丢失这部分上下文信息，从而潜在地降低模型性能。不过，也有用户尝试移除停用词并未发现明显负面影响。建议根据具体任务进行对比实验：分别尝试保留和移除停用词，观察最终分类效果再决定。",{"id":142,"question_zh":143,"answer_zh":144,"source_url":127},33791,"对于标签数量较多（如 300 个标签）且文件数量适中（如 1.5 万文件）的情况，能否获得良好的性能？","通常情况下，300 个标签对应 1.5 万个文件是可以获得不错的性能的。关键在于数据的平衡性。如果某些标签在训练集中出现频率过高（例如超过一半的文本都包含该标签），模型会产生偏差，倾向于给所有输入都预测该标签。如果遇到这种情况，可以考虑为不同类别的产品或环境建立独立的语料库进行训练，或者尝试对高频标签进行过采样（subsampling）处理。",[146,151,156,161],{"id":147,"version":148,"summary_zh":149,"released_at":150},263657,"v2.1.1","更新依赖项","2020-04-08T15:53:14",{"id":152,"version":153,"summary_zh":154,"released_at":155},263658,"v2.1","更新依赖项以使用最新版本。   放弃对 Python 2 的支持。","2019-08-27T19:45:30",{"id":157,"version":158,"summary_zh":159,"released_at":160},263659,"v2.0","与 Keras 2.X.X 版本兼容的 Magpie\n\n### API 的变更：\n- 将 `MagpieModel` 重命名为 `Magpie`\n- 将 `train` 和 `batch_train` 函数中的 `nb_epochs` 参数改为 `epochs` 关键字参数\n- 更新了文档","2017-10-14T11:39:34",{"id":162,"version":163,"summary_zh":164,"released_at":165},263660,"v1.0","适用于 Keras 1.x.x","2017-05-30T21:03:43"]