目录

Github Daily Trending

发布于

本期内容涵盖开源中国教育教材库、免费公共API列表、AI量化交易模拟器、AI记忆增强层、AI提示词精选集、国家平台电子课本下载器、Serverless Postgres数据库、本地AI推理引擎、YouTube音乐桌面版工具以及性能分析跟踪工具。

TapXWorld / ChinaTextbook

这是一个名为ChinaTextbook的开源项目,免费收集并分享中国小初高及大学的PDF电子教材,旨在促进教育资源普及并帮助海外华人了解中国教育,提供教材下载和拆分文件的合并工具。

项目介绍

项目名称:ChinaTextbook

项目简介:ChinaTextbook是一个开源项目,旨在收集并分享中国小初高及大学阶段的PDF格式电子教材。项目的创建初衷是为了促进义务教育资源的普及,消除因地域导致的教育资源不均,并帮助海外华人子女了解中国本土教育内容。项目通过开源方式,为用户提供免费、集中的教材获取途径,对抗盗版销售行为。

主要功能和特性:

  • 提供小学、初中、高中各年级各科目的PDF教材资源。
  • 提供部分大学数学相关科目的PDF教材资源,如高等数学、线性代数、离散数学、概率论等。
  • 对于超过GitHub文件大小限制(50MB)的PDF文件,项目会将其拆分成多个小于35MB的部分。
  • 项目提供了一个用于合并被拆分PDF文件的独立程序(mergePDFs.exe)及其Go语言源代码。

技术栈/依赖:

  • 主要内容载体为PDF文件。
  • 提供一个基于Go语言编写的Windows平台合并程序 mergePDFs.exe
  • 部分小学和初中教材按“五•四学制”进行了分类。
  • 文档中提及了一个外部链接资源“大学数学网”。

安装与配置指南概述:

  • 用户需要从项目的GitHub仓库下载所需的PDF教材文件。
  • 对于被拆分的文件,用户需要下载项目提供的合并程序 mergePDFs.exe
  • mergePDFs.exe 放置在包含被拆分PDF文件的同一文件夹下。

基本使用方法概述:

  • 直接在GitHub仓库中按分类浏览和下载所需的PDF教材文件。
  • 对于被拆分的文件,双击运行 mergePDFs.exe 即可自动合并同目录下的拆分文件。
  • 如果网络条件允许,用户也可以选择使用推荐的第三方工具 tchMaterial-parser 重新下载教材。

适用场景/目标用户:

  • 面向需要中国教育阶段电子教材的学生、教师、家长及教育工作者。
  • 特别适合海外华人,用于子女的中文教育或了解中国教育体系。
  • 适用于希望获取免费、无水印教育资源的个人。

项目状态与许可证:

  • 项目处于持续更新状态,不断有新的教材资源添加和现有资源维护。
  • 项目托管在GitHub上,遵循开源精神,但具体许可证信息在提供的文本中未明确说明。

独特的优势或创新点:

  • 集中、开源地分享公共教育资源,对抗商业盗版行为。
  • 提供了解决GitHub文件大小限制导致文件拆分的合并工具,方便用户使用。
  • 关注海外华人的教育需求。

项目统计与信息

  • 作者: TapXWorld
  • 主要语言: Roff
  • Stars: 22313 ⭐
  • Forks: 4445 🍴
  • 本周期新增 Stars: 2471 ⭐

要了解更多关于 TapXWorld / ChinaTextbook 的信息、查看完整的贡献者列表或参与项目,请访问其 GitHub 仓库


public-apis / public-apis

这是一个免费公共 API 列表,涵盖动物、娱乐、开发工具等众多领域,方便开发者快速查找并使用各种服务接口。

项目介绍

本项目是一个由社区和 APILayer 成员共同维护的公共列表,专门收集和整理了各种免费可用的公共 API。它旨在为开发者提供一个发现和利用多种领域 API 的宝库,涵盖了从动物、动漫到金融、医疗、交通等多个方面的服务。

主要功能和特性:

  • 提供海量免费 API 资源,覆盖众多领域,包括但不限于:
    • 动物与自然:动物图片、事实、鸟类观察点、濒危物种信息等。
    • 娱乐与文化:笑话、名人名言、电影、动漫、音乐、游戏数据等。
    • 开发工具:网页截图、数据验证、IP 信息、域名查询、代码编译、持续集成等。
    • 金融与加密货币:股票数据、汇率、加密货币价格、银行信息等。
    • 地理位置信息:IP 定位、地址查找、邮编查询、高程数据等。
    • 政府与开放数据:各国政府开放数据、公共服务信息、统计数据等。
    • 健康与医疗:疾病数据(如 COVID-19)、健康服务信息、营养数据等。
    • 就业与招聘:各类招聘信息聚合。
    • 机器学习与人工智能:图像识别、文本情感分析、自然语言处理、自动化代码审查等。
    • 购物:电子产品、零售商商品及销售数据等。
    • 社交媒体:与主流社交平台(如 Twitter, Reddit, Discord 等)互动或获取数据的接口。
    • 体育与健身:各类体育赛事数据、球队/运动员信息、健身数据等。
    • 测试数据:生成随机用户、地址、产品等测试数据。
    • 文本分析:语言检测、翻译、情感分析等。
    • 追踪与物流:包裹追踪、邮政编码信息等。
    • 交通出行:实时航班信息、公交/地铁数据、共享单车位置、道路规划、天气对交通影响等。
    • URL 短链服务:创建和管理短链接。
    • 车辆信息:车辆规格、价格、定位等。
    • 天气:实时天气、预报、历史气象数据、空气质量等。
  • 列表详尽分类,方便用户按需查找。
  • 提供 API 的描述、认证方式(Auth)、是否支持 HTTPS 和 CORS 等信息,帮助开发者快速评估和使用。
  • 欢迎社区成员贡献和更新新的 API 信息。

技术栈/依赖:

本项目本身作为一个列表,其核心内容是 Markdown 格式的文档。列出的 API 则使用了各种技术和协议,多数为基于 HTTP 的 RESTful API,支持通过 apiKeyOAuth 或无需认证的方式访问。部分 API 提供 JSON 或 XML 数据格式。

安装与配置指南概述:

本项目无需安装,用户直接访问 GitHub 页面即可。使用具体的 API 需要遵循各 API 提供方的文档进行注册、获取 API 密钥或进行 OAuth 授权。

基本使用方法概述:

用户根据 README 文件中的分类索引找到感兴趣的 API,点击链接跳转到该 API 的官方文档或介绍页面,了解详细的使用方法、接入规范、请求参数和响应格式。

适用场景/目标用户:

该列表主要面向开发者、研究人员以及任何需要集成外部服务到自己的应用程序、网站或研究项目中的技术人员。它可以帮助他们快速发现免费可用的数据源和服务接口,加速开发进程,例如:

  • 构建数据驱动的应用或网站
  • 进行数据分析和研究
  • 集成第三方服务功能
  • 进行原型开发和测试

项目状态与许可证:

