[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"similar-kengz--aiva":3,"tool-kengz--aiva":64},[4,17,27,35,48,56],{"id":5,"name":6,"github_repo":7,"description_zh":8,"stars":9,"difficulty_score":10,"last_commit_at":11,"category_tags":12,"status":16},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 真正成长为懂上",145895,2,"2026-04-08T11:32:59",[13,14,15],"开发框架","Agent","语言模型","ready",{"id":18,"name":19,"github_repo":20,"description_zh":21,"stars":22,"difficulty_score":23,"last_commit_at":24,"category_tags":25,"status":16},4487,"LLMs-from-scratch","rasbt\u002FLLMs-from-scratch","LLMs-from-scratch 是一个基于 PyTorch 的开源教育项目，旨在引导用户从零开始一步步构建一个类似 ChatGPT 的大型语言模型（LLM）。它不仅是同名技术著作的官方代码库，更提供了一套完整的实践方案，涵盖模型开发、预训练及微调的全过程。\n\n该项目主要解决了大模型领域“黑盒化”的学习痛点。许多开发者虽能调用现成模型，却难以深入理解其内部架构与训练机制。通过亲手编写每一行核心代码，用户能够透彻掌握 Transformer 架构、注意力机制等关键原理，从而真正理解大模型是如何“思考”的。此外，项目还包含了加载大型预训练权重进行微调的代码，帮助用户将理论知识延伸至实际应用。\n\nLLMs-from-scratch 特别适合希望深入底层原理的 AI 开发者、研究人员以及计算机专业的学生。对于不满足于仅使用 API，而是渴望探究模型构建细节的技术人员而言，这是极佳的学习资源。其独特的技术亮点在于“循序渐进”的教学设计：将复杂的系统工程拆解为清晰的步骤，配合详细的图表与示例，让构建一个虽小但功能完备的大模型变得触手可及。无论你是想夯实理论基础，还是为未来研发更大规模的模型做准备",90106,3,"2026-04-06T11:19:32",[15,26,14,13],"图像",{"id":28,"name":29,"github_repo":30,"description_zh":31,"stars":32,"difficulty_score":10,"last_commit_at":33,"category_tags":34,"status":16},3704,"NextChat","ChatGPTNextWeb\u002FNextChat","NextChat 是一款轻量且极速的 AI 助手，旨在为用户提供流畅、跨平台的大模型交互体验。它完美解决了用户在多设备间切换时难以保持对话连续性，以及面对众多 AI 模型不知如何统一管理的痛点。无论是日常办公、学习辅助还是创意激发，NextChat 都能让用户随时随地通过网页、iOS、Android、Windows、MacOS 或 Linux 端无缝接入智能服务。\n\n这款工具非常适合普通用户、学生、职场人士以及需要私有化部署的企业团队使用。对于开发者而言，它也提供了便捷的自托管方案，支持一键部署到 Vercel 或 Zeabur 等平台。\n\nNextChat 的核心亮点在于其广泛的模型兼容性，原生支持 Claude、DeepSeek、GPT-4 及 Gemini Pro 等主流大模型，让用户在一个界面即可自由切换不同 AI 能力。此外，它还率先支持 MCP（Model Context Protocol）协议，增强了上下文处理能力。针对企业用户，NextChat 提供专业版解决方案，具备品牌定制、细粒度权限控制、内部知识库整合及安全审计等功能，满足公司对数据隐私和个性化管理的高标准要求。",87618,"2026-04-05T07:20:52",[13,15],{"id":36,"name":37,"github_repo":38,"description_zh":39,"stars":40,"difficulty_score":10,"last_commit_at":41,"category_tags":42,"status":16},2268,"ML-For-Beginners","microsoft\u002FML-For-Beginners","ML-For-Beginners 是由微软推出的一套系统化机器学习入门课程，旨在帮助零基础用户轻松掌握经典机器学习知识。这套课程将学习路径规划为 12 周，包含 26 节精炼课程和 52 道配套测验，内容涵盖从基础概念到实际应用的完整流程，有效解决了初学者面对庞大知识体系时无从下手、缺乏结构化指导的痛点。\n\n无论是希望转型的开发者、需要补充算法背景的研究人员，还是对人工智能充满好奇的普通爱好者，都能从中受益。课程不仅提供了清晰的理论讲解，还强调动手实践，让用户在循序渐进中建立扎实的技能基础。其独特的亮点在于强大的多语言支持，通过自动化机制提供了包括简体中文在内的 50 多种语言版本，极大地降低了全球不同背景用户的学习门槛。此外，项目采用开源协作模式，社区活跃且内容持续更新，确保学习者能获取前沿且准确的技术资讯。如果你正寻找一条清晰、友好且专业的机器学习入门之路，ML-For-Beginners 将是理想的起点。",85052,"2026-04-08T11:03:08",[26,43,44,45,14,46,15,13,47],"数据工具","视频","插件","其他","音频",{"id":49,"name":50,"github_repo":51,"description_zh":52,"stars":53,"difficulty_score":23,"last_commit_at":54,"category_tags":55,"status":16},3128,"ragflow","infiniflow\u002Fragflow","RAGFlow 是一款领先的开源检索增强生成（RAG）引擎，旨在为大语言模型构建更精准、可靠的上下文层。它巧妙地将前沿的 RAG 技术与智能体（Agent）能力相结合，不仅支持从各类文档中高效提取知识，还能让模型基于这些知识进行逻辑推理和任务执行。\n\n在大模型应用中，幻觉问题和知识滞后是常见痛点。RAGFlow 通过深度解析复杂文档结构（如表格、图表及混合排版），显著提升了信息检索的准确度，从而有效减少模型“胡编乱造”的现象，确保回答既有据可依又具备时效性。其内置的智能体机制更进一步，使系统不仅能回答问题，还能自主规划步骤解决复杂问题。\n\n这款工具特别适合开发者、企业技术团队以及 AI 研究人员使用。无论是希望快速搭建私有知识库问答系统，还是致力于探索大模型在垂直领域落地的创新者，都能从中受益。RAGFlow 提供了可视化的工作流编排界面和灵活的 API 接口，既降低了非算法背景用户的上手门槛，也满足了专业开发者对系统深度定制的需求。作为基于 Apache 2.0 协议开源的项目，它正成为连接通用大模型与行业专有知识之间的重要桥梁。",77062,"2026-04-04T04:44:48",[14,26,13,15,46],{"id":57,"name":58,"github_repo":59,"description_zh":60,"stars":61,"difficulty_score":23,"last_commit_at":62,"category_tags":63,"status":16},519,"PaddleOCR","PaddlePaddle\u002FPaddleOCR","PaddleOCR 是一款基于百度飞桨框架开发的高性能开源光学字符识别工具包。它的核心能力是将图片、PDF 等文档中的文字提取出来，转换成计算机可读取的结构化数据，让机器真正“看懂”图文内容。\n\n面对海量纸质或电子文档，PaddleOCR 解决了人工录入效率低、数字化成本高的问题。尤其在人工智能领域，它扮演着连接图像与大型语言模型（LLM）的桥梁角色，能将视觉信息直接转化为文本输入，助力智能问答、文档分析等应用场景落地。\n\nPaddleOCR 适合开发者、算法研究人员以及有文档自动化需求的普通用户。其技术优势十分明显：不仅支持全球 100 多种语言的识别，还能在 Windows、Linux、macOS 等多个系统上运行，并灵活适配 CPU、GPU、NPU 等各类硬件。作为一个轻量级且社区活跃的开源项目，PaddleOCR 既能满足快速集成的需求，也能支撑前沿的视觉语言研究，是处理文字识别任务的理想选择。",75149,"2026-04-08T11:09:19",[15,26,13,46],{"id":65,"github_repo":66,"name":67,"description_en":68,"description_zh":69,"ai_summary_zh":70,"readme_en":71,"readme_zh":72,"quickstart_zh":73,"use_case_zh":74,"hero_image_url":75,"owner_login":76,"owner_name":77,"owner_avatar_url":78,"owner_bio":79,"owner_company":80,"owner_location":81,"owner_email":82,"owner_twitter":80,"owner_website":83,"owner_url":84,"languages":85,"stars":109,"forks":110,"last_commit_at":111,"license":112,"difficulty_score":113,"env_os":114,"env_gpu":115,"env_ram":115,"env_deps":116,"category_tags":128,"github_topics":129,"view_count":10,"oss_zip_url":80,"oss_zip_packed_at":80,"status":16,"created_at":136,"updated_at":137,"faqs":138,"releases":168},5540,"kengz\u002Faiva","aiva","AIVA (A.I. Virtual Assistant): General-purpose virtual assistant for developers.","AIVA 是一款专为开发者打造的通用型人工智能虚拟助手框架。它旨在解决传统机器人开发中重复造轮子、功能单一且难以跨平台部署的痛点。以往，开发者往往需要为不同平台（如 Slack、Telegram、Facebook）分别构建机器人，且受限于单一编程语言，难以整合先进的 AI 能力。\n\nAIVA 通过“一次构建，处处运行”的理念，让开发者能够轻松创建同时部署在多个主流通讯平台上的智能机器人。其核心亮点在于强大的多语言互操作性：借助 SocketIO 技术，你可以在 Node.js、Python、Ruby 等不同语言编写的模块间自由交互。这意味着你可以用 Python 编写复杂的自然语言处理或机器学习逻辑（如调用 TensorFlow、Scikit-learn 等库），而用 Node.js 处理业务逻辑，并将它们无缝集成到同一个机器人中。\n\n此外，AIVA 基于成熟的 Hubot 架构扩展而来，具有极高的可定制性，允许开发者灵活添加自定义模块。无论是需要快速原型验证的工程师，还是希望将前沿 AI 模型落地到即时通讯场景的研究人员，AIVA 都能提供坚实的基础设施，让大家从繁琐的底层搭建中解放","AIVA 是一款专为开发者打造的通用型人工智能虚拟助手框架。它旨在解决传统机器人开发中重复造轮子、功能单一且难以跨平台部署的痛点。以往，开发者往往需要为不同平台（如 Slack、Telegram、Facebook）分别构建机器人，且受限于单一编程语言，难以整合先进的 AI 能力。\n\nAIVA 通过“一次构建，处处运行”的理念，让开发者能够轻松创建同时部署在多个主流通讯平台上的智能机器人。其核心亮点在于强大的多语言互操作性：借助 SocketIO 技术，你可以在 Node.js、Python、Ruby 等不同语言编写的模块间自由交互。这意味着你可以用 Python 编写复杂的自然语言处理或机器学习逻辑（如调用 TensorFlow、Scikit-learn 等库），而用 Node.js 处理业务逻辑，并将它们无缝集成到同一个机器人中。\n\n此外，AIVA 基于成熟的 Hubot 架构扩展而来，具有极高的可定制性，允许开发者灵活添加自定义模块。无论是需要快速原型验证的工程师，还是希望将前沿 AI 模型落地到即时通讯场景的研究人员，AIVA 都能提供坚实的基础设施，让大家从繁琐的底层搭建中解放出来，专注于核心功能的创新与实现。","# AIVA [![GitHub version](https:\u002F\u002Fbadge.fury.io\u002Fgh\u002Fkengz%2Faiva.svg)](http:\u002F\u002Fbadge.fury.io\u002Fgh\u002Fkengz%2Faiva) [![CircleCI](https:\u002F\u002Fcircleci.com\u002Fgh\u002Fkengz\u002Fpoly-socketio.svg?style=shield)](https:\u002F\u002Fcircleci.com\u002Fgh\u002Fkengz\u002Fpoly-socketio) [![Codacy Badge](https:\u002F\u002Fapi.codacy.com\u002Fproject\u002Fbadge\u002FGrade\u002F53459c1d07154b5e8d95d9f9922e5e7a)](https:\u002F\u002Fwww.codacy.com\u002Fapp\u002Fkengzwl\u002Faiva?utm_source=github.com&amp;utm_medium=referral&amp;utm_content=kengz\u002Faiva&amp;utm_campaign=Badge_Grade) [![Codacy Badge](https:\u002F\u002Fapi.codacy.com\u002Fproject\u002Fbadge\u002FCoverage\u002F53459c1d07154b5e8d95d9f9922e5e7a)](https:\u002F\u002Fwww.codacy.com\u002Fapp\u002Fkengzwl\u002Faiva?utm_source=github.com&utm_medium=referral&utm_content=kengz\u002Faiva&utm_campaign=Badge_Coverage) [![Dependency Status](https:\u002F\u002Fgemnasium.com\u002Fkengz\u002Faiva.svg)](https:\u002F\u002Fgemnasium.com\u002Fkengz\u002Faiva) [![MIT licensed](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002Flicense-MIT-blue.svg)](https:\u002F\u002Fraw.githubusercontent.com\u002Fhyperium\u002Fhyper\u002Fmaster\u002FLICENSE) [![GitHub forks](https:\u002F\u002Fimg.shields.io\u002Fgithub\u002Fforks\u002Fkengz\u002Faiva.svg?style=social&label=Fork)](https:\u002F\u002Fgithub.com\u002Fkengz\u002Faiva) [![GitHub stars](https:\u002F\u002Fimg.shields.io\u002Fgithub\u002Fstars\u002Fkengz\u002Faiva.svg?style=social&label=Star)](https:\u002F\u002Fgithub.com\u002Fkengz\u002Faiva)\n\n**AIVA** (A.I. Virtual Assistant): General-purpose virtual assistant for developers. [https:\u002F\u002Fkengz.github.io\u002Faiva-doc\u002F](https:\u002F\u002Fkengz.github.io\u002Faiva-doc\u002F)\n\n*This project is under extension - to build a [Contextual Graph Knowledge Base](https:\u002F\u002Fkengz.github.io\u002Faiva-doc\u002F#contextual-graph-knowledge-base) for knowledge encoding. Check [Roadmap](#roadmap) for more.*\n\nIt is a **bot-generalization**: you can implement any features, use with major AI tools, deploy across platforms, and code in multiple languages.\n\n\n| AIVA is | Details |\n|:---|---|\n| general-purpose | An app interface, AI assistant, anything! |\n| cross-platform | Deploy simultaneously on **Slack, Telegram, Facebook**, or any [hubot adapters](https:\u002F\u002Fgithub.com\u002Fgithub\u002Fhubot\u002Fblob\u002Fmaster\u002Fdocs\u002Fadapters.md) |\n| multi-language | Cross-interaction among `Node.js`, `Python`, `Ruby`, etc. using `SocketIO`. |\n| built-in with AI tools (not preinstalled since v4) | Tensorflow, SkFlow, Scikit, Pandas, Indico.ml, spaCy, Watson, Google APIs |\n| hackable | It extends [Hubot](https:\u002F\u002Fgithub.com\u002Fgithub\u002Fhubot). Add your own modules! |\n| powerful, easy to use | Check out [setup](https:\u002F\u002Fkengz.github.io\u002Faiva-doc\u002F#setup) and [features](https:\u002F\u002Fkengz.github.io\u002Faiva-doc\u002F#features) |\n\n>To see what they mean, say you have a todo-list feature for AIVA, written in Node.js and leverages NLP and ML from Python. Set your todo list earlier from Slack on desktop? You can access it from Telegram or Facebook on mobile.\n\n>Deepdream in AIVA (checkout v3.2.1), only took a few hours on the Deepdream module, and deployed it in AIVA in just minutes. Runs on Fb and Telegram simulteneously: \u003Cimg alt=\"Deepdream in AIVA\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fkengz_aiva_readme_f54847b1eb76.gif\" \u002F>\n\nWe see people spending a lot of time building bots instead of focusing on what they want to do. It still requires much effort to just get a bot up and running. Moreover, the bot built is often confined to a single language, single platform, and without AI capabilities.\n\nWhy restrict when you can have all of it? Why build multiple bots when you can have one that plugs into all platforms and runs all languages?\n\nAIVA exists to help with that - we do the heavy-lifting and build a ready-to-use bot; it is general purpose, multi-language, cross-platform, with robust design and tests, to suite your needs. \n\nAIVA gives you powerful bot tools, saves you the time to build from scratch, and allows you to focus on what you want to do. Morever, you can **build once, run everywhere** with AIVA's multi-adapter [(Slack, Telegram, Fb)](https:\u002F\u002Fkengz.github.io\u002Faiva-doc\u002F#adapters).\n\n\n\n## Installation\n\n\n1\\. Fork this repo so you can pull the new releases later:\n\n&nbsp; &nbsp; [![GitHub forks](https:\u002F\u002Fimg.shields.io\u002Fgithub\u002Fforks\u002Fkengz\u002Faiva.svg?style=social&label=Fork)](https:\u002F\u002Fgithub.com\u002Fkengz\u002Faiva) [![GitHub stars](https:\u002F\u002Fimg.shields.io\u002Fgithub\u002Fstars\u002Fkengz\u002Faiva.svg?style=social&label=Star)](https:\u002F\u002Fgithub.com\u002Fkengz\u002Faiva)\n\n2\\. Clone **your forked repository**:\n\n```shell\ngit clone https:\u002F\u002Fgithub.com\u002FYOURUSERNAME\u002Faiva.git\n```\n\nTo sync the latest release of AIVA to your fork:\n\n```shell\ngit remote add upstream https:\u002F\u002Fgithub.com\u002Fkengz\u002Faiva.git\ngit fetch upstream\ngit merge upstream\u002Fmaster\n```\n\n## \u003Ca name=\"setup\">\u003C\u002Fa>Setup\n\nThe line below runs `bin\u002Fsetup && bin\u002Fcopy-config && npm install`:\n\n```shell\nnpm run setup\n```\n\nThen edit `config\u002F` files: `default.json`(development), `production.json`(production, optional), `db.json`(mysql)\n\nThe command installs the dependencies via `bin\u002Finstall && npm install`, and prepare the database for aiva to run on. The dependencies are minimal: `nodejs>=6`, `python3`, and `mysql`.\n\nSee `bin\u002Finstall` for the full list, and customize your own. This also runs the same sequence as the CircleCI build in `circle.yml`.\n\n**Docker**. We also offer a Docker image [kengz\u002Faiva](https:\u002F\u002Fhub.docker.com\u002Fr\u002Fkengz\u002Faiva\u002F). It runs the same except with an extra layer of Docker. See [Docker installation](https:\u002F\u002Fkengz.github.io\u002Faiva-doc\u002F#docker-installation) for more.\n\n\n## \u003Ca name=\"run\">\u003C\u002Fa>Run\n\n```shell\nnpm start # runs 'aivadev' in development mode\n```\n\n```shell\n# Add flags for more modes\nnpm start --debug # activate debug logger\nnpm start production # runs 'aiva' in production mode\n```\n\nSee [Commands](https:\u002F\u002Fkengz.github.io\u002Faiva-doc\u002F#commands) for more. This will start AIVA with the default hubot adapters: Slack, Telegram, Facebook (only if activated). See [**Adapters**](https:\u002F\u002Fkengz.github.io\u002Faiva-doc\u002F#adapters) for connecting to different chat platforms.\n\n>AIVA saying hi, translating, running deep neural net; on Slack, Telegram, Facebook:\n\u003Cimg alt=\"AIVA on Slack, Telegram\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fkengz_aiva_readme_2876849de5d8.png\" \u002F>\n\n\nCheck [**Setup tips**](https:\u002F\u002Fkengz.github.io\u002Faiva-doca\u002F#setup-tips) for help.\n\n\n## Legacy Releases\n\nAIVA was known as Jarvis in version 2. It is now deprecated, but if you need to reference stuff from Jarvis, do `git checkout tags\u002Fv2.0` or checkout [the releases](https:\u002F\u002Fgithub.com\u002Fkengz\u002Faiva\u002Freleases).\n\nAIVA v3 was last released at [v3.2.1](https:\u002F\u002Fgithub.com\u002Fkengz\u002Faiva\u002Freleases\u002Ftag\u002Fv3.2.1), which was full featured, but quite heavy. We retire it in favor of a lighter, more developer-friendly and extendible version.\n\n## Roadmap\n\n- a built in graph brain for ad-hoc knowledge encoding, using [CGKB](https:\u002F\u002Fkengz.github.io\u002Faiva-doc\u002F#cgkb) and [HTMI](https:\u002F\u002Fkengz.github.io\u002Faiva-doc\u002F#htmi)\n- a built in NLP intent-parsing engine\n\n## Contributing\n\nWe'd love for you to contribute and make AIVA even better for all developers. We're mainly interested in something generic and foundational, e.g. adding client for a new language, improving the NLP, adding a useful generic module, adding more adapters like Skype or Twilio.\n","# AIVA [![GitHub版本](https:\u002F\u002Fbadge.fury.io\u002Fgh\u002Fkengz%2Faiva.svg)](http:\u002F\u002Fbadge.fury.io\u002Fgh\u002Fkengz%2Faiva) [![CircleCI](https:\u002F\u002Fcircleci.com\u002Fgh\u002Fkengz\u002Fpoly-socketio.svg?style=shield)](https:\u002F\u002Fcircleci.com\u002Fgh\u002Fkengz\u002Fpoly-socketio) [![Codacy Badge](https:\u002F\u002Fapi.codacy.com\u002Fproject\u002Fbadge\u002FGrade\u002F53459c1d07154b5e8d95d9f9922e5e7a)](https:\u002F\u002Fwww.codacy.com\u002Fapp\u002Fkengzwl\u002Faiva?utm_source=github.com&amp;utm_medium=referral&amp;utm_content=kengz\u002Faiva&amp;utm_campaign=Badge_Grade) [![Codacy Badge](https:\u002F\u002Fapi.codacy.com\u002Fproject\u002Fbadge\u002FCoverage\u002F53459c1d07154b5e8d95d9f9922e5e7a)](https:\u002F\u002Fwww.codacy.com\u002Fapp\u002Fkengzwl\u002Faiva?utm_source=github.com&utm_medium=referral&utm_content=kengz\u002Faiva&utm_campaign=Badge_Coverage) [![依赖状态](https:\u002F\u002Fgemnasium.com\u002Fkengz\u002Faiva.svg)](https:\u002F\u002Fgemnasium.com\u002Fkengz\u002Faiva) [![MIT许可](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002Flicense-MIT-blue.svg)](https:\u002F\u002Fraw.githubusercontent.com\u002Fhyperium\u002Fhyper\u002Fmaster\u002FLICENSE) [![GitHub叉数](https:\u002F\u002Fimg.shields.io\u002Fgithub\u002Fforks\u002Fkengz\u002Faiva.svg?style=social&label=Fork)](https:\u002F\u002Fgithub.com\u002Fkengz\u002Faiva) [![GitHub星标数](https:\u002F\u002Fimg.shields.io\u002Fgithub\u002Fstars\u002Fkengz\u002Faiva.svg?style=social&label=Star)](https:\u002F\u002Fgithub.com\u002Fkengz\u002Faiva)\n\n**AIVA**（人工智能虚拟助手）：面向开发者的通用型虚拟助手。[https:\u002F\u002Fkengz.github.io\u002Faiva-doc\u002F](https:\u002F\u002Fkengz.github.io\u002Faiva-doc\u002F)\n\n*本项目正在扩展中——旨在构建一个用于知识编码的【上下文图谱知识库】。更多详情请参阅【路线图】。*\n\n它是一种“机器人泛化”解决方案：您可以实现任何功能，与主流AI工具集成，在多个平台上部署，并使用多种编程语言进行开发。\n\n\n| AIVA 的特点 | 详情 |\n|:---|---|\n| 通用性 | 可作为应用界面、AI助手，用途广泛！ |\n| 跨平台 | 可同时部署于 **Slack、Telegram、Facebook** 或其他任何 [hubot适配器](https:\u002F\u002Fgithub.com\u002Fgithub\u002Fhubot\u002Fblob\u002Fmaster\u002Fdocs\u002Fadapters.md) |\n| 多语言支持 | 使用 `SocketIO` 实现 `Node.js`、`Python`、`Ruby` 等语言之间的跨语言交互。 |\n| 内置AI工具（自v4起未预装） | Tensorflow、SkFlow、Scikit、Pandas、Indico.ml、spaCy、Watson、Google API等 |\n| 可扩展性强 | 基于 [Hubot](https:\u002F\u002Fgithub.com\u002Fgithub\u002Fhubot) 进行扩展，可添加自定义模块！ |\n| 功能强大、易于使用 | 请查看【设置】和【功能】部分以了解更多信息。|\n\n>例如，假设您为 AIVA 开发了一个待办事项列表功能，该功能用 Node.js 编写，并利用了 Python 的 NLP 和 ML 技术。如果您之前在桌面端的 Slack 上设置了待办事项列表，那么现在也可以通过手机上的 Telegram 或 Facebook 访问它。\n\n>AIVA 中的 Deepdream 示例（v3.2.1 版本），仅用了几个小时就完成了 Deepdream 模块的开发，并在几分钟内将其部署到 AIVA 中。它可以同时在 Fb 和 Telegram 上运行： \u003Cimg alt=\"AIVA中的Deepdream\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fkengz_aiva_readme_f54847b1eb76.gif\" \u002F>\n\n我们发现许多人在构建机器人上花费了大量时间，而忽略了真正想要实现的目标。仅仅让一个机器人正常运行就需要投入大量的精力。此外，大多数机器人往往局限于单一语言、单一平台，且缺乏 AI 能力。\n\n既然可以拥有这一切，为什么还要受限呢？既然可以打造一个能够接入所有平台、支持多种语言的机器人，为什么还要分别开发多个机器人呢？\n\nAIVA 的诞生正是为了解决这些问题——我们承担了繁重的工作，为您构建一个开箱即用的机器人；它具有通用性、多语言支持、跨平台特性，并经过稳健的设计与测试，完全符合您的需求。\n\nAIVA 为您提供强大的机器人工具，节省您从零开始构建的时间，让您专注于真正想做的事情。此外，借助 AIVA 的多适配器功能[(Slack、Telegram、Fb)](https:\u002F\u002Fkengz.github.io\u002Faiva-doc\u002F#adapters)，您可以实现 **一次开发，处处运行**。\n\n\n\n## 安装\n\n\n1\\. 克隆此仓库以便日后拉取最新版本：\n\n&nbsp; &nbsp; [![GitHub叉数](https:\u002F\u002Fimg.shields.io\u002Fgithub\u002Fforks\u002Fkengz\u002Faiva.svg?style=social&label=Fork)](https:\u002F\u002Fgithub.com\u002Fkengz\u002Faiva) [![GitHub星标数](https:\u002F\u002Fimg.shields.io\u002Fgithub\u002Fstars\u002Fkengz\u002Faiva.svg?style=social&label=Star)](https:\u002F\u002Fgithub.com\u002Fkengz\u002Faiva)\n\n2\\. 克隆 **您自己的分支仓库**：\n\n```shell\ngit clone https:\u002F\u002Fgithub.com\u002FYOURUSERNAME\u002Faiva.git\n```\n\n要将 AIVA 的最新版本同步到您的分支：\n\n```shell\ngit remote add upstream https:\u002F\u002Fgithub.com\u002Fkengz\u002Faiva.git\ngit fetch upstream\ngit merge upstream\u002Fmaster\n```\n\n## \u003Ca name=\"setup\">\u003C\u002Fa>设置\n\n以下命令会执行 `bin\u002Fsetup && bin\u002Fcopy-config && npm install`：\n\n```shell\nnpm run setup\n```\n\n然后编辑 `config\u002F` 目录下的文件：`default.json`（开发环境）、`production.json`（生产环境，可选）、`db.json`（MySQL数据库配置）。\n\n该命令会通过 `bin\u002Finstall && npm install` 安装依赖项，并为 AIVA 的运行准备数据库。所需的依赖项非常少：`nodejs>=6`、`python3` 和 `mysql`。\n\n完整的依赖列表请参阅 `bin\u002Finstall` 文件，您也可以根据需要进行自定义。此过程与 CircleCI 在 `circle.yml` 中的构建流程相同。\n\n**Docker**。我们还提供 Docker 镜像 [kengz\u002Faiva](https:\u002F\u002Fhub.docker.com\u002Fr\u002Fkengz\u002Faiva\u002F)。除了多一层 Docker 层之外，其运行方式与上述步骤相同。更多详情请参阅【Docker安装】部分。\n\n\n## \u003Ca name=\"run\">\u003C\u002Fa>运行\n\n```shell\nnpm start # 以开发模式运行 'aivadev'\n```\n\n```shell\n# 添加标志以切换不同模式\nnpm start --debug # 启用调试日志\nnpm start production # 以生产模式运行 'aiva'\n```\n\n更多选项请参阅【命令】部分。这将启动 AIVA，默认使用 hubot 适配器：Slack、Telegram、Facebook（仅在启用时）。如需连接其他聊天平台，请参阅【**适配器**】部分。\n\n>AIVA 在 Slack、Telegram 和 Facebook 上打招呼、翻译并运行深度神经网络：\n\u003Cimg alt=\"AIVA在Slack、Telegram上\" src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fkengz_aiva_readme_2876849de5d8.png\" \u002F>\n\n\n如需帮助，请参阅【**设置提示**】部分。\n\n\n## 旧版发布\n\nAIVA 在 v2 版本中曾被称为 Jarvis。目前该版本已弃用，但如果您需要参考 Jarvis 的相关内容，可以执行 `git checkout tags\u002Fv2.0`，或查看 [发布页面](https:\u002F\u002Fgithub.com\u002Fkengz\u002Faiva\u002Freleases)。\n\nAIVA v3 最后一次发布是在 [v3.2.1](https:\u002F\u002Fgithub.com\u002Fkengz\u002Faiva\u002Freleases\u002Ftag\u002Fv3.2.1)，该版本功能齐全，但体积较大。我们现已停止维护此版本，转而推出更轻量、更便于开发者使用且更具扩展性的新版本。\n\n## 路线图\n\n- 内置图谱大脑，用于临时知识编码，采用 [CGKB](https:\u002F\u002Fkengz.github.io\u002Faiva-doc\u002F#cgkb) 和 [HTMI](https:\u002F\u002Fkengz.github.io\u002Faiva-doc\u002F#htmi)\n- 内置 NLP 意图解析引擎\n\n## 贡献\n\n我们非常欢迎您的贡献，共同使 AIVA 更加完善，惠及所有开发者。我们主要关注通用性和基础性工作，例如为新语言添加客户端、改进 NLP 功能、增加实用的通用模块，或添加 Skype、Twilio 等更多适配器。","# AIVA 快速上手指南\n\nAIVA (A.I. Virtual Assistant) 是一个面向开发者的通用型虚拟助手框架。它基于 Hubot 构建，支持跨平台部署（Slack, Telegram, Facebook 等）和多语言交互（Node.js, Python, Ruby 等），并易于集成 TensorFlow、spaCy 等主流 AI 工具。\n\n## 环境准备\n\n在开始之前，请确保您的系统满足以下最低要求：\n\n*   **操作系统**: Linux, macOS 或 Windows (推荐 Linux\u002FmacOS)\n*   **Node.js**: 版本 >= 6\n*   **Python**: 版本 3.x\n*   **数据库**: MySQL\n*   **其他**: Git\n\n> **注意**：虽然项目支持 Docker 部署，但本指南主要介绍原生安装方式。如需使用 Docker，可参考官方镜像 `kengz\u002Faiva`。\n\n## 安装步骤\n\n### 1. 克隆项目\n首先 Fork 该项目以便后续同步更新，然后克隆您的仓库到本地：\n\n```shell\ngit clone https:\u002F\u002Fgithub.com\u002FYOURUSERNAME\u002Faiva.git\ncd aiva\n```\n\n*(可选) 同步上游最新代码：*\n```shell\ngit remote add upstream https:\u002F\u002Fgithub.com\u002Fkengz\u002Faiva.git\ngit fetch upstream\ngit merge upstream\u002Fmaster\n```\n\n### 2. 初始化与依赖安装\n运行官方提供的设置脚本，该命令会自动执行配置复制和依赖安装：\n\n```shell\nnpm run setup\n```\n\n此命令内部会执行 `bin\u002Fsetup && bin\u002Fcopy-config && npm install`，并准备数据库环境。\n\n### 3. 配置调整\n安装完成后，编辑 `config\u002F` 目录下的配置文件以适配您的环境：\n*   `default.json`: 开发环境配置\n*   `production.json`: 生产环境配置（可选）\n*   `db.json`: MySQL 数据库连接配置\n\n## 基本使用\n\n### 启动服务\n使用以下命令在开发模式下启动 AIVA（默认加载 Slack, Telegram, Facebook 适配器，需先在配置文件中填入对应的 Token）：\n\n```shell\nnpm start\n```\n\n### 常用运行模式\n*   **开启调试日志**：\n    ```shell\n    npm start --debug\n    ```\n*   **生产环境运行**：\n    ```shell\n    npm start production\n    ```\n\n启动成功后，AIVA 将根据配置的适配器连接到相应的聊天平台。您可以在聊天窗口中尝试发送消息，AIVA 将响应问候、翻译请求或执行预设的 AI 任务（如深度学习模块）。\n\n> **提示**：具体的命令列表和适配器连接详情，请参阅官方文档中的 [Commands](https:\u002F\u002Fkengz.github.io\u002Faiva-doc\u002F#commands) 和 [Adapters](https:\u002F\u002Fkengz.github.io\u002Faiva-doc\u002F#adapters) 章节。","某初创团队希望为内部开发组打造一个集代码查询、任务管理和智能分析于一体的助手，以便在 Slack、Telegram 和 Facebook Messenger 上统一使用。\n\n### 没有 aiva 时\n- **重复造轮子**：为了覆盖不同沟通平台，团队必须分别为 Slack、Telegram 等编写三套独立的机器人代码，维护成本极高。\n- **技术栈割裂**：擅长 Python 的算法工程师无法直接贡献 NLP 功能，因为主机器人是用 Node.js 写的，跨语言调用需要复杂的中间件。\n- **AI 集成困难**：想要引入 TensorFlow 或 spaCy 进行智能分析，需要从零配置环境并处理繁琐的依赖关系，耗时数天才能跑通 Demo。\n- **功能扩展缓慢**：每次新增一个简单的“待办事项”功能，都需要修改多个平台的适配逻辑，导致新特性上线周期长达数周。\n\n### 使用 aiva 后\n- **一次构建，多端运行**：利用 aiva 的跨平台适配器，团队只需编写一套核心逻辑，即可同时部署到 Slack、Telegram 和 Facebook，维护工作量减少 70%。\n- **无缝多语言协作**：通过 SocketIO 机制，Node.js 主控程序可直接调用 Python 编写的机器学习模块，让算法工程师能直接参与机器人功能开发。\n- **开箱即用的 AI 能力**：aiva 预集成了 Tensorflow、Scikit-learn 等主流工具，团队仅用几小时就成功上线了基于深度学习的代码推荐功能。\n- **敏捷的功能迭代**：借助其基于 Hubot 的可黑客化架构，开发人员通过添加独立模块即可快速扩展新功能，无需改动底层平台适配代码。\n\naiva 通过消除平台壁垒和技术栈隔阂，让开发者从繁琐的机器人基建中解放出来，专注于创造真正的智能业务价值。","https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fkengz_aiva_f54847b1.gif","kengz","Keng","https:\u002F\u002Foss.gittoolsai.com\u002Favatars\u002Fkengz_998657a3.jpg","Engineer by day, rock climber by night. Mathematician at heart.",null,"NYC","kengzwl@gmail.com","kengz.github.io","https:\u002F\u002Fgithub.com\u002Fkengz",[86,90,94,98,102,105],{"name":87,"color":88,"percentage":89},"JavaScript","#f1e05a",59.8,{"name":91,"color":92,"percentage":93},"Shell","#89e051",14.9,{"name":95,"color":96,"percentage":97},"Python","#3572A5",12.6,{"name":99,"color":100,"percentage":101},"CoffeeScript","#244776",7,{"name":103,"color":104,"percentage":23},"Dockerfile","#384d54",{"name":106,"color":107,"percentage":108},"Ruby","#701516",2.8,845,592,"2026-03-28T13:54:46","MIT",4,"Linux, macOS, Windows","未说明",{"notes":117,"python":118,"dependencies":119},"该工具是一个基于 Hubot 的通用虚拟助手框架，支持跨平台（Slack, Telegram, Facebook 等）和多语言（Node.js, Python, Ruby）交互。核心运行依赖为 Node.js 6+、Python 3 和 MySQL。虽然 README 提及支持 Tensorflow、SkFlow 等 AI 库，但明确指出自 v4 版本起不再预安装这些重型 AI 依赖，需用户根据需求自行配置。提供 Docker 镜像以简化部署。","Python 3",[120,121,122,123,124,125,126,127],"Node.js >= 6","MySQL","SocketIO","Hubot","Tensorflow (可选)","Scikit-learn (可选)","Pandas (可选)","spaCy (可选)",[15,46],[130,131,132,133,134,135],"bot","nlp","nodejs","slack","telegram","fb","2026-03-27T02:49:30.150509","2026-04-08T22:10:14.385651",[139,144,149,154,158,163],{"id":140,"question_zh":141,"answer_zh":142,"source_url":143},25147,"运行 `npm start --debug` 时脚本立即退出并报错 \"Forever detected script exited with code: 0\"，如何解决？","这通常是因为 Node.js 进程在 Python 客户端完全启动并加入 SocketIO 之前就尝试发送输入，导致 Promise 缺失。虽然警告本身无害，但会导致循环重启。解决方案是增加 SocketIO 服务器的超时等待时间，确保所有组件（特别是较慢的虚拟机环境）有足够时间启动。此外，请检查是否有模块导入失败（如 fsevents 在非 macOS 平台），维护者已针对此类问题在 `cgkb` 分支推送了修复。","https:\u002F\u002Fgithub.com\u002Fkengz\u002Faiva\u002Fissues\u002F21",{"id":145,"question_zh":146,"answer_zh":147,"source_url":148},25148,"在 Ubuntu 16.04 上安装时遇到 `fsevents` 可选依赖警告导致模块导入失败怎么办？","这是正常现象，`fsevents` 仅支持 macOS (`darwin`)，在 Linux 上会被跳过。但如果因此导致其他模块（如 `CGKB`）导入失败，请切换到 `cgkb` 分支获取修复版本：\n1. 切换分支：`git checkout cgkb`\n2. 更新依赖。\n同时，由于某些虚拟机启动较慢，建议参考 Issue #21 增加 SocketIO 服务器的超时设置。如果需要使用图数据库，请确保先启动 Neo4j 等服务。","https:\u002F\u002Fgithub.com\u002Fkengz\u002Faiva\u002Fissues\u002F23",{"id":150,"question_zh":151,"answer_zh":152,"source_url":153},25149,"Python 客户端因接收到 TensorFlow 等库的 Info\u002FWarning 日志（非错误）而启动失败，如何处理？","这是因为 `client.py` 将标准输出中的任何非空消息（包括 TensorFlow 加载 CUDA 库的成功信息或弃用警告）误判为错误。解决方法包括：\n1. 升级代码以兼容新版 TensorFlow（例如处理 `DNNClassifier` 类的变化）。\n2. 暂时回退到旧版 TensorFlow（如 v0.9）以避免大量警告。\n3. 维护者计划改进 Node.js 生成 shell 进程的方式以从根本上解决此问题。目前建议关注官方修复或手动过滤 Python 脚本的输出日志。","https:\u002F\u002Fgithub.com\u002Fkengz\u002Faiva\u002Fissues\u002F22",{"id":155,"question_zh":156,"answer_zh":157,"source_url":153},25150,"启动时日志显示 \"Starting socketIO client for python\" 重复出现且报错 \"ImportError: No module named websocket\"？","这表明 Python 环境中缺少必要的 `websocket` 模块。即使配置中禁用了 Python 客户端，某些初始化逻辑仍可能尝试导入它。请在您的 Python 虚拟环境中显式安装该依赖：\n```bash\npip install websocket-client\n```\n确保安装环境与运行 `npm start` 时使用的环境一致。如果问题依旧，检查 `default.json` 配置是否正确禁用了相关客户端。",{"id":159,"question_zh":160,"answer_zh":161,"source_url":162},25151,"运行过程中出现 \"error : qp not defined\" 错误是什么原因？","这是一个已知的依赖项源代码问题，通常发生在特定版本的依赖库中。维护者已在依赖源码中进行了修复并关闭了该问题。如果您遇到此错误，请尝试更新项目依赖或拉取最新的代码版本，确保包含了对该未定义变量问题的修复补丁。","https:\u002F\u002Fgithub.com\u002Fkengz\u002Faiva\u002Fissues\u002F28",{"id":164,"question_zh":165,"answer_zh":166,"source_url":167},25152,"AIVA 机器人返回的输出结果为 null 是怎么回事？","输出为 null 通常与上游的 \"qp not defined\" 错误或 SocketIO 连接问题有关（参见 Issue #28）。当后端处理逻辑因未定义变量崩溃或客户端未能正确建立连接时，消息处理链路中断，导致返回空值。请首先检查日志中是否有 \"qp not defined\" 报错，若有则应用相关修复；其次确认所有 SocketIO 客户端（JS 和 Python）是否成功启动并连接到了服务器端口（默认 6466）。","https:\u002F\u002Fgithub.com\u002Fkengz\u002Faiva\u002Fissues\u002F29",[169],{"id":170,"version":171,"summary_zh":172,"released_at":173},154549,"v4.2.0","功能齐全的稳定版本。","2017-04-02T21:33:14"]