[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"similar-explosion--spacy-streamlit":3,"tool-explosion--spacy-streamlit":61},[4,18,28,37,45,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":24,"last_commit_at":25,"category_tags":26,"status":17},9989,"n8n","n8n-io\u002Fn8n","n8n 是一款面向技术团队的公平代码（fair-code）工作流自动化平台，旨在让用户在享受低代码快速构建便利的同时，保留编写自定义代码的灵活性。它主要解决了传统自动化工具要么过于封闭难以扩展、要么完全依赖手写代码效率低下的痛点，帮助用户轻松连接 400 多种应用与服务，实现复杂业务流程的自动化。\n\nn8n 特别适合开发者、工程师以及具备一定技术背景的业务人员使用。其核心亮点在于“按需编码”：既可以通过直观的可视化界面拖拽节点搭建流程，也能随时插入 JavaScript 或 Python 代码、调用 npm 包来处理复杂逻辑。此外，n8n 原生集成了基于 LangChain 的 AI 能力，支持用户利用自有数据和模型构建智能体工作流。在部署方面，n8n 提供极高的自由度，支持完全自托管以保障数据隐私和控制权，也提供云端服务选项。凭借活跃的社区生态和数百个现成模板，n8n 让构建强大且可控的自动化系统变得简单高效。",184740,2,"2026-04-19T23:22:26",[16,14,13,15,27],"插件",{"id":29,"name":30,"github_repo":31,"description_zh":32,"stars":33,"difficulty_score":10,"last_commit_at":34,"category_tags":35,"status":17},10095,"AutoGPT","Significant-Gravitas\u002FAutoGPT","AutoGPT 是一个旨在让每个人都能轻松使用和构建 AI 的强大平台，核心功能是帮助用户创建、部署和管理能够自动执行复杂任务的连续型 AI 智能体。它解决了传统 AI 应用中需要频繁人工干预、难以自动化长流程工作的痛点，让用户只需设定目标，AI 即可自主规划步骤、调用工具并持续运行直至完成任务。\n\n无论是开发者、研究人员，还是希望提升工作效率的普通用户，都能从 AutoGPT 中受益。开发者可利用其低代码界面快速定制专属智能体；研究人员能基于开源架构探索多智能体协作机制；而非技术背景用户也可直接选用预置的智能体模板，立即投入实际工作场景。\n\nAutoGPT 的技术亮点在于其模块化“积木式”工作流设计——用户通过连接功能块即可构建复杂逻辑，每个块负责单一动作，灵活且易于调试。同时，平台支持本地自托管与云端部署两种模式，兼顾数据隐私与使用便捷性。配合完善的文档和一键安装脚本，即使是初次接触的用户也能在几分钟内启动自己的第一个 AI 智能体。AutoGPT 正致力于降低 AI 应用门槛，让人人都能成为 AI 的创造者与受益者。",183572,"2026-04-20T04:47:55",[13,36,27,14,15],"语言模型",{"id":38,"name":39,"github_repo":40,"description_zh":41,"stars":42,"difficulty_score":10,"last_commit_at":43,"category_tags":44,"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":46,"name":47,"github_repo":48,"description_zh":49,"stars":50,"difficulty_score":24,"last_commit_at":51,"category_tags":52,"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 真正成长为懂上",161147,"2026-04-19T23:31:47",[14,13,36],{"id":54,"name":55,"github_repo":56,"description_zh":57,"stars":58,"difficulty_score":24,"last_commit_at":59,"category_tags":60,"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 都能提供强大的支持。其独特的模块化架构允许社区不断扩展新功能，使其成为当前最灵活、生态最丰富的开源扩散模型工具之一，帮助用户将创意高效转化为现实。",109154,"2026-04-18T11:18:24",[14,15,13],{"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":76,"owner_email":77,"owner_twitter":76,"owner_website":78,"owner_url":79,"languages":80,"stars":89,"forks":90,"last_commit_at":91,"license":92,"difficulty_score":93,"env_os":94,"env_gpu":94,"env_ram":94,"env_deps":95,"category_tags":100,"github_topics":103,"view_count":24,"oss_zip_url":76,"oss_zip_packed_at":76,"status":17,"created_at":116,"updated_at":117,"faqs":118,"releases":154},10059,"explosion\u002Fspacy-streamlit","spacy-streamlit","👑 spaCy building blocks and visualizers for Streamlit apps","spacy-streamlit 是一款专为快速构建自然语言处理（NLP）演示应用而设计的开源库，它完美连接了强大的 spaCy 分析引擎与易用的 Streamlit 前端框架。对于需要展示 NLP 模型效果但又不想耗费精力编写复杂前端代码的开发者、数据科学家及研究人员来说，它解决了从算法原型到可视化交互界面之间的“最后一公里”难题。\n\n只需几行 Python 代码，用户即可在网页应用中直观呈现句法依赖树、命名实体识别、文本分类结果以及基于词向量的语义相似度等核心分析功能。其独特的技术亮点在于提供了高度模块化的“积木式”组件：既支持调用内置的一站式可视化函数，让模型即刻上线运行；也允许灵活拆分各个视觉组件，无缝集成到现有的定制化 Streamlit 项目中。这种设计不仅大幅降低了 NLP 应用的开发门槛，还让模型调试、成果汇报和教学演示变得高效且生动，是打造交互式语言分析工具的理想选择。","\u003Ca href=\"https:\u002F\u002Fexplosion.ai\">\u003Cimg src=\"https:\u002F\u002Fexplosion.ai\u002Fassets\u002Fimg\u002Flogo.svg\" width=\"125\" height=\"125\" align=\"right\" \u002F>\u003C\u002Fa>\n\n# spacy-streamlit: spaCy building blocks for Streamlit apps\n\nThis package contains utilities for visualizing [spaCy](https:\u002F\u002Fspacy.io) models\nand building interactive spaCy-powered apps with\n[Streamlit](https:\u002F\u002Fstreamlit.io). It includes various building blocks you can\nuse in your own Streamlit app, like visualizers for **syntactic dependencies**,\n**named entities**, **text classification**, **semantic similarity** via word\nvectors, token attributes, and more.\n\n[![Current Release Version](https:\u002F\u002Fimg.shields.io\u002Fgithub\u002Frelease\u002Fexplosion\u002Fspacy-streamlit.svg?style=flat-square&logo=github&include_prereleases)](https:\u002F\u002Fgithub.com\u002Fexplosion\u002Fspacy-streamlit\u002Freleases)\n[![pypi Version](https:\u002F\u002Fimg.shields.io\u002Fpypi\u002Fv\u002Fspacy-streamlit.svg?style=flat-square&logo=pypi&logoColor=white)](https:\u002F\u002Fpypi.org\u002Fproject\u002Fspacy-streamlit\u002F)\n\n\u003Cimg width=\"50%\" align=\"right\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fexplosion_spacy-streamlit_readme_0337220bb769.png\">\n\n## 🚀 Quickstart\n\nYou can install `spacy-streamlit` from pip:\n\n```bash\npip install spacy-streamlit\n```\n\nThe package includes **building blocks** that call into Streamlit and set up all\nthe required elements for you. You can either use the individual components\ndirectly and combine them with other elements in your app, or call the\n`visualize` function to embed the whole visualizer.\n\nDownload the English model from spaCy to get started.\n\n```bash\npython -m spacy download en_core_web_sm\n```\n\nThen put the following example code in a file.\n\n```python\n# streamlit_app.py\nimport spacy_streamlit\n\nmodels = [\"en_core_web_sm\", \"en_core_web_md\"]\ndefault_text = \"Sundar Pichai is the CEO of Google.\"\nspacy_streamlit.visualize(models, default_text)\n```\n\nYou can then run your app with `streamlit run streamlit_app.py`. The app should\npop up in your web browser. 😀\n\n#### 📦 Example: [`01_out-of-the-box.py`](examples\u002F01_out-of-the-box.py)\n\nUse the embedded visualizer with custom settings out-of-the-box.\n\n```bash\nstreamlit run https:\u002F\u002Fraw.githubusercontent.com\u002Fexplosion\u002Fspacy-streamlit\u002Fmaster\u002Fexamples\u002F01_out-of-the-box.py\n```\n\n#### 👑 Example: [`02_custom.py`](examples\u002F02_custom.py)\n\nUse individual components in your existing app.\n\n```bash\nstreamlit run https:\u002F\u002Fraw.githubusercontent.com\u002Fexplosion\u002Fspacy-streamlit\u002Fmaster\u002Fexamples\u002F02_custom.py\n```\n\n## 🎛 API\n\n### Visualizer components\n\nThese functions can be used in your Streamlit app. They call into `streamlit`\nunder the hood and set up the required elements.\n\n#### \u003Ckbd>function\u003C\u002Fkbd> `visualize`\n\nEmbed the full visualizer with selected components.\n\n```python\nimport spacy_streamlit\n\nmodels = [\"en_core_web_sm\", \"\u002Fpath\u002Fto\u002Fmodel\"]\ndefault_text = \"Sundar Pichai is the CEO of Google.\"\nvisualizers = [\"ner\", \"textcat\"]\nspacy_streamlit.visualize(models, default_text, visualizers)\n```\n\n| Argument                 | Type                       | Description                                                                                                                                                                                                                                                 |\n| ------------------------ | -------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |\n| `models`                 | List[str] \u002F Dict[str, str] | Names of loadable spaCy models (paths or package names). The models become selectable via a dropdown. Can either be a list of names or the names mapped to descriptions to display in the dropdown.                                                         |\n| `default_text`           | str                        | Default text to analyze on load. Defaults to `\"\"`.                                                                                                                                                                                                          |\n| `default_model`          | Optional[str]              | Optional name of default model. If not set, the first model in the list of `models` is used.                                                                                                                                                                |\n| `visualizers`            | List[str]                  | Names of visualizers to show. Defaults to `[\"parser\", \"ner\", \"textcat\", \"similarity\", \"tokens\"]`.                                                                                                                                                           |\n| `ner_labels`             | Optional[List[str]]        | NER labels to include. If not set, all labels present in the `\"ner\"` pipeline component will be used.                                                                                                                                                       |\n| `ner_attrs`              | List[str]                  | Span attributes shown in table of named entities. See [`visualizer.py`](spacy_streamlit\u002Fvisualizer.py) for defaults.                                                                                                                                        |\n| `token_attrs`            | List[str]                  | Token attributes to show in token visualizer. See [`visualizer.py`](spacy_streamlit\u002Fvisualizer.py) for defaults.                                                                                                                                            |\n| `similarity_texts`       | Tuple[str, str]            | The default texts to compare in the similarity visualizer. Defaults to `(\"apple\", \"orange\")`.                                                                                                                                                               |\n| `show_json_doc`          | bool                       | Show button to toggle JSON representation of the `Doc`. Defaults to `True`.                                                                                                                                                                                 |\n| `show_meta`              | bool                       | Show button to toggle `meta.json` of the current pipeline. Defaults to `True`.                                                                                                                                                                              |\n| `show_config`            | bool                       | Show button to toggle `config.cfg` of the current pipeline. Defaults to `True`.                                                                                                                                                                             |\n| `show_visualizer_select` | bool                       | Show sidebar dropdown to select visualizers to display (based on enabled visualizers). Defaults to `False`.                                                                                                                                                 |\n| `sidebar_title`          | Optional[str]              | Title shown in the sidebar. Defaults to `None`.                                                                                                                                                                                                             |\n| `sidebar_description`    | Optional[str]              | Description shown in the sidebar. Accepts Markdown-formatted text.                                                                                                                                                                                          |\n| `show_logo`              | bool                       | Show the spaCy logo in the sidebar. Defaults to `True`.                                                                                                                                                                                                     |\n| `color`                  | Optional[str]              | Experimental: Primary color to use for some of the main UI elements (`None` to disable hack). Defaults to `\"#09A3D5\"`.                                                                                                                                      |\n| `get_default_text`       | Callable[[Language], str]  | Optional callable that takes the currently loaded `nlp` object and returns the default text. Can be used to provide language-specific default texts. If the function returns `None`, the value of `default_text` is used, if available. Defaults to `None`. |\n\n#### \u003Ckbd>function\u003C\u002Fkbd> `visualize_parser`\n\nVisualize the dependency parse and part-of-speech tags using spaCy's\n[`displacy` visualizer](https:\u002F\u002Fspacy.io\u002Fusage\u002Fvisualizers).\n\n```python\nimport spacy\nfrom spacy_streamlit import visualize_parser\n\nnlp = spacy.load(\"en_core_web_sm\")\ndoc = nlp(\"This is a text\")\nvisualize_parser(doc)\n```\n\n| Argument           | Type           | Description                                                                                                                                              |\n| ------------------ | -------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------- |\n| `doc`              | `Doc`          | The spaCy `Doc` object to visualize.                                                                                                                     |\n| _keyword-only_     |                |                                                                                                                                                          |\n| `title`            | Optional[str]  | Title of the visualizer block.                                                                                                                           |\n| `key`              | Optional[str]  | Key used for the streamlit component for selecting labels.                                                                                               |\n| `manual`           | bool           | Flag signifying whether the doc argument is a Doc object or a List of Dicts containing parse information.                                                |\n| `displacy_options` | Optional[Dict] | Dictionary of options to be passed to the displacy render method for generating the HTML to be rendered. See: https:\u002F\u002Fspacy.io\u002Fapi\u002Ftop-level#options-dep |\n\n#### \u003Ckbd>function\u003C\u002Fkbd> `visualize_ner`\n\nVisualize the named entities in a `Doc` using spaCy's\n[`displacy` visualizer](https:\u002F\u002Fspacy.io\u002Fusage\u002Fvisualizers).\n\n```python\nimport spacy\nfrom spacy_streamlit import visualize_ner\n\nnlp = spacy.load(\"en_core_web_sm\")\ndoc = nlp(\"Sundar Pichai is the CEO of Google.\")\nvisualize_ner(doc, labels=nlp.get_pipe(\"ner\").labels)\n```\n\n| Argument           | Type           | Description                                                                                                                                                                                                                                                 |\n| ------------------ | -------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |\n| `doc`              | `Doc`          | The spaCy `Doc` object to visualize.                                                                                                                                                                                                                        |\n| _keyword-only_     |                |                                                                                                                                                                                                                                                             |\n| `labels`           | Sequence[str]  | The labels to show in the labels dropdown.                                                                                                                                                                                                                  |\n| `attrs`            | List[str]      | The span attributes to show in entity table.                                                                                                                                                                                                                |\n| `show_table`       | bool           | Whether to show a table of entities and their attributes. Defaults to `True`.                                                                                                                                                                               |\n| `title`            | Optional[str]  | Title of the visualizer block.                                                                                                                                                                                                                              |\n| `colors`           | Dict[str,str]  | Dictionary of colors for the entity spans to visualize, with keys as labels and corresponding colors as the values. This argument will be deprecated soon. In future the colors arg need to be passed in the `displacy_options` arg with the key \"colors\".) |\n| `key`              | Optional[str]  | Key used for the streamlit component for selecting labels.                                                                                                                                                                                                  |\n| `manual`           | bool           | Flag signifying whether the doc argument is a Doc object or a List of Dicts containing entity span                                                                                                                                                          |\n| information.       |\n| `displacy_options` | Optional[Dict] | Dictionary of options to be passed to the displacy render method for generating the HTML to be rendered. See https:\u002F\u002Fspacy.io\u002Fapi\u002Ftop-level#displacy_options-ent.                                                                                           |\n\n\n#### \u003Ckbd>function\u003C\u002Fkbd> `visualize_spans`\n\nVisualize spans in a `Doc` using spaCy's\n[`displacy` visualizer](https:\u002F\u002Fspacy.io\u002Fusage\u002Fvisualizers).\n\n```python\nimport spacy\nfrom spacy_streamlit import visualize_spans\n\nnlp = spacy.load(\"en_core_web_sm\")\ndoc = nlp(\"Sundar Pichai is the CEO of Google.\")\nspan = doc[4:7]  # CEO of Google\nspan.label_ = \"CEO\"\ndoc.spans[\"job_role\"] = [span]\nvisualize_spans(doc, spans_key=\"job_role\", displacy_options={\"colors\": {\"CEO\": \"#09a3d5\"}})\n```\n\n| Argument           | Type           | Description                                                                                                                                                        |\n| ------------------ | -------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------ |\n| `doc`              | `Doc`          | The spaCy `Doc` object to visualize.                                                                                                                               |\n| _keyword-only_     |                |                                                                                                                                                                    |\n| `spans_key`        | Sequence[str]  | Which spans key to render spans from. Default is \"sc\".                                                                                                             |\n| `attrs`            | List[str]      | The attributes on the entity Span to be labeled. Attributes are displayed only when the `show_table` argument is True.                                             |\n| `show_table`       | bool           | Whether to show a table of spans and their attributes. Defaults to `True`.                                                                                         |\n| `title`            | Optional[str]  | Title of the visualizer block.                                                                                                                                     |\n| `manual`           | bool           | Flag signifying whether the doc argument is a Doc object or a List of Dicts containing entity span information.                                                    |\n| `displacy_options` | Optional[Dict] | Dictionary of options to be passed to the displacy render method for generating the HTML to be rendered. See https:\u002F\u002Fspacy.io\u002Fapi\u002Ftop-level#displacy_options-span. |\n\n\n#### \u003Ckbd>function\u003C\u002Fkbd> `visualize_textcat`\n\nVisualize text categories predicted by a trained text classifier.\n\n```python\nimport spacy\nfrom spacy_streamlit import visualize_textcat\n\nnlp = spacy.load(\".\u002Fmy_textcat_model\")\ndoc = nlp(\"This is a text about a topic\")\nvisualize_textcat(doc)\n```\n\n| Argument       | Type          | Description                          |\n| -------------- | ------------- | ------------------------------------ |\n| `doc`          | `Doc`         | The spaCy `Doc` object to visualize. |\n| _keyword-only_ |               |                                      |\n| `title`        | Optional[str] | Title of the visualizer block.       |\n\n#### `visualize_similarity`\n\nVisualize semantic similarity using the model's word vectors. Will show a\nwarning if no vectors are present in the model.\n\n```python\nimport spacy\nfrom spacy_streamlit import visualize_similarity\n\nnlp = spacy.load(\"en_core_web_lg\")\nvisualize_similarity(nlp, (\"pizza\", \"fries\"))\n```\n\n| Argument        | Type            | Description                                                                                                                                          |\n| --------------- | --------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------- |\n| `nlp`           | `Language`      | The loaded `nlp` object with vectors.                                                                                                                |\n| `default_texts` | Tuple[str, str] | The default texts to compare on load. Defaults to `(\"apple\", \"orange\")`.                                                                             |\n| _keyword-only_  |                 |                                                                                                                                                      |\n| `threshold`     | float           | Threshold for what's considered \"similar\". If the similarity score is greater than the threshold, the result is shown as similar. Defaults to `0.5`. |\n| `title`         | Optional[str]   | Title of the visualizer block.                                                                                                                       |\n\n#### \u003Ckbd>function\u003C\u002Fkbd> `visualize_tokens`\n\nVisualize the tokens in a `Doc` and their attributes.\n\n```python\nimport spacy\nfrom spacy_streamlit import visualize_tokens\n\nnlp = spacy.load(\"en_core_web_sm\")\ndoc = nlp(\"This is a text\")\nvisualize_tokens(doc, attrs=[\"text\", \"pos_\", \"dep_\", \"ent_type_\"])\n```\n\n| Argument       | Type          | Description                                                                                              |\n| -------------- | ------------- | -------------------------------------------------------------------------------------------------------- |\n| `doc`          | `Doc`         | The spaCy `Doc` object to visualize.                                                                     |\n| _keyword-only_ |               |                                                                                                          |\n| `attrs`        | List[str]     | The names of token attributes to use. See [`visualizer.py`](spacy_streamlit\u002Fvisualizer.py) for defaults. |\n| `title`        | Optional[str] | Title of the visualizer block.                                                                           |\n\n### Cached helpers\n\nThese helpers attempt to cache loaded models and created `Doc` objects.\n\n#### \u003Ckbd>function\u003C\u002Fkbd> `process_text`\n\nProcess a text with a model of a given name and create a `Doc` object. Calls\ninto the `load_model` helper to load the model.\n\n```python\nimport streamlit as st\nfrom spacy_streamlit import process_text\n\nspacy_model = st.sidebar.selectbox(\"Model name\", [\"en_core_web_sm\", \"en_core_web_md\"])\ntext = st.text_area(\"Text to analyze\", \"This is a text\")\ndoc = process_text(spacy_model, text)\n```\n\n| Argument     | Type  | Description                                             |\n| ------------ | ----- | ------------------------------------------------------- |\n| `model_name` | str   | Loadable spaCy model name. Can be path or package name. |\n| `text`       | str   | The text to process.                                    |\n| **RETURNS**  | `Doc` | The processed document.                                 |\n\n#### \u003Ckbd>function\u003C\u002Fkbd> `load_model`\n\nLoad a spaCy model from a path or installed package and return a loaded `nlp`\nobject.\n\n```python\nimport streamlit as st\nfrom spacy_streamlit import load_model\n\nspacy_model = st.sidebar.selectbox(\"Model name\", [\"en_core_web_sm\", \"en_core_web_md\"])\nnlp = load_model(spacy_model)\n```\n\n| Argument    | Type       | Description                                             |\n| ----------- | ---------- | ------------------------------------------------------- |\n| `name`      | str        | Loadable spaCy model name. Can be path or package name. |\n| **RETURNS** | `Language` | The loaded `nlp` object.                                |\n","\u003Ca href=\"https:\u002F\u002Fexplosion.ai\">\u003Cimg src=\"https:\u002F\u002Fexplosion.ai\u002Fassets\u002Fimg\u002Flogo.svg\" width=\"125\" height=\"125\" align=\"right\" \u002F>\u003C\u002Fa>\n\n# spacy-streamlit: 用于 Streamlit 应用的 spaCy 构建模块\n此包包含用于可视化 [spaCy](https:\u002F\u002Fspacy.io) 模型以及使用\n[Streamlit](https:\u002F\u002Fstreamlit.io) 构建交互式 spaCy 驱动应用的实用工具。它提供了多种构建模块，你可以在自己的 Streamlit 应用中使用，例如针对**句法依存关系**、**命名实体**、**文本分类**、通过词向量实现的**语义相似度**、标记属性等的可视化组件。\n\n[![当前发布版本](https:\u002F\u002Fimg.shields.io\u002Fgithub\u002Frelease\u002Fexplosion\u002Fspacy-streamlit.svg?style=flat-square&logo=github&include_prereleases)](https:\u002F\u002Fgithub.com\u002Fexplosion\u002Fspacy-streamlit\u002Freleases)\n[![PyPI 版本](https:\u002F\u002Fimg.shields.io\u002Fpypi\u002Fv\u002Fspacy-streamlit.svg?style=flat-square&logo=pypi&logoColor=white)](https:\u002F\u002Fpypi.org\u002Fproject\u002Fspacy-streamlit\u002F)\n\n\u003Cimg width=\"50%\" align=\"right\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fexplosion_spacy-streamlit_readme_0337220bb769.png\">\n\n## 🚀 快速入门\n\n你可以通过 pip 安装 `spacy-streamlit`：\n\n```bash\npip install spacy-streamlit\n```\n\n该包包含调用 Streamlit 并为你设置所有必要元素的**构建模块**。你可以直接使用各个组件，并将其与其他应用元素结合，或者调用 `visualize` 函数来嵌入整个可视化工具。\n\n首先从 spaCy 下载英语模型以开始使用。\n\n```bash\npython -m spacy download en_core_web_sm\n```\n\n然后将以下示例代码放入一个文件中。\n\n```python\n# streamlit_app.py\nimport spacy_streamlit\n\nmodels = [\"en_core_web_sm\", \"en_core_web_md\"]\ndefault_text = \"Sundar Pichai 是 Google 的 CEO。\"\nspacy_streamlit.visualize(models, default_text)\n```\n\n之后，你可以使用 `streamlit run streamlit_app.py` 运行你的应用。应用应该会在你的网页浏览器中弹出。😀\n\n#### 📦 示例：[`01_out-of-the-box.py`](examples\u002F01_out-of-the-box.py)\n\n直接使用内置可视化工具，并自定义设置。\n\n```bash\nstreamlit run https:\u002F\u002Fraw.githubusercontent.com\u002Fexplosion\u002Fspacy-streamlit\u002Fmaster\u002Fexamples\u002F01_out-of-the-box.py\n```\n\n#### 👑 示例：[`02_custom.py`](examples\u002F02_custom.py)\n\n在现有应用中使用单独的组件。\n\n```bash\nstreamlit run https:\u002F\u002Fraw.githubusercontent.com\u002Fexplosion\u002Fspacy-streamlit\u002Fmaster\u002Fexamples\u002F02_custom.py\n```\n\n## 🎛 API\n\n### 可视化组件\n\n这些函数可以在你的 Streamlit 应用中使用。它们在底层调用 `streamlit`，并设置所需的元素。\n\n#### \u003Ckbd>function\u003C\u002Fkbd> `visualize`\n\n嵌入包含所选组件的完整可视化工具。\n\n```python\nimport spacy_streamlit\n\nmodels = [\"en_core_web_sm\", \"\u002Fpath\u002Fto\u002Fmodel\"]\ndefault_text = \"Sundar Pichai 是 Google 的 CEO。\"\nvisualizers = [\"ner\", \"textcat\"]\nspacy_streamlit.visualize(models, default_text, visualizers)\n```\n\n| 参数                 | 类型                       | 描述                                                                                                                                                                                                                                                 |\n| ------------------------ | -------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |\n| `models`                 | List[str] \u002F Dict[str, str] | 可加载的 spaCy 模型名称（路径或包名）。这些模型可通过下拉菜单选择。可以是名称列表，也可以是名称与在下拉菜单中显示的描述的映射关系。                                                         |\n| `default_text`           | str                        | 加载时要分析的默认文本。默认值为 `\"\"`。                                                                                                                                                                                                          |\n| `default_model`          | Optional[str]              | 默认模型的可选名称。如果未设置，则使用 `models` 列表中的第一个模型。                                                                                                                                                                |\n| `visualizers`            | List[str]                  | 要显示的可视化工具名称。默认值为 `[\"parser\", \"ner\", \"textcat\", \"similarity\", \"tokens\"]`。                                                                                                                                                           |\n| `ner_labels`             | Optional[List[str]]        | 要包含的 NER 标签。如果未设置，则会使用 `\"ner\"` 管道组件中所有存在的标签。                                                                                                                                                       |\n| `ner_attrs`              | List[str]                  | 在命名实体表格中显示的 Span 属性。默认值请参阅 [`visualizer.py`](spacy_streamlit\u002Fvisualizer.py)。                                                                                                                                        |\n| `token_attrs`            | List[str]                  | 在词元可视化工具中显示的词元属性。默认值请参阅 [`visualizer.py`](spacy_streamlit\u002Fvisualizer.py)。                                                                                                                                            |\n| `similarity_texts`       | Tuple[str, str]            | 相似度可视化工具中用于比较的默认文本。默认值为 `(\"apple\", \"orange\")`。                                                                                                                                                               |\n| `show_json_doc`          | bool                       | 显示切换 `Doc` 的 JSON 表示形式的按钮。默认值为 `True`。                                                                                                                                                                                 |\n| `show_meta`              | bool                       | 显示切换当前管道的 `meta.json` 的按钮。默认值为 `True`。                                                                                                                                                                              |\n| `show_config`            | bool                       | 显示切换当前管道的 `config.cfg` 的按钮。默认值为 `True`。                                                                                                                                                                             |\n| `show_visualizer_select` | bool                       | 显示侧边栏下拉菜单，用于选择要显示的可视化工具（基于已启用的可视化工具）。默认值为 `False`。                                                                                                                                                 |\n| `sidebar_title`          | Optional[str]              | 侧边栏中显示的标题。默认值为 `None`。                                                                                                                                                                                                             |\n| `sidebar_description`    | Optional[str]              | 侧边栏中显示的描述。支持 Markdown 格式的文本。                                                                                                                                                                                          |\n| `show_logo`              | bool                       | 在侧边栏中显示 spaCy 徽标。默认值为 `True`。                                                                                                                                                                                                     |\n| `color`                  | Optional[str]              | 实验性：用于部分主要 UI 元素的主色调（设置为 `None` 可禁用此功能）。默认值为 `\"#09A3D5\"`。                                                                                                                                      |\n| `get_default_text`       | Callable[[Language], str]  | 可选的可调用函数，接收当前加载的 `nlp` 对象并返回默认文本。可用于提供特定语言的默认文本。如果该函数返回 `None`，则使用 `default_text` 的值（如果有）。默认值为 `None`。 |\n\n#### \u003Ckbd>函数\u003C\u002Fkbd> `visualize_parser`\n\n使用 spaCy 的 [`displacy` 可视化工具](https:\u002F\u002Fspacy.io\u002Fusage\u002Fvisualizers)可视化依存句法分析和词性标注。\n\n```python\nimport spacy\nfrom spacy_streamlit import visualize_parser\n\nnlp = spacy.load(\"en_core_web_sm\")\ndoc = nlp(\"This is a text\")\nvisualize_parser(doc)\n```\n\n| 参数           | 类型           | 描述                                                                                                                                              |\n| ------------------ | -------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------- |\n| `doc`              | `Doc`          | 要可视化的 spaCy `Doc` 对象。                                                                                                                     |\n| _仅限关键字_     |                |                                                                                                                                                          |\n| `title`            | Optional[str]  | 可视化组件的标题。                                                                                                                           |\n| `key`              | Optional[str]  | 用于 Streamlit 组件选择标签的键。                                                                                               |\n| `manual`           | bool           | 标志位，指示 `doc` 参数是 `Doc` 对象，还是包含解析信息的字典列表。                                                |\n| `displacy_options` | Optional[Dict] | 传递给 displacy 渲染方法以生成要渲染的 HTML 的选项字典。请参阅：https:\u002F\u002Fspacy.io\u002Fapi\u002Ftop-level#options-dep |\n\n#### \u003Ckbd>函数\u003C\u002Fkbd> `visualize_ner`\n\n使用 spaCy 的 [`displacy` 可视化工具](https:\u002F\u002Fspacy.io\u002Fusage\u002Fvisualizers)可视化 `Doc` 中的命名实体。\n\n```python\nimport spacy\nfrom spacy_streamlit import visualize_ner\n\nnlp = spacy.load(\"en_core_web_sm\")\ndoc = nlp(\"Sundar Pichai is the CEO of Google.\")\nvisualize_ner(doc, labels=nlp.get_pipe(\"ner\").labels)\n```\n\n| 参数           | 类型           | 描述                                                                                                                                                                                                                                                 |\n| ------------------ | -------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |\n| `doc`              | `Doc`          | 要可视化的 spaCy `Doc` 对象。                                                                                                                                                                                                                        |\n| _仅限关键字_     |                |                                                                                                                                                                                                                                                             |\n| `labels`           | Sequence[str]  | 在标签下拉菜单中显示的标签。                                                                                                                                                                                                                  |\n| `attrs`            | List[str]      | 在实体表格中显示的跨度属性。                                                                                                                                                                                                                |\n| `show_table`       | bool           | 是否显示实体及其属性的表格。默认为 `True`。                                                                                                                                                                               |\n| `title`            | Optional[str]  | 可视化组件的标题。                                                                                                                                                                                                                              |\n| `colors`           | Dict[str,str]  | 用于可视化实体跨度的颜色字典，键为标签，值为对应颜色。此参数即将弃用。未来颜色参数将需要通过 `displacy_options` 参数中的 `\"colors\"` 键来传递。) |\n| `key`              | Optional[str]  | 用于 Streamlit 组件选择标签的键。                                                                                                                                                                                                  |\n| `manual`           | bool           | 标志位，指示 `doc` 参数是 `Doc` 对象，还是包含实体跨度信息的字典列表。                                                                                                                                                          |\n| `displacy_options` | Optional[Dict] | 传递给 displacy 渲染方法以生成要渲染的 HTML 的选项字典。请参阅 https:\u002F\u002Fspacy.io\u002Fapi\u002Ftop-level#displacy_options-ent。                                                                                           |\n\n#### \u003Ckbd>函数\u003C\u002Fkbd> `visualize_spans`\n\n使用 spaCy 的 [`displacy` 可视化工具](https:\u002F\u002Fspacy.io\u002Fusage\u002Fvisualizers)可视化 `Doc` 中的跨度。\n\n```python\nimport spacy\nfrom spacy_streamlit import visualize_spans\n\nnlp = spacy.load(\"en_core_web_sm\")\ndoc = nlp(\"Sundar Pichai is the CEO of Google.\")\nspan = doc[4:7]  # CEO of Google\nspan.label_ = \"CEO\"\ndoc.spans[\"job_role\"] = [span]\nvisualize_spans(doc, spans_key=\"job_role\", displacy_options={\"colors\": {\"CEO\": \"#09a3d5\"}})\n```\n\n| 参数           | 类型           | 描述                                                                                                                                                        |\n| ------------------ | -------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------ |\n| `doc`              | `Doc`          | 要可视化的 spaCy `Doc` 对象。                                                                                                                               |\n| _仅关键字_     |                |                                                                                                                                                                    |\n| `spans_key`        | 序列[str]      | 从哪个 spans 键渲染实体跨度。默认值为 \"sc\"。                                                                                                             |\n| `attrs`            | 列表[str]      | 实体 Span 上要标注的属性。只有当 `show_table` 参数为 True 时，才会显示这些属性。                                             |\n| `show_table`       | 布尔值           | 是否显示实体跨度及其属性的表格。默认值为 `True`。                                                                                         |\n| `title`            | 可选[str]      | 可视化模块的标题。                                                                                                                                     |\n| `manual`           | 布尔值           | 标志参数，用于指示 `doc` 参数是 `Doc` 对象，还是包含实体跨度信息的字典列表。                                                    |\n| `displacy_options` | 可选[字典]     | 传递给 displacy 渲染方法以生成待渲染 HTML 的选项字典。请参阅 https:\u002F\u002Fspacy.io\u002Fapi\u002Ftop-level#displacy_options-span。 |\n\n\n#### \u003Ckbd>函数\u003C\u002Fkbd> `visualize_textcat`\n\n可视化由训练好的文本分类器预测出的文本类别。\n\n```python\nimport spacy\nfrom spacy_streamlit import visualize_textcat\n\nnlp = spacy.load(\".\u002Fmy_textcat_model\")\ndoc = nlp(\"这是一篇关于某个主题的文章\")\nvisualize_textcat(doc)\n```\n\n| 参数       | 类型          | 描述                          |\n| -------------- | ------------- | ------------------------------------ |\n| `doc`          | `Doc`         | 要可视化的 spaCy `Doc` 对象。 |\n| _仅关键字_ |               |                                      |\n| `title`        | 可选[str] | 可视化模块的标题。       |\n\n#### `visualize_similarity`\n\n使用模型的词向量可视化语义相似度。如果模型中没有词向量，则会显示警告。\n\n```python\nimport spacy\nfrom spacy_streamlit import visualize_similarity\n\nnlp = spacy.load(\"en_core_web_lg\")\nvisualize_similarity(nlp, (\"pizza\", \"fries\"))\n```\n\n| 参数        | 类型            | 描述                                                                                                                                          |\n| --------------- | --------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------- |\n| `nlp`           | `Language`      | 包含词向量的已加载 `nlp` 对象。                                                                                                                |\n| `default_texts` | 元组[str, str] | 加载时默认比较的文本对。默认值为 `(\"apple\", \"orange\")`。                                                                             |\n| _仅关键字_  |                 |                                                                                                                                                      |\n| `threshold`     | 浮点数           | 判断“相似”的阈值。如果相似度得分高于该阈值，则结果被视为相似。默认值为 `0.5`。 |\n| `title`         | 可选[str]   | 可视化模块的标题。                                                                                                                       |\n\n#### \u003Ckbd>函数\u003C\u002Fkbd> `visualize_tokens`\n\n可视化 `Doc` 中的各个标记及其属性。\n\n```python\nimport spacy\nfrom spacy_streamlit import visualize_tokens\n\nnlp = spacy.load(\"en_core_web_sm\")\ndoc = nlp(\"这是一段文字\")\nvisualize_tokens(doc, attrs=[\"text\", \"pos_\", \"dep_\", \"ent_type_\"])\n```\n\n| 参数       | 类型          | 描述                                                                                              |\n| -------------- | ------------- | -------------------------------------------------------------------------------------------------------- |\n| `doc`          | `Doc`         | 要可视化的 spaCy `Doc` 对象。                                                                     |\n| _仅关键字_ |               |                                                                                                          |\n| `attrs`        | 列表[str]     | 要使用的标记属性名称。默认设置请参阅 [`visualizer.py`](spacy_streamlit\u002Fvisualizer.py)。 |\n| `title`        | 可选[str] | 可视化模块的标题。                                                                           |\n\n### 缓存助手\n\n这些助手尝试缓存已加载的模型和创建的 `Doc` 对象。\n\n#### \u003Ckbd>函数\u003C\u002Fkbd> `process_text`\n\n使用给定名称的模型处理文本，并创建一个 `Doc` 对象。该函数会调用 `load_model` 助手来加载模型。\n\n```python\nimport streamlit as st\nfrom spacy_streamlit import process_text\n\nspacy_model = st.sidebar.selectbox(\"模型名称\", [\"en_core_web_sm\", \"en_core_web_md\"])\ntext = st.text_area(\"待分析文本\", \"这是一段文本\")\ndoc = process_text(spacy_model, text)\n```\n\n| 参数        | 类型  | 描述                                             |\n| ----------- | ----- | ------------------------------------------------ |\n| `model_name` | str   | 可加载的 spaCy 模型名称。可以是路径或包名。     |\n| `text`      | str   | 待处理的文本。                                   |\n| **返回值**  | `Doc` | 处理后的文档。                                   |\n\n#### \u003Ckbd>函数\u003C\u002Fkbd> `load_model`\n\n从路径或已安装的包中加载 spaCy 模型，并返回一个已加载的 `nlp` 对象。\n\n```python\nimport streamlit as st\nfrom spacy_streamlit import load_model\n\nspacy_model = st.sidebar.selectbox(\"模型名称\", [\"en_core_web_sm\", \"en_core_web_md\"])\nnlp = load_model(spacy_model)\n```\n\n| 参数    | 类型       | 描述                                             |\n| ------- | ---------- | ------------------------------------------------ |\n| `name`  | str        | 可加载的 spaCy 模型名称。可以是路径或包名。     |\n| **返回值** | `Language` | 已加载的 `nlp` 对象。                            |","# spacy-streamlit 快速上手指南\n\n`spacy-streamlit` 是一个用于在 Streamlit 应用中可视化 [spaCy](https:\u002F\u002Fspacy.io) 模型并构建交互式 NLP 应用的工具包。它提供了语法依赖、命名实体识别 (NER)、文本分类、语义相似度等组件的现成可视化模块。\n\n## 环境准备\n\n*   **系统要求**：支持 Python 3.8+ 的操作系统（Windows, macOS, Linux）。\n*   **前置依赖**：\n    *   Python 环境\n    *   `pip` 包管理工具\n    *   已安装的 spaCy 库（安装本工具时通常会自动处理，但建议确保环境正常）\n\n## 安装步骤\n\n1.  **安装 spacy-streamlit**\n    使用 pip 安装主程序包。国内用户推荐使用清华或阿里镜像源以加速下载：\n\n    ```bash\n    pip install spacy-streamlit -i https:\u002F\u002Fpypi.tuna.tsinghua.edu.cn\u002Fsimple\n    ```\n\n2.  **下载 spaCy 语言模型**\n    为了演示功能，需要下载一个基础的英语模型（如 `en_core_web_sm`）：\n\n    ```bash\n    python -m spacy download en_core_web_sm\n    ```\n    *(注：如果下载速度慢，可尝试手动下载 `.whl` 文件后本地安装，或配置 pip 全局镜像源)*\n\n## 基本使用\n\n以下是最简单的“开箱即用”示例，它将创建一个包含模型选择器、文本输入框以及多种可视化视图（依存句法、实体、分类等）的完整应用。\n\n1.  **创建应用文件**\n    新建一个名为 `streamlit_app.py` 的文件，并填入以下代码：\n\n    ```python\n    # streamlit_app.py\n    import spacy_streamlit\n\n    # 定义可用的模型列表\n    models = [\"en_core_web_sm\", \"en_core_web_md\"]\n    # 设置默认分析文本\n    default_text = \"Sundar Pichai is the CEO of Google.\"\n    \n    # 启动可视化组件\n    spacy_streamlit.visualize(models, default_text)\n    ```\n\n2.  **运行应用**\n    在终端中执行以下命令启动 Streamlit 服务：\n\n    ```bash\n    streamlit run streamlit_app.py\n    ```\n\n3.  **查看结果**\n    命令执行后，浏览器会自动打开一个新标签页显示应用界面。你可以在侧边栏切换模型，或在主界面输入文本，实时查看 spaCy 的分析结果（如高亮的实体、依存关系图等）。","某初创公司的 NLP 工程师需要向非技术背景的产品经理演示新训练的实体识别模型效果，以便快速迭代业务规则。\n\n### 没有 spacy-streamlit 时\n- 工程师必须手动编写大量前端代码（如 HTML\u002FJS 或 Dash 回调）来渲染复杂的依存句法树和实体高亮，开发耗时极长。\n- 每次调整模型参数或切换不同版本的 spaCy 模型进行测试时，都需要重启服务并重新部署，反馈循环缓慢。\n- 缺乏直观的交互界面，产品经理只能查看枯燥的 JSON 日志输出，难以理解模型对“语义相似度”或“文本分类”的具体判断逻辑。\n- 团队内部协作困难，非技术人员无法自行输入测试用例进行探索性分析，完全依赖工程师代为运行脚本。\n\n### 使用 spacy-streamlit 后\n- 工程师仅需几行 Python 代码调用 `visualize` 函数，即可直接生成包含依存关系、命名实体等完整可视化组件的交互式网页。\n- 通过在界面上集成下拉菜单，用户可以一键切换 `en_core_web_sm` 或自定义模型，实时对比不同模型对同一段文本的分析差异。\n- 产品团队能直接在浏览器中输入业务文案，直观看到实体高亮颜色和句法结构图，迅速理解模型行为并提出优化建议。\n- 内置的语义相似度和文本分类可视化模块，让抽象的向量计算结果变得肉眼可见，极大降低了沟通成本。\n\nspacy-streamlit 将复杂的 NLP 模型调试过程转化为零前端基础的即时交互体验，让算法验证从“黑盒代码”变成了“透明对话”。","https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fexplosion_spacy-streamlit_0337220b.png","explosion","Explosion","https:\u002F\u002Foss.gittoolsai.com\u002Favatars\u002Fexplosion_6bc9ac84.png","Software company specializing in developer tools and tailored solutions for AI and Natural Language Processing",null,"contact@explosion.ai","https:\u002F\u002Fexplosion.ai","https:\u002F\u002Fgithub.com\u002Fexplosion",[81,85],{"name":82,"color":83,"percentage":84},"Python","#3572A5",98.1,{"name":86,"color":87,"percentage":88},"Shell","#89e051",1.9,853,117,"2026-04-01T03:20:48","MIT",1,"未说明",{"notes":96,"python":94,"dependencies":97},"该工具是 spaCy 和 Streamlit 的封装库，主要依赖这两个核心库。使用前需通过 'python -m spacy download' 命令下载具体的 spaCy 语言模型（如 en_core_web_sm）。README 中未明确指定操作系统、GPU、内存或具体的 Python 版本要求，通常遵循 spaCy 和 Streamlit 的官方兼容性标准（一般支持主流 OS，Python 3.7+，CPU 即可运行基础功能）。",[98,99],"spacy","streamlit",[101,36,102,14,15],"视频","音频",[98,104,105,106,107,108,109,110,99,111,112,113,114,115],"nlp","natural-language-processing","visualizers","dependency-parsing","part-of-speech-tagging","named-entity-recognition","ner","visualizer","text-classification","word-vectors","tokenization","machine-learning","2026-03-27T02:49:30.150509","2026-04-20T16:48:20.024465",[119,124,129,134,139,144,149],{"id":120,"question_zh":121,"answer_zh":122,"source_url":123},45192,"如何在 spacy-streamlit 中可视化 Span Categorizer（spancat）的预测结果？","该功能已在 PR #37 中添加。现在可以直接使用现有的可视化工具或通过自定义来展示 spancat 的预测结果。维护者已添加了相关示例代码供参考。","https:\u002F\u002Fgithub.com\u002Fexplosion\u002Fspacy-streamlit\u002Fissues\u002F23",{"id":125,"question_zh":126,"answer_zh":127,"source_url":128},45193,"如何指定 spacy-streamlit 应用运行的端口和主机地址？","不需要修改 spacy-streamlit 的代码或配置，因为 Streamlit 原生支持该功能。在启动时通过命令行参数指定即可：\n`python -m streamlit run app.py --server.port 12345 --server.address 0.0.0.0`\n其中 `--server.port` 用于设置端口，`--server.address` 用于设置主机地址（例如 `0.0.0.0` 允许局域网访问）。","https:\u002F\u002Fgithub.com\u002Fexplosion\u002Fspacy-streamlit\u002Fissues\u002F16",{"id":130,"question_zh":131,"answer_zh":132,"source_url":133},45194,"运行 visualize 函数时出现 'NoneType' object has no attribute 'replace' 错误怎么办？","此错误通常是因为代码直接在 Jupyter Notebook 或交互式环境中运行导致的。解决方案是将代码保存为独立的 Python 文件（例如 `example-file.py`），然后在命令行中使用 Streamlit 命令运行：\n`streamlit run example-file.py`\n避免直接在 IPython 或 Notebook 单元格中调用 `spacy_streamlit.visualize`。","https:\u002F\u002Fgithub.com\u002Fexplosion\u002Fspacy-streamlit\u002Fissues\u002F3",{"id":135,"question_zh":136,"answer_zh":137,"source_url":138},45195,"Streamlit 1.19+ 版本提示 st.cache 已弃用，该如何处理？","Streamlit 1.19 确实已弃用 `st.cache`。维护者已确认该问题并计划迁移到新的缓存机制（如 `@st.cache_data` 或 `@st.cache_resource`）。建议用户关注库的更新，或在本地使用时根据 Streamlit 官方文档手动调整缓存装饰器。","https:\u002F\u002Fgithub.com\u002Fexplosion\u002Fspacy-streamlit\u002Fissues\u002F46",{"id":140,"question_zh":141,"answer_zh":142,"source_url":143},45196,"访问在线 Demo 时遇到 ModuleNotFoundError (例如 typer, click 等模块缺失) 如何解决？","这通常是由于演示环境的依赖项未正确安装或版本冲突导致的。维护者已修复了该问题。如果是本地遇到类似错误，请确保在虚拟环境中重新安装所有依赖：\n`pip install -r requirements.txt`\n或者尝试升级 `spacy-streamlit` 到最新版本以获取修复后的依赖配置。","https:\u002F\u002Fgithub.com\u002Fexplosion\u002Fspacy-streamlit\u002Fissues\u002F43",{"id":145,"question_zh":146,"answer_zh":147,"source_url":148},45197,"在使用非英语模型（如意大利语）运行 visualize_parser 时出现 NotImplementedError: noun_chunks not implemented 错误怎么办？","这是因为某些语言的 Spacy 模型尚未实现 `noun_chunks` 语法迭代器（例如意大利语 'it'）。当 `visualize_parser` 尝试渲染依存句法图时会调用此功能从而报错。\n临时解决方案是：\n1. 避免对该语言模型使用 `visualize_parser` 功能。\n2. 或者在代码中手动禁用 parser 可视化，仅保留 NER 等其他功能。\n3. 贡献者可以为该语言模型添加 `noun_chunks` 支持并提交 PR 到 Spacy 主仓库。","https:\u002F\u002Fgithub.com\u002Fexplosion\u002Fspacy-streamlit\u002Fissues\u002F36",{"id":150,"question_zh":151,"answer_zh":152,"source_url":153},45198,"可视化命名实体（NER）时，文本中的换行符丢失或段落被合并成一行，如何修复？","这是因为生成的 HTML 中多余的空白字符影响了渲染。虽然 `displacy` 会将 `\\n` 转换为 `\u003Cbr>`，但额外的空格可能导致 Markdown 渲染异常。\n建议在处理 HTML 时使用正则表达式替换多余的空格，而不是直接移除换行符：\n```python\nimport re\nhtml = re.sub(\"\\s{2,}\", \" \", html)\n```\n这将把两个及以上的连续空白字符替换为单个空格，从而保留段落结构并修复显示问题。","https:\u002F\u002Fgithub.com\u002Fexplosion\u002Fspacy-streamlit\u002Fissues\u002F50",[155,160,165,170,175,180,185,190,195,200,205,209],{"id":156,"version":157,"summary_zh":158,"released_at":159},360053,"v1.0.6","* 更新适用于 Streamlit v1.18 及以上版本的缓存装饰器","2023-04-25T09:43:58",{"id":161,"version":162,"summary_zh":163,"released_at":164},360054,"v1.0.5","## 🔴 错误修复\n\n- 修复问题 #40：在 `visualize_ner` 中移除重复的 NER 标签。\n\n## 👥 贡献者\n\n@narayanacharya6","2023-02-27T08:57:11",{"id":166,"version":167,"summary_zh":168,"released_at":169},360055,"v1.0.4","## ✨ 新功能与改进\n\n- **新增** `visualize_spans`，用于在 displaCy 中支持词元范围可视化：\n    - PR https:\u002F\u002Fgithub.com\u002Fexplosion\u002Fspacy-streamlit\u002Fpull\u002F37\n- `visualize_{parser,ner,spans}` 函数现在接受 `manual` 参数，以实现 [手动渲染数据](https:\u002F\u002Fspacy.io\u002Fusage\u002Fvisualizers#manual-usage)。\n- 更新了文档字符串，确保参数及类型正确。\n- `visualize_parser` 现在接受 `displacy_options` 参数，用于为该可视化工具提供 [选项](https:\u002F\u002Fspacy.io\u002Fapi\u002Ftop-level#options-dep)。\n\n- 新增示例脚本：\n    - [05_visualize-spans.py](https:\u002F\u002Fgithub.com\u002Fexplosion\u002Fspacy-streamlit\u002Fblob\u002Fmaster\u002Fexamples\u002F05_visualize-spans.py)\n\n## 👥 贡献者\n\n@pmbaumgartner、@svlandeg、@rmitsch\n\n## 变更内容\n* 由 @svlandeg 在 https:\u002F\u002Fgithub.com\u002Fexplosion\u002Fspacy-streamlit\u002Fpull\u002F35 中修复了示例 03 的标题。\n* 由 @pmbaumgartner 在 https:\u002F\u002Fgithub.com\u002Fexplosion\u002Fspacy-streamlit\u002Fpull\u002F37 中添加了 `visualize_spans` 函数、`manual` 参数以及相应的文档字符串。\n\n\n**完整变更日志**：https:\u002F\u002Fgithub.com\u002Fexplosion\u002Fspacy-streamlit\u002Fcompare\u002Fv1.0.3...v1.0.4","2022-06-14T19:39:05",{"id":171,"version":172,"summary_zh":173,"released_at":174},360056,"v1.0.3","## ✨ 新功能和改进\n\n- 对 `visualize_ner` 的改进：\n  - PR https:\u002F\u002Fgithub.com\u002Fexplosion\u002Fspacy-streamlit\u002Fpull\u002F26：优化用户体验和布局\n  - PR https:\u002F\u002Fgithub.com\u002Fexplosion\u002Fspacy-streamlit\u002Fpull\u002F27：允许在 `visualize_ner` 中使用 `manual` 选项\n  - PR https:\u002F\u002Fgithub.com\u002Fexplosion\u002Fspacy-streamlit\u002Fpull\u002F31：允许向 `visualize_ner` 传递额外的 `displacy_options`\n\n- PR https:\u002F\u002Fgithub.com\u002Fexplosion\u002Fspacy-streamlit\u002Fpull\u002F25：在 `visualizer.py` 中直接使用 Streamlit 的主题选项\n\n- PR https:\u002F\u002Fgithub.com\u002Fexplosion\u002Fspacy-streamlit\u002Fpull\u002F29：确保在 `visualize_similarity` 中正确传递文本\n\n- 新的示例脚本：\n  - [03_visualize-ner-manual.py](https:\u002F\u002Fgithub.com\u002Fexplosion\u002Fspacy-streamlit\u002Fblob\u002Fmaster\u002Fexamples\u002F03_visualize-ner-manual.py)\n  - [04_visualize-ner-extra-options.py](https:\u002F\u002Fgithub.com\u002Fexplosion\u002Fspacy-streamlit\u002Fblob\u002Fmaster\u002Fexamples\u002F04_visualize-ner-extra-options.py)\n\n \n## 👥 贡献者\n\n@callistachang, @honnibal, @ines, @Jette16, @narayanacharya6, @svlandeg\n","2022-03-31T16:47:36",{"id":176,"version":177,"summary_zh":178,"released_at":179},360057,"v1.0.2","* 移除已弃用的 `beta_` 前缀，以兼容 Streamlit 0.86.0 及更高版本。","2021-08-25T13:02:22",{"id":181,"version":182,"summary_zh":183,"released_at":184},360058,"v1.0.0","* 针对 spaCy 3.0 的更新。","2021-03-12T09:16:02",{"id":186,"version":187,"summary_zh":188,"released_at":189},360059,"v1.0.0rc1","> 🌙 **本版本为预发布版，需要使用 [spaCy v3](https:\u002F\u002Fnightly.spacy.io\u002Fusage\u002Fv3)（夜间构建版本）。**\n\n* 升级到最新版本的 Streamlit，并使用列布局和折叠面板组件来实现控件。\n* 将可视化工具专用的设置移至主内容区域，而非侧边栏。\n* 新增 `show_config` 设置，用于显示当前加载模型的 `config.cfg` 配置文件。\n* 新增 `default_model` 设置，用于指定下拉菜单中自动选中的选项。\n* 新增 `show_pipeline_info` 设置，用于切换侧边栏中管道描述的显示与隐藏。\n* 更新默认的标记属性，新增 `Token.morph` 和 `Token.is_sent_start`。\n* 新增 `get_default_text` 回调函数，可根据 `nlp` 对象（例如语言类型）生成默认文本。","2021-01-27T07:07:49",{"id":191,"version":192,"summary_zh":193,"released_at":194},360060,"v1.0.0rc0","> 🌙 **此版本为预发布版，需要 [spaCy v3](https:\u002F\u002Fnightly.spacy.io\u002Fusage\u002Fv3)（夜间构建版本）。**\n\n* 升级到最新版 Streamlit，并使用列布局和折叠面板组件来实现控件。\n* 将可视化工具专用的设置移至主内容区域，而非侧边栏。\n* 新增 `show_config` 设置，用于显示当前加载模型的 `config.cfg` 配置文件。\n* 新增 `default_model` 设置，用于指定下拉菜单中自动选中的选项。\n* 新增 `show_pipeline_info` 设置，用于切换侧边栏中管道描述的显示与隐藏。\n* 更新默认的标记属性，新增 `Token.morph` 和 `Token.is_sent_start`。","2020-10-15T14:12:37",{"id":196,"version":197,"summary_zh":198,"released_at":199},360061,"v0.1.0","- 清理颜色主题的自定义 CSS。\n- 支持传入模型名称列表，也支持传入一个将模型映射到描述的字典，用于在下拉菜单中显示。\n- 添加 `show_visualizer_select` 选项，允许用户根据指定的选项切换显示的可视化组件。\n- 将 JSON `Doc` 和模型元数据的按钮替换为复选框。","2020-09-19T11:37:57",{"id":201,"version":202,"summary_zh":203,"released_at":204},360062,"v0.0.3","- 为小部件添加 `key` 参数，以避免出现重复小部件的问题。- 为 `ner_visualizer` 添加 `colors` 参数。\n\n感谢 @Jcharis、@yagays、@pmbaumgartner、@andfanilo 和 @discdiver 提供的拉取请求！","2020-09-02T10:00:26",{"id":206,"version":207,"summary_zh":76,"released_at":208},360063,"v0.0.2","2020-06-23T11:40:30",{"id":210,"version":211,"summary_zh":76,"released_at":212},360064,"v0.0.1","2020-06-23T11:22:36"]