项目处于持续更新和维护状态,不断有新的 API 被加入或更新信息。本项目列表本身采用 MIT 许可证。

项目统计与信息

  • 作者: public-apis
  • 主要语言: Python
  • Stars: 341607 ⭐
  • Forks: 36001 🍴
  • 本周期新增 Stars: 1165 ⭐

要了解更多关于 public-apis / public-apis 的信息、查看完整的贡献者列表或参与项目,请访问其 GitHub 仓库


virattt / ai-hedge-fund

该项目是关于一个使用人工智能来模拟股票交易决策的教育研究工具,模拟了由不同投资风格的智能体组成的交易团队协作产生交易信号并进行回测。

项目介绍

该项目名为 "AI Hedge Fund",是一个探索使用人工智能进行股票交易决策的概念验证项目。其主要目标是教育和研究 AI 在金融领域的应用,而非用于实际的交易或投资。项目核心在于模拟一个由多个智能体组成的交易团队,每个智能体扮演不同的市场分析师或投资策略大师角色,共同协作以产生交易信号。

该系统包含多种类型的智能体,它们模拟了不同的投资风格和分析方法:

  • Aswath Damodaran Agent:侧重于故事、数据和严谨的估值。
  • Ben Graham Agent:专注于寻找具有安全边际的低估值股票。
  • Bill Ackman Agent:激进投资者,倾向于采取大胆持仓并推动公司变革。
  • Cathie Wood Agent:成长型投资代表,相信创新和颠覆的力量。
  • Charlie Munger Agent Agent:追求以合理价格买入优秀企业。
  • Michael Burry Agent:逆向投资者,寻找深度价值机会。
  • Peter Lynch Agent:实践派投资者,在日常生活中寻找“十倍股”。
  • Phil Fisher Agent:细致的成长型投资者,强调深入的“闲聊”式研究。
  • Stanley Druckenmiller Agent:宏观策略师,寻找高增长潜力的不对称机会。
  • Warren Buffett Agent:寻找以公允价格买入的优质公司。
  • Valuation Agent:计算股票内在价值并生成交易信号。
  • Sentiment Agent:分析市场情绪并生成交易信号。
  • Fundamentals Agent:分析基本面数据并生成交易信号。
  • Technicals Agent:分析技术指标并生成交易信号。
  • Risk Manager:计算风险指标并设定仓位限制。
  • Portfolio Manager:做出最终交易决策并生成订单。

该项目使用的主要技术栈包括 Python 和 TypeScript,并支持多种大型语言模型(LLMs)作为智能体的大脑,包括 OpenAI (如 gpt-4o, gpt-4o-mini)、Groq (如 deepseek, llama3)、Anthropic 和 DeepSeek 提供的模型。用户需要配置相应的 API 密钥来接入这些模型。对于 AAPL, GOOGL, MSFT, NVDA, TSLA 等少数股票,项目提供免费的财经数据,对于其他股票,则需要 Financial Datasets 的 API 密钥来获取金融数据。项目也支持使用本地托管的 LLMs (通过 --ollama 标志)。

项目的安装配置可以通过 Poetry 或 Docker 进行。使用 Poetry 需要先安装 Poetry,然后克隆仓库,安装依赖,并配置环境变量(主要是 API 密钥)。使用 Docker 则需要安装 Docker,克隆仓库,配置 .env 文件(API 密钥),然后通过提供的脚本构建 Docker 镜像。

项目的核心功能包括:

  • 运行对冲基金:模拟 AI 团队对指定股票(通过 --ticker 参数指定,可指定多个,如 AAPL,MSFT,NVDA)进行分析并生成交易决策。可以通过 --show-reasoning 标志查看每个智能体的思考过程。可以指定 --start-date 和 --end-date 限定分析的时间段。
poetry run python src/main.py --ticker AAPL,MSFT,NVDA --show-reasoning --start-date 2024-01-01 --end-date 2024-03-01
./run.sh --ticker AAPL,MSFT,NVDA --ollama main
  • 运行回测:对 AI 团队的交易策略在指定股票和时间段内进行回测(通过 --ticker, --start-date, --end-date 参数指定)。同样支持 --ollama 标志使用本地 LLMs 进行回测。
poetry run python src/backtester.py --ticker AAPL,MSFT,NVDA --start-date 2024-01-01 --end-date 2024-03-01
run.bat --ticker AAPL,MSFT,NVDA backtest

项目结构清晰,主要代码位于 src 目录下,其中 agents 目录包含了不同投资风格和分析方法的智能体实现,tools 目录包含智能体使用的工具(如 API 调用),main.py 是运行 AI 对冲基金的入口,backtester.py 是回测工具。

该项目的目标用户是希望学习和研究 AI 在金融交易中应用的开发者、研究人员以及对算法交易、多智能体系统和金融市场感兴趣的技术人员 Its primary application scenarios are:

  • AI交易策略研究与开发。
  • 金融领域多智能体系统仿真。
  • 学习不同投资大师的分析方法并将其模型化。
  • 基于 AI 的量化交易概念探索。

该项目采用 MIT 许可证,允许自由使用、修改和分发。项目目前处于积极开发阶段,欢迎贡献代码(通过 Pull Request)或提出特性请求(通过 Issue 跟踪器的 enhancement 标签)。

需要再次强调的是,本项目仅用于教育和研究目的,不适用于实际的金融交易。用户需自行承担使用该软件可能导致的任何风险,并建议咨询专业的财务顾问进行投资决策。

项目统计与信息

  • 作者: virattt
  • 主要语言: Python
  • Stars: 27912 ⭐
  • Forks: 4837 🍴
  • 本周期新增 Stars: 203 ⭐

要了解更多关于 virattt / ai-hedge-fund 的信息、查看完整的贡献者列表或参与项目,请访问其 GitHub 仓库


mem0ai / mem0

mem0是一个开源项目,旨在通过提供强大的记忆管理能力,显著增强AI助手和智能体的个性化交互和持续学习能力。

项目介绍

mem0 (发音 "mem-zero") 是一个专门为 AI 助手和智能体设计的记忆层项目。它旨在通过提供强大的记忆管理能力,增强 AI 的个性化交互能力,使其能够记住用户偏好、适应个体需求并持续学习。项目声称在 AI Agent 记忆领域处于领先地位,并推出了 OpenMemory MCP,支持本地安全记忆管理。

该项目的主要功能和特性包括:

  • 多级记忆: 提供用户、会话和 Agent 状态的无缝记忆保留,支持自适应个性化。
  • 开发者友好: 提供直观的 API、跨平台 SDK 和全托管服务选项。
  • 通过学术研究支持其性能,在 LOCOMO 基准测试中,相比 OpenAI Memory,其准确率提高了 26%,响应速度快 91%,Token 使用量减少 90%。

Mem0 的典型应用场景和目标用户:

  • AI 助手: 用于构建具有一致性、上下文丰富的对话能力的 AI 助手。
  • 客户支持: 帮助客服聊天机器人记住历史工单和用户历史,提供更贴心的帮助。
  • 医疗健康: 跟踪患者偏好和历史,实现个性化护理。
  • 生产力与游戏: 基于用户行为提供自适应的工作流程和环境。

项目的技术栈和依赖方面:

  • 支持多种大型语言模型 (LLM),默认使用 OpenAI 的 gpt-4o-mini,也支持 Gemini, Azure OpenAI, Ollama, Grok 等 LLM 提供商。
  • 提供 Python 和 Node.js (TypeScript) 的 SDK。集成了 Langgraph 和 CrewAI 等流行框架。
  • 底层涉及向量数据库和嵌入技术用于记忆的存储和检索。

安装和使用概述:

  • 用户可以选择使用 Mem0 提供的托管平台进行快速部署。
  • 也可以选择自托管方式,通过 pip 安装 mem0ai Python 包或通过 npm 安装 mem0ai Node.js 包。
  • 基本的 Python 使用示例展示了如何初始化 Mem0 记忆实例,结合 LLM 搜索相关记忆,生成回复,并将新的对话内容添加到记忆中。

项目以 Apache 2.0 许可证发布。

总而言之,mem0 是一个专注于提升 AI Agent 记忆能力的开源项目,提供了一套可扩展、高性能的记忆管理解决方案,适用于需要通过记住历史信息来提供个性化、上下文感知交互的各类 AI 应用。项目提供了易于使用的 SDK 和 API,并支持多种主流的 LLM 和 AI 框架。

项目统计与信息

  • 作者: mem0ai
  • 主要语言: Python
  • Stars: 31154 ⭐
  • Forks: 3013 🍴
  • 本周期新增 Stars: 277 ⭐

要了解更多关于 mem0ai / mem0 的信息、查看完整的贡献者列表或参与项目,请访问其 GitHub 仓库


f / awesome-chatgpt-prompts

Awesome ChatGPT Prompts 仓库收集了适用于ChatGPT等多种AI模型的优质提示词,帮助用户提升与AI交互的效率和创造力。

项目介绍

这是一个名为 "Awesome ChatGPT Prompts" 的 GitHub 仓库,其核心目标是收集和整理可用于更好地使用 ChatGPT 及其他大型语言模型(LLM)的提示词(prompts)。

该仓库提供了一系列精心策划的提示词,旨在帮助用户在与 AI 交互时获得更有效、更具创意的回复。这些提示词不仅仅限于 ChatGPT,还兼容包括 Claude, Gemini, Hugging Face Chat, Llama, Mistral 等多种 AI 模型。项目通过 README.md 文件展示了大量的提示词示例,并提供了一个增强用户体验的网站 prompts.chat。

项目的关键功能和特性包括:

  • 丰富的提示词集合:提供了扮演不同角色(如 Linux 终端、英文翻译和校对、面试官、Excel 表格、旅行向导、诗人、哲学家、医生等)、生成特定类型内容(如故事、广告、剧本、小说、诗歌、歌曲、代码、图表、简历、信件)以及执行特定任务(如编程语言解释器、代码审查、漏洞查找、数据可视化、问答游戏)等多种场景下的提示词。
  • 支持多种 LLM:虽然起源于 ChatGPT,但 prompts 被设计为适用于各种大型语言模型工具。
  • 提升 AI 交互效率:通过高质量、详细或特定角色的提示词,帮助用户更精确地引导 AI 生成所需内容,提高沟通效率和结果质量。
  • 社区驱动:鼓励用户贡献新的提示词,共同丰富仓库的内容。
  • 提供增强网站:配套的 prompts.chat 网站提供了更友好的界面,方便用户编辑和复制提示词。
  • 附加学习资源:作者还提供了关于如何编写有效提示词("The Art of ChatGPT Prompting")和如何利用 ChatGPT 盈利("How to Make Money with ChatGPT")的电子书,以及关于 Midjourney AI 图像提示词的书籍。

该项目主要采用 Markdown 格式组织内容,同时也包含少量 JavaScript 和 CSS 文件,用于支持配套网站的功能和样式。

典型的适用场景包括:

  • 开发者:获取用于代码解释、代码审查、技术咨询、自动化脚本生成等场景的提示词。
  • 内容创作者:寻找写作灵感、生成故事、诗歌、歌词、剧本、广告文案等。
  • 学习者:利用 AI 作为语伴、教师(数学、哲学、编程)、技能导师。
  • 专业人士:将 AI 用作虚拟助手,扮演面试官、顾问(职业、关系、品牌)、分析师(财务、数据)、规划师(旅行、活动)等,协助完成特定任务。
  • 普通用户:探索 AI 的各种可能性,进行角色扮演对话、获取生活建议、娱乐等。

项目采用 CC0-1.0 许可证,这意味着项目内容(主要是提示词)可以自由地被任何人、以任何方式使用,无需署名。项目处于活跃维护状态,社区贡献者众多。

项目统计与信息

  • 作者: f
  • 主要语言: JavaScript
  • Stars: 124682 ⭐
  • Forks: 16670 🍴
  • 本周期新增 Stars: 63 ⭐

要了解更多关于 f / awesome-chatgpt-prompts 的信息、查看完整的贡献者列表或参与项目,请访问其 GitHub 仓库


happycola233 / tchMaterial-parser

这款名为tchMaterial-parser的工具,主要功能是从国家平台下载中小学电子课本PDF,特色在于支持登录后批量下载、自动命名、断点续传和跨平台使用。

项目介绍

本项目名为 "tchMaterial-parser",是一款专门针对国家中小学智慧教育平台开发的电子课本下载工具。其核心功能是帮助用户从该平台获取电子课本的 PDF 文件网址并进行下载,以便更方便地离线查阅课本内容。

项目的关键特性包括:

  • 支持 Access Token 登录:自 2025 年 2 月起,平台访问课本资源需要登录。本工具支持用户手动输入登录凭据 Access Token。在 Windows 系统下,Token 会被安全存储在注册表中以便下次自动加载;但在 Linux/macOS 等系统上目前需要每次启动时重新设置。
  • 批量下载:支持一次性输入多个电子课本预览页面的 URL 进行批量解析与下载。
  • 文件自动命名:下载的 PDF 文件会自动根据教材名称进行命名,便于用户整理和管理。
  • 高 DPI 适配:优化了用户界面,使其在高分辨率屏幕上也能清晰显示。
  • 下载进度可视化:提供下载进度条,并支持暂停和恢复下载操作。
  • 跨平台支持:兼容 Windows、Linux 和 macOS 等主流操作系统(需要图形界面环境)。

在使用方法方面:用户首先需要将电子课本的预览页面 URL 粘贴到工具界面中,支持多行输入多个 URL。由于平台更新需要登录,用户还需要通过浏览器开发者工具获取 Access Token,并在工具中进行设置。设置完成后,点击“下载”按钮即可开始解析和下载过程。

项目的技术栈主要基于 Python 语言。

安装方式多样:对于 Windows 和 Linux x64 用户,可以直接从 GitHub Releases 页面下载预编译的可执行文件,无需额外安装;Arch Linux 用户可以通过 AUR 包管理器安装 tchmaterial-parser 包。

常见问题解答中提到,下载失败的原因可能是 Access Token 设置不正确或已过期(表现为 401 Unauthorized 错误),也可能是网络问题或输入的 URL 无效。工具承诺不会上传或在云端存储用户的 Access Token,但提醒用户不要在公开场合分享 Token。

项目遵循 MIT 许可证,允许自由使用和二次开发,鼓励用户贡献代码或提交问题反馈。此外,项目还提供了一个友情链接到另一个归档教材 PDF 的项目 ChinaTextbook。

总体而言,tchMaterial-parser 是一个实用的桌面工具,旨在解决用户从国家中小学智慧教育平台便捷获取电子课本 PDF 的需求,尤其是在平台引入登录验证后,通过支持 Access Token 机制维持了其可用性。

项目统计与信息

  • 作者: happycola233
  • 主要语言: Python
  • Stars: 1701 ⭐
  • Forks: 173 🍴
  • 本周期新增 Stars: 243 ⭐

要了解更多关于 happycola233 / tchMaterial-parser 的信息、查看完整的贡献者列表或参与项目,请访问其 GitHub 仓库


trycua / cua

cua是一个高性能虚拟容器项目,为AI Agent提供在虚拟机(尤其是在Apple Silicon上接近原生速度)中控制操作系统的能力,并集成了Docker、丰富的计算机接口和灵活的Agent框架。

项目介绍

cua(发音为 "koo-ah")是一个为计算机使用型AI Agent提供高性能虚拟容器的Docker项目。它允许AI Agent在高效率的虚拟环境中控制完整的操作系统,特别是在 Apple Silicon 架构上能达到接近原生的速度。

该项目的核心目标是提供一个稳定、高性能的平台,使AI Agent能够与操作系统进行交互,执行各种任务。

主要功能和特性包括:

  • 高性能虚拟机管理: 利用 Apple 的 Virtualization.Framework,通过 Lume CLI 提供对 macOS/Linux 虚拟机的高性能管理,特别优化了在 Apple Silicon 上的运行速度。
  • Docker 集成: Lumier 模块提供了 macOS 和 Linux 虚拟机的 Docker 接口,使得虚拟环境的管理更加便捷,可以像 Docker 容器一样运行虚拟机。
  • 丰富的计算机接口: Computer 模块提供了控制虚拟机的接口,支持鼠标点击、键盘输入、屏幕截图、获取屏幕尺寸、剪贴板操作、文件系统操作以及运行 shell 命令等多种交互方式。
  • 灵活的 AI Agent 框架: Agent 模块提供了用于自动化任务的 AI Agent 框架,支持多种 Agent Loop,包括本地运行在 Apple Silicon 上的 UITARS-1.5、使用 OpenAI Computer-Use 预览模型的 OpenAI CUA、使用 Anthropic Computer-Use 功能的 Anthropic CUA,以及使用 Set-of-Marks (SOM) 提示的 OmniParser-v2.0。
  • 支持多种 AI 模型提供商: 可以结合多种大型语言模型(LLM)提供商使用,如基于 Apple Silicon 的 MLXVLM、OpenAI、Anthropic、Ollama 以及通过 OAICOMPAT 兼容接口支持 OpenRouter 等。
  • MCP Server 集成: 提供了 MCP 服务器模块,方便与其他 MCP 客户端(如 Claude Desktop)集成使用。
  • Set-of-Marks (SOM) 支持: 提供了 SOM 库,用于 Agent 进行 UI 控制时的视觉理解和交互。

技术栈主要包括 Python 和 Swift,利用了 Apple 的 Virtualization.Framework 来实现高性能虚拟化。

安装与配置通常涉及安装 Lume CLI 工具来管理虚拟机,然后拉取预配置好的 macOS CUA 镜像,接着安装 Python SDK 及其依赖(包括 cua-computercua-agent 等模块)。也可以通过 Docker 运行 Lumier 容器来启动虚拟机。

基本使用方法通常是通过 Python SDK 实例化 Computer 对象连接到虚拟机,然后使用其 interface 属性调用各种方法进行操作系统的交互。对于更高级的 Agent 功能,则需要实例化 ComputerAgent 类,配置 Agent Loop 和 LLM 模型,然后调用 run 方法执行复杂任务。项目提供了丰富的代码示例和 Jupyter Notebook 来演示如何使用这些接口和 Agent。

cua 项目适用于需要 AI Agent 执行桌面操作、自动化工作流程、与 GUI 应用程序交互等场景。目标用户主要是开发者、AI 研究人员以及需要构建计算机使用型 AI Agent 应用的团队。

项目状态活跃,并采用 MIT 许可证开源,其中 OmniParser 部分遵循 Creative Commons Attribution 4.0 International License (CC-BY-4.0)。

项目统计与信息

  • 作者: trycua
  • 主要语言: Python
  • Stars: 7325 ⭐
  • Forks: 292 🍴
  • 本周期新增 Stars: 223 ⭐

要了解更多关于 trycua / cua 的信息、查看完整的贡献者列表或参与项目,请访问其 GitHub 仓库


xming521 / WeClone

WeClone 是一个通过分析个人聊天记录训练大模型,从而创建能模仿个人语言风格的数字分身,并可部署到各种聊天平台的项目。

项目介绍

WeClone 是一个从聊天记录创造个性化数字分身的一站式解决方案。该项目通过使用个人的聊天数据微调大型语言模型(LLM),旨在赋予大模型独特的交流风格和“那味儿”,并最终将其绑定到各种聊天机器人平台,从而实现用户的数字克隆。

核心功能包括:

  • 提供打造数字分身所需的全链路方案,涵盖聊天数据导出、预处理、模型训练和部署等各个环节。
  • 支持使用微信等聊天记录对LLM进行微调,使其模仿个人的语言习惯和表达方式。
  • 可将微调后的数字分身部署到微信、QQ、Telegram、企业微信、飞书等聊天机器人平台。
  • 具备隐私信息过滤能力,支持本地化微调和部署,确保数据安全可控。

项目基于微调大型语言模型实现数字分身,效果与所选用的大模型大小、聊天数据的数量和质量密切相关。理论上,模型越大,数据越多,微调效果越好。当前版本默认推荐使用Qwen2.5-7B-Instruct模型进行LoRA微调,大约需要16GB显存。项目兼容并支持LLaMA Factory支持的其他模型和微调方法,不同的方法和模型尺寸对显存需求不同(例如QLoRA 4位量化7B模型仅需约6GB显存)。

环境搭建需要安装CUDA 12.4及以上版本,并建议使用 uv 工具进行依赖管理和安装,例如 uv pip install --group main -e .。数据准备方面,推荐使用 PyWxDump 工具导出微信聊天记录的CSV文件,并放置在项目的指定目录下(./dataset/csv)。

数据预处理功能包括对手机号、身份证号、邮箱、网址等隐私信息的自动过滤。用户也可以在配置文件中添加自定义禁用词列表。提供了基于时间窗口策略的数据处理方式,用于合并连续消息和匹配问答对。此外,项目还支持通过LLM对数据进行清洗和打分,以便筛选高质量数据进行训练。

模型的配置和微调在 settings.jsonc 文件中进行,可以修改模型路径、模板、批量大小、梯度累积步数等参数以适应不同的硬件环境和数据集特点。项目支持单卡和多卡训练。

微调完成后,可以通过命令行工具启动内置的浏览器demo进行简单推理测试,调整合适的推理参数(如temperature、top_p等)。也可以启动API服务 (weclone-cli server),以便集成到外部聊天机器人平台。项目提供了与 AstrBot 和 LangBot 等多平台机器人框架集成的详细指导,通过配置OpenAI兼容API形式连接,实现数字分身的部署。

项目目前仍在快速迭代中,未来计划增加更丰富的上下文处理、Memory支持、多模态能力、数据增强以及GUI界面等功能。项目的许可协议为AGPL-3.0。项目郑重声明仅供学习交流使用,严禁用于一切非法用途,用户需对自己的使用行为负责。

项目统计与信息

  • 作者: xming521
  • 主要语言: Python
  • Stars: 10089 ⭐
  • Forks: 775 🍴
  • 本周期新增 Stars: 634 ⭐

要了解更多关于 xming521 / WeClone 的信息、查看完整的贡献者列表或参与项目,请访问其 GitHub 仓库


n8n-io / n8n

n8n是一个面向技术团队的代码与无代码结合的工作流自动化平台,通过可视化构建和自定义代码连接各种应用和服务,可自行托管或使用云服务,并原生支持AI能力。

项目介绍

n8n是一个专为技术团队设计的公正代码工作流自动化平台。它提供了一种结合可视化构建和自定义代码的灵活方式,帮助用户轻松地连接各种应用和服务,自动化重复性任务。该平台原生支持AI capabilities,用户可以自行托管或使用其云服务,并且提供超过400种集成。

核心定位上,n8n旨在提供一个强大的、可控的工作流自动化解决方案,尤其适合需要处理复杂集成、自定义逻辑并关注数据主权的技术用户和企业。它填补了纯无代码工具在灵活性上的不足,同时简化了纯代码开发集成的门流程。

主要功能和特性包括:

  • 代码与无代码结合: 用户可以通过直观的拖放式界面构建工作流,也可以在需要时编写JavaScript或Python代码,甚至引入npm包,实现高级定制和复杂逻辑处理。
  • AI原生能力: 平台内置对AI的支持,允许用户基于LangChain等框架构建与自己数据和模型交互的AI代理工作流。
  • 高度可控: 基于公正代码许可,用户可以选择完全自行托管n8n实例,确保数据安全和隐私,也可以选择使用官方提供的云服务。同时,支持部署在空气隔离环境中(air-gapped deployments),满足高安全需求。
  • 企业级特性: 提供高级权限管理、单点登录(SSO)等功能,适合企业环境部署和使用。
  • 丰富的集成生态: 拥有超过400个应用和服务集成,覆盖广泛的SaaS、API和数据库,同时社区提供了900多个现成的可视化工作流程模板,方便用户快速上手。
  • 活跃的社区和资源: 提供详细的文档、专门的社区论坛(community.n8n.io)、教程和示例工作流,为用户提供支持和灵感。

技术栈方面,n8n主要采用TypeScript进行开发。

安装与配置方面,n8n提供了快速入门方式,例如使用npx命令在本地启动(需要Node.js环境),或者通过Docker进行部署。部署过程相对简便,主要需要设置数据卷进行数据持久化。

基本使用方法是通过Web浏览器访问其图形化工作流程编辑器,通过连接不同的“节点”(代表应用或功能)来构建自动化流程。节点之间通过连接线传递数据,形成完整的工作流。对于更复杂的任务,可以在工作流中嵌入代码节点。

项目采用公正代码(fair-code)模式,遵循可持续使用许可证(Sustainable Use License)和n8n企业许可证(n8n Enterprise License)。这意味着核心源代码是可见的,允许自托管和扩展(添加自定义节点),企业用户如果需要额外的高级功能和支持,可以获取企业许可证。

n8n适用于各种需要实现跨系统集成、数据同步、自动化报告生成、客户支持自动化、内部流程审批等场景。目标用户主要包括开发者、技术团队、DevOps工程师、数据工程师以及其他需要构建复杂自动化流程并注重灵活性和可控性的专业人士。

目前,n8n项目处于积极开发和维护的状态,不断发布新版本,增加新的集成和功能,社区也非常活跃。

项目统计与信息

  • 作者: n8n-io
  • 主要语言: TypeScript
  • Stars: 95140 ⭐
  • Forks: 26059 🍴
  • 本周期新增 Stars: 577 ⭐

要了解更多关于 n8n-io / n8n 的信息、查看完整的贡献者列表或参与项目,请访问其 GitHub 仓库


Capsize-Games / airunner

airunner是一个强大的本地AI推理引擎,专为开发者设计,支持艺术生成、语音交互、LLM应用开发和自动化工作流程,无需外部API即可安全高性能运行。

项目介绍

airunner 是一个离线 AI 推理引擎,专为开发者、创客和构建者设计,支持艺术创作、实时语音对话、大型语言模型(LLM)驱动的聊天机器人和自动化工作流程。该项目强调本地运行,无需外部 API 调用,旨在提供安全、高性能和便捷的 AI 应用开发体验。

airunner 的核心功能包括:

  • 语音交互式聊天机器人: 支持实时语音会话,集成了语音转文本(Speech-to-Text,STT)和文本转语音(Text-to-Speech,TTS)功能。
  • 可定制的智能体: 可以为聊天机器人设置名称、情绪和个性,增强对话的互动性和趣味性。
  • 检索增强生成 (RAG): 利用本地文档或网站数据来丰富聊天机器人的回复,提供更具针对性的信息。
  • 文本到图像生成: 支持使用 Stable Diffusion (包括 1.5, SDXL, Turbo 版本) 和 ControlNet 从文本提示、草图或现有图像生成艺术作品。
  • 图像处理: 支持图像修复 (Inpaint)、图像扩展 (Outpaint)、ControlNet 控制以及多种图像滤镜效果(如模糊、胶片颗粒、像素艺术等)。
  • 离线运行: 所有功能均可在本地设备上完成推理,无需依赖外部网络或 API。
  • 高性能: 在合适的硬件(如 RTX 2080s)上,Stable Diffusion 等任务可 achieves 快速生成(例如约 2 秒)。
  • Docker 支持: 提供基于 Docker 的安装方式,简化配置并确保 GPU 加速开箱即用。
  • 用户界面: 包括一个内置的 UI 工具,提供暗黑模式等主题选项。
  • 内容控制: 支持 NSFW 内容检测的启用/禁用以及 LLM 使用的基本道德护栏设置。
  • 扩展性: 提供扩展 API,允许用户构建和分享自定义功能插件。
  • Python 库: 可以通过 pip 进行安装,方便集成到用户自己的项目中。
  • API 支持: 可选支持使用 OpenRouter 或其他外部 LLM API。

项目对系统有特定的要求,建议在 Ubuntu 22.04 (Wayland) 或 Windows 10 系统上运行,推荐使用 Ryzen 5000 系列或 Intel Core i7-11000 系列及以上 CPU,至少 16 GB RAM (推荐 32 GB),NVIDIA RTX 3060 及以上 GPU (推荐 RTX 4090),需要宽带网络用于下载模型,存储空间需求较大(含模型约 22 GB 起,推荐 100 GB+)。

安装相对直接,主要涉及系统依赖安装、创建工作目录以及使用 pip 安装 airunner 库。需要注意的是,项目本身不分发 AI 艺术模型,用户需要自行获取 Stable Diffusion 模型并放置在指定的本地数据目录下。

airunner 支持多种 TTS 引擎 (OpenVoice, SpeechT5, Espeak) 和 STT 引擎 (Whisper)。核心模型文件大小不一,例如 ControlNet 模型可达数 GB。项目还包含单元测试和数据库支持(默认为 SQLite,可切换引擎),并提供了一些高级功能如内存优化配置以及实验性集成。

该项目遵循 Apache-2.0 许可证。项目鼓励社区贡献,包括新功能、错误修复、文档改进以及构建和分享扩展。目标用户群体是希望在本地环境进行 AI 应用开发和实验的技术人员、开发者以及对 AI 艺术创作、智能对话等感兴趣的个人和团队。

项目统计与信息

  • 作者: Capsize-Games
  • 主要语言: Python
  • Stars: 981 ⭐
  • Forks: 77 🍴
  • 本周期新增 Stars: 70 ⭐

要了解更多关于 Capsize-Games / airunner 的信息、查看完整的贡献者列表或参与项目,请访问其 GitHub 仓库


th-ch / youtube-music

这个项目是基于YouTube Music网页版开发的桌面应用,扩展了桌面体验、内置了广告拦截和下载功能,并支持通过丰富的插件进行深度定制。

项目介绍

该项目名为 YouTube Music Desktop App,它是一个封装了 YouTube Music 网页版的桌面应用程序,并额外捆绑了自定义插件以及内置的广告拦截和下载功能。其核心定位是提供一个更原生的 YouTube Music 使用体验,并通过插件机制极大地增强其功能和用户体验。

项目主要功能和特性包括:

  • 提供接近原生的桌面应用体验,力求保持 YouTube Music 原版界面的风格。
  • 引入自定义插件框架,用户可以方便地启用、禁用插件,以定制应用功能和样式。
  • 内置广告拦截功能,提供无广告的音乐播放体验。
  • 内置下载器,支持直接从应用界面下载 MP3 格式的音乐,基于 youtube-dl 实现。
  • 自动确认暂停功能,禁用长时间暂停后的“继续观看?”弹窗。
  • 丰富的可用插件,例如:
    • 广告拦截:直接屏蔽广告和追踪器。
    • 专辑操作:为播放列表或专辑中的所有歌曲批量应用喜欢/不喜欢操作。
    • 专辑颜色主题:根据专辑封面颜色动态应用主题和视觉效果。
    • 环境光模式:根据视频内容在屏幕背景投射柔和色彩,增强播放氛围。
    • 音频压缩器:调整音频动态范围,使响亮部分音量降低、安静部分音量升高。
    • 导航栏模糊效果:使导航栏透明并带有模糊效果。
    • 绕过年龄限制:绕过 YouTube 的年龄验证。
    • 字幕选择器:支持启用字幕。
    • 紧凑侧边栏:强制侧边栏保持紧凑模式。
    • 歌曲交叉淡入淡出:在歌曲切换时应用交叉淡入效果。
    • 禁用自动播放:默认暂停播放歌曲。
    • Discord Rich Presence:在 Discord 中显示当前正在听的歌曲。
    • 均衡器:添加滤镜调整特定频率的音量(例如,增强低音)。
    • 指数音量:优化音量滑块的对数比例,使调低音量更便捷。
    • 应用内菜单:提供美观的深色界面菜单。
    • Scrobbler:支持将播放记录同步到 Last.fm 和 ListenBrainz。
    • Lumia Stream 集成:支持与 Lumia Stream 联动。
    • Lyrics Genius 歌词:支持显示大多数歌曲的歌词。
    • Music Together:允许多人共享播放列表,实现同步听歌。
    • 导航:在界面内置前进/后退导航按钮。
    • 禁止 Google 登录按钮:移除界面中的 Google 登录相关链接。
    • 通知:歌曲开始播放时显示通知(Windows 上支持交互式通知)。
    • 画中画模式:支持将应用切换到画中画模式。
    • 播放速度控制:添加滑块控制歌曲播放速度。
    • 精准音量控制:使用鼠标滚轮/快捷键精确调整音量,支持自定义音量步进。
    • 快捷键与 MPRIS:支持设置全局播放控制快捷键,禁用媒体 OSD,启用 Ctrl/CMD + F 搜索,Linux 上支持 MPRIS 媒体键控制,并允许高级用户自定义更多快捷键。
    • 跳过不喜欢的歌曲:自动跳过被标记为不喜欢的歌曲。
    • 跳过静音部分:自动跳过歌曲中的静音片段。
    • SponsorBlock 集成:自动跳过音乐视频中的非音乐部分,如片头、片尾或无歌曲播放的片段。
    • 同步歌词:提供同步歌词功能,支持 LRClib 等歌词源。
    • 任务栏媒体控制:在 Windows 任务栏显示播放控制按钮。
    • TouchBar 支持:为 macOS Touch Bar 提供自定义布局。
    • Tuna OBS 集成:支持 OBS 插件 Tuna。
    • 视频质量切换:在视频叠加层添加按钮切换视频质量。
    • 视频切换:添加按钮在视频和歌曲模式间切换,可选择移除整个视频标签页。
    • 音频可视化:提供多种 음악 可视化效果。

项目支持通过加载 CSS 文件对应用程序进行主题定制。开发者还可以自行构建插件,通过操作 Electron 的 BrowserWindow 或修改 HTML/CSS 来扩展应用功能,也可以利用 Electron 的 ipcMain 模块实现前后端通信。

技术栈概述:项目基于 Electron 构建,使用 TypeScript 进行开发,并利用 Vite 进行构建打包。采用了 pnpm 作为包管理器。

安装与配置指南概述:项目提供了在 Arch Linux (通过 AUR 的 youtube-music-bin 包)、macOS (通过 Homebrew 或手动安装后运行命令处理权限) 和 Windows (通过 Scoop 或 Winget 安装) 平台上的安装方式。Windows 用户还支持离线安装,只需下载特定的 .nsis.7z 文件和安装程序到同一目录即可。

该项目适用于希望在桌面端获得更优化的 YouTube Music 体验,尤其是需要广告屏蔽、下载功能或希望通过各类插件对应用进行深度定制的用户。项目遵循 MIT 许可证。

项目统计与信息

  • 作者: th-ch
  • 主要语言: TypeScript
  • Stars: 20217 ⭐
  • Forks: 1054 🍴
  • 本周期新增 Stars: 189 ⭐

要了解更多关于 th-ch / youtube-music 的信息、查看完整的贡献者列表或参与项目,请访问其 GitHub 仓库


facebookresearch / fairchem

fairchem是由FAIR Chemistry开发的材料科学和量子化学机器学习库,旨在整合数据、模型和应用,提供用于原子模拟和材料研究的先进机器学习工具,目前正从版本1升级到版本2以改进功能。

项目介绍

fairchem是由FAIR Chemistry开发的一个集中式库,旨在整合其在材料科学和量子化学领域的机器学习数据、模型、演示和应用工作。项目核心目标是为化学和材料科学研究提供先进的机器学习工具和资源。

主要功能和特性:

  • 提供了用于材料科学和量子化学研究的机器学习方法库。
  • 支持使用预训练模型进行多种应用,例如催化剂表面吸附质的弛豫、无机晶体的弛豫以及分子动力学模拟。
  • 提供了易于使用的ASE (Atomic Simulation Environment) 计算器 (FAIRChemCalculator),方便将机器学习模型集成到标准的原子模拟工作流程中。
  • 支持根据不同的应用场景(如催化、无机材料、分子、MOFs、分子晶体)选择特定的模型任务。
  • 提供了UMA (Unified Materials and Molecules) 模型及其相关数据集。
  • 项目代码和模型正在积极更新到版本2,这是一个与版本1不兼容的重大更新,旨在改进训练、微调、模型和计算器功能。
  • 计划在版本2中重新引入Gemnet-OC、EquiformersV2、ESEN等模型。

技术栈/依赖:

  • 主要使用 Python 语言开发。
  • 依赖于 ASE(Atomic Simulation Environment)库进行原子模拟。
  • 使用预训练模型,特别是UMA模型,通过Hugging Face Hub进行访问。

安装与配置指南概述:

  • 推荐使用 pip 从 GitHub 仓库安装 fairchem-core 的版本2的特定分支。
  • V2版本的 PyPI 安装目前暂不可用,等待依赖库发布 PyPI 包后会更新。
  • 使用预训练模型需要 Hugging Face 账户,并申请模型访问权限,然后通过访问令牌登录。
  • 对于需要使用旧版本(版本1)模型和代码的用户,需要安装特定版本的 fairchem-core==1.10 并使用 OCPCalculator

基本使用方法概述:

  • 通过 FAIRChemCalculator 类加载预训练模型,指定Hugging Face Hub文件名和计算任务(如"oc20", "omat", "omol"等)。
  • 将实例化后的计算器对象分配给ASE的 Atoms 对象的 calc 属性。
  • 使用ASE或其他优化器(如LBFGS, FIRE)或动力学工具(如Langevin)执行弛豫或分子动力学模拟。

代码示例概述:

  • 项目提供了使用 FAIRChemCalculator 进行催化表面吸附质弛豫、无机晶体弛豫和分子动力学模拟的代码片段,展示了如何加载模型、设置系统和执行计算。

适用场景/目标用户:

  • 核适用场景包括催化、无机材料、分子及相关领域的计算化学和材料科学研究。
  • 目标用户是需要利用机器学习模型加速或改进原子模拟、材料设计和属性预测的科学家、研究人员和开发者。

项目状态与许可证:

  • 项目正在由版本1向版本2过渡,版本2是一个重大的不兼容更新。
  • 项目以 MIT License 开源。

项目统计与信息

  • 作者: facebookresearch
  • 主要语言: Python
  • Stars: 1326 ⭐
  • Forks: 312 🍴
  • 本周期新增 Stars: 27 ⭐

要了解更多关于 facebookresearch / fairchem 的信息、查看完整的贡献者列表或参与项目,请访问其 GitHub 仓库


itdoginfo / podkop

Podkop是一个OpenWrt路由器上的Beta阶段项目,通过整合sing-box和Dnsmasq实现灵活的网络流量分流管理,方便用户对特定流量进行代理或直连,并通过Web界面简化配置。

项目介绍

Podkop 是一个专为 OpenWrt 路由器设计的开发中(Beta 版本)项目,旨在增强和优化网络流量管理。它通过修改网络配置,特别是集成 sing-box 和 Dnsmasq,来实现复杂的路由控制和分流功能,以满足用户对特定流量(如访问某些服务或特定国家/地区的流量)进行代理或直连的需求。该项目的核心定位在于为 OpenWrt 用户提供一个灵活、可配置的网络流量控制工具。

项目主要功能和特性包括:

  • 灵活的流量路由和分流: 能够根据配置将不同类型的网络请求导向不同的出口(例如,直连或通过 sing-box 代理)。
  • 集成 sing-box: 利用 sing-box 强大的代理能力,支持多种代理协议和配置方式。
  • Dnsmasq 配置修改: 动态调整路由器的 DNS 配置,配合 sing-box 实现基于域名的分流。
  • 支持自定义列表: 允许用户添加自定义的域名或 IP 地址列表,用于精细控制哪些流量走预设的路径。
  • Web 界面 (LuCI 应用): 提供一个基于 OpenWrt LuCI 的图形用户界面,方便用户进行配置和管理。
  • 自动安装和更新脚本: 提供简化的安装和更新流程,通过一个脚本即可完成。
  • 支持多种服务列表: 内置支持对常见服务(如 Speedtest, Google AI, Google PlayMarket 等)以及特定 ASN(如 Hetzner, OVH)的流量进行处理。

技术栈和依赖方面,Podkop 主要使用 Shell 脚本进行系统层面的配置和控制,JavaScript 开发 LuCI 用户界面,并深度依赖 sing-box 代理软件和 OpenWrt 的网络工具链,特别是 Dnsmasq 和 nftables。项目支持与 WireGuard (AWG) 等隧道技术集成,并计划在未来支持更多 Source 格式的配置。

安装与配置概述方面,项目提供了一个便捷的安装脚本,通过 install.sh 即可完成初始安装和后续升级。但需要注意的是,安装前需确保路由器有足够的存储空间(至少 15MB)。由于项目会修改 Dnsmasq 和 sing-box 的配置文件,建议用户在安装前备份现有配置。详细的安装与配置步骤可在项目提供的文档网站上获取。

基本使用方法方面,用户主要通过安装后在 OpenWrt LuCI 界面中找到 Podkop 的配置选项,进行各项参数 ayarlarla(调整)。这些设置包括选择流量的路由模式、配置 sing-box 的相关参数、管理自定义列表等。

典型的适用场景和目标用户包括:

  • 希望在 OpenWrt 路由器上实现智能分流,对特定网站、服务或IP地址的访问进行精细控制的技术用户或开发者。
  • 需要在特定网络环境下(如中国大陆等访问受限地区)通过代理访问外部资源,同时保证内部流量(如本地网络访问)不经过代理的用户。
  • 对网络流量管理有较高要求,希望利用 sing-box 的高级功能,并通过路由器层面进行统一控制的用户。

项目目前处于活跃的 Beta 开发阶段,功能持续迭代,可能会有配置变更,用户需关注项目更新和社区反馈。项目遵循 GPL-2.0 许可证。

项目统计与信息

  • 作者: itdoginfo
  • 主要语言: Shell
  • Stars: 475 ⭐
  • Forks: 36 🍴
  • 本周期新增 Stars: 14 ⭐

要了解更多关于 itdoginfo / podkop 的信息、查看完整的贡献者列表或参与项目,请访问其 GitHub 仓库


neondatabase / neon

Neon是一个开源的Serverless Postgres项目其核心是存储计算分离实现了自动伸缩、数据库分支和按需缩减至零等功能适合需要弹性、成本优化和灵活开发的应用。

项目介绍

Neon是一个开源的Serverless Postgres数据库服务项目。其核心创新在于将存储和计算分离,旨在提供类似AWS Aurora Postgres的服务,并在此基础上实现数据库的自动伸缩、代码式的数据库分支管理以及按需缩减至零(scale to zero)的能力。

主要功能和特性包括:

  • 存储与计算分离:核心架构将传统的Postgres存储层分离,通过分布式存储引擎 Pageserver 和 WAL 服务 Safekeepers 来管理数据,使计算节点(无状态的PostgreSQL实例)可以根据负载弹性伸缩。
  • 自动伸缩(Autoscaling):计算资源可以根据实际需求自动调整,优化资源利用率,降低成本。
  • 数据库分支(Branching):提供类似代码版本控制的分支能力,可以快速创建数据库的Point-in-Time副本,用于开发、测试、数据分析等场景,且分支之间写操作互不影响。
  • 缩减至零(Scale to Zero):空闲的数据库实例可以自动缩减至零计算资源,进一步节省成本。
  • 高可用与数据持久性:通过 Safekeepers 提供冗余的 WAL 服务,确保数据持久性,Pageserver 作为可扩展的存储后端。

该项目主要使用技术栈包括 Rust、Python 和 C 语言。其中核心存储引擎和 Pageserver 使用 Rust 开发,部分工具和脚本使用 Python 和 C。它是在一个修改过的 PostgreSQL 版本上构建的。

对于希望在本地运行Neon进行实验或开发的开发者,项目提供了详细的本地安装和配置指南。流程大致包括:

  • 安装依赖:需要安装 build-essential、libtool、libreadline-dev等构建依赖,以及 Rusttoolchain 和 PostgreSQL客户端。支持 Linux(Ubuntu、Debian、Fedora、Arch)和 macOS 系统。
  • 构建项目:克隆包含子模块的仓库,然后使用 make 命令进行编译。
  • 运行本地数据库:利用 cargo neon init 初始化仓库,cargo neon start 启动 Pageserver, Safekeeper 和 Broker 服务,cargo neon tenant create --set-default 创建租户,cargo neon endpoint create <name> 创建计算节点,cargo neon endpoint start <name> 启动计算节点。
  • 基本使用:可以通过标准的 psql 客户端连接到启动的 Postgres 实例,执行 SQL 查询。同时也提供了 cargo neon timeline branch 等命令进行数据库分支管理。

典型的适用场景包括需要弹性、成本优化和灵活开发工作流的应用,例如Serverless应用、CI/CD环境中的数据库克隆、开发和测试隔离、以及需要按需自动伸缩负载的场景。目标用户主要是开发者和需要使用托管或自托管Serverless Postgres服务的技术团队。

项目采用 Apache-2.0 许可证。更多文档资源如架构概述、源码目录结构、日志以及与PostgreSQL相关术语的解释可在项目文档中找到。项目处于持续开发和活跃贡献中,支持多版本PostgreSQL,目前默认版本为PostgreSQL 17。

项目统计与信息

  • 作者: neondatabase
  • 主要语言: Rust
  • Stars: 17777 ⭐
  • Forks: 617 🍴
  • 本周期新增 Stars: 286 ⭐

要了解更多关于 neondatabase / neon 的信息、查看完整的贡献者列表或参与项目,请访问其 GitHub 仓库


google / perfetto

Perfetto是一个开源的性能分析和跟踪工具栈,专为Android、Linux和Chrome设计,提供系统和应用级性能数据记录、内存分析、SQL数据分析和Web可视化界面,帮助开发者诊断性能问题。

项目介绍

Perfetto 是一个为 Android、Linux 和 Chrome 设计的生产级开源性能分析和跟踪工具栈。

该项目旨在提供一套全面的解决方案,用于系统的性能测量、应用层的代码插桩跟踪以及对收集到的跟踪数据进行深入分析。Perfetto 包含了用于记录设备性能数据的服务和库,支持对原生代码和 Java 堆进行性能剖析。此外,它提供了一个基于 SQL 的库,用于对采集到的跟踪文件进行复杂的数据分析,并配备了一个易于使用的 Web 界面的可视化工具,能够加载和浏览大小达数 GB 的跟踪文件,帮助开发者和性能工程师快速定位性能瓶颈。

项目主要功能和特性包括:

  • 系统级和应用级性能数据记录:能够捕获操作系统和应用层的详细性能事件。
  • 原生和 Java 堆内存分析:支持对 C++ 和 Java 代码的内存分配及使用情况进行深度剖析。
  • 基于 SQL 的跟踪数据分析:提供强大的 SQL 分析引擎, enabling the structured query and analysis of trace datasets.
  • Web 可视化界面:提供一个功能丰富的网页工具,用于加载、浏览和交互式分析大型跟踪文件。
  • 跨平台支持:主要面向 Android、Linux 和 Chrome 等平台。

Perfetto 的技术栈主要围绕 C++ 语言构建,并使用了 TypeScript 和 Python 作为辅助语言,以及 Starlark 和 SCSS。它依赖 Bazel 构建系统进行编译。虽然没有明确列出 AI 模型提供商,但其核心定位是性能分析工具,不直接依赖常见的 AI 模型提供商(如 Gemini, OpenAI 等)。

项目的安装与配置通常涉及使用 Bazel 或 GN 构建,详细步骤和依赖环境需要在官方文档中查阅。基本使用方法包括配置跟踪数据源、启动数据记录、停止记录并导出跟踪文件,然后使用 Perfetto UI 或 SQL 分析工具加载和分析文件。

Perfetto 主要适用于需要对操作系统、应用程序或浏览器进行深度性能调优和问题诊断的开发者、系统工程师和性能分析师。典型的应用场景包括:

  • 优化 Android 设备的系统流畅度。
  • 诊断 Linux 系统上的性能问题。
  • 分析 Chrome 浏览器或 Web 应用的性能表现。
  • 进行内存泄漏或过度内存分配的检测和分析。

该项目目前处于活跃开发状态,并采用 Apache-2.0 许可证,允许广泛的使用、修改和分发。

项目统计与信息

  • 作者: google
  • 主要语言: C++
  • Stars: 3948 ⭐
  • Forks: 468 🍴
  • 本周期新增 Stars: 8 ⭐

要了解更多关于 google / perfetto 的信息、查看完整的贡献者列表或参与项目,请访问其 GitHub 仓库