点击上方蓝字关注我们
IT 咖啡馆,探索无限可能!
恭喜你发现了这个宝藏,这里你会发现优质的开源项目、IT知识和有趣的内容。
GitHub 一周热点汇总第49期(2024/11/10-11/16),本期内容包括Docker中运行Windows、文档解析工具、NextJS的AI模版、AI Agent系统框架和AI数据库工具,一起来看具体内容吧,视频制作不易,需要一个三连哈。
windows
项目名称:windows - Docker中运行Windows
GitHub 链接:https://github.com/dockur/windows
上周 Star 数:9800+
windows,没错就是你想的那个Windows,但是这个项目把它放到的了Docker里。这周这个项目突然之前爆火了一把,一下猛涨了差不多一万star。
用 Docker 运行 Linux 是它的老本行,大多数 Docker 镜像都基于 Linux。之前我们也介绍过载Docker运行Mac的,现在加上Windows,也算是圆满了。本项目可以在 Docker 中运行从 Windows 7 到 Windows 10、11 系统,然后通过浏览器访问这台套娃 Windows 系统。需要大内存、KVM 支持。
可以通过 Docker Compose来启动:
services:
windows:
image: dockurr/windows
container_name: windows
environment:
VERSION: "11"devices:
/dev/kvm
cap_add:
NET_ADMIN
ports:
8006:8006
3389:3389/tcp
3389:3389/udp
stop_grace_period: 2m
也可以通过Docker来快速启动
docker run -it --rm -p 8006:8006 --device=/dev/kvm --cap-add NET_ADMIN --stop-timeout 120 dockurr/windows
默认情况下,会安装 Windows 11,并且会分配 2 个 CPU 核心和 4 GB 内存,以及 64GB 硬盘大小。接下来就等待Docker自动启动了,完成启动后通过浏览器访问8006端口来使用,一旦看到桌面,就表示您的 Windows 已可以使用了
但是如果尝试的话,最好多分一点内存,不然容易失败,另外镜像从网上下载,也很容易出现失败,总之需要耐心和尝试。
docling
项目名称:docling - 文档解析工具
GitHub 链接:https://github.com/DS4SD/docling
上周 Star 数:3000+
Docling是来自IBM的开发者们带来了一个名为Docling的新工具,这个库专为处理文档而生,它能高效解析文档,并导出为Markdown和JSON格式。
随着LLMs和检索增强生成 (RAG) 等流行应用模式的出现,利用 PDF 中嵌入的丰富内容变得越来越重要。但将 PDF 文档转换回机器可处理的格式一直是一个重大挑战,因为它们格式的巨大变化、标准化薄弱以及打印优化的特性会丢弃大多数结构特征和元数据。
Docling支持流行的文档格式,如PDF、DOCX、PPTX、图片、HTML、AsciiDoc、Markdown,并导出为 Markdown 和 JSON。还支持高级 PDF 文档理解,包括页面布局、阅读顺序和表格结构,并可以对PDF进行OCR,可以与 LlamaIndex 和 LangChain 集成,打造强大的 RAG / QA 应用程序,同时为了方便使用还提供了CLI。
安装 Docling 非常简单,pip install 一下就好:
pip install docling
适用于 macOS、Linux 和 Windows 环境。兼容x86_64 和 arm64 架构。
简单使用 只需Python 写几行代码,或者执行一条CLI命令。
from docling.document_converter import DocumentConverter
source = "<https://arxiv.org/pdf/2408.09869>" # document per local path or URL
converter = DocumentConverter()
result = converter.convert(source)
print(result.document.export_to_markdown()) # output: "## Docling Technical Report[...]"
CLI
docling https://arxiv.org/pdf/2206.01062
ai-chatbot
项目名称:ai-chatbot - NextJS的AI模版
GitHub 链接:https://github.com/vercel/ai-chatbot
上周 Star 数:2400+
ai-chatbot是使用 Next.js 和 Vercel 的 AI SDK 构建的开源 AI 聊天机器人模板,简单来说就是NextJS的模版项目,作为一个模版项目可以有这么高的热度,可以看出 大家对AI的关注。通过本项目可以快速开发出一个类ChatGPT的应用,可以直接到项目提供的示例去看一下效果
https://chat.vercel.ai/
本项目使用NextJS app Router,配合AI SDK,前端展示使用shadcn UI,认证模块是Next Auth,数据存储使用的也是Vercel自家的postgres和对象存储。所以如果你是一个使用NextJS和Vercel生态的开发者,那么你应该可以非常快的上手。
使用的大模型默认是GPT-4o,你可以通过AI SDK来切换成其他的大模型供应商,比如OpenAI、Anthropic、Cohere。
用过Vercel都知道,方便部署一大优势,ai-chatbot可以快速部署到Vercel上,同时也支持在本地运行,可以直接参考以下的命令。
pnpm install
pnpm dev
autogen
项目名称:autogen - AI Agent系统框架
GitHub 链接:https://github.com/haydenbleasel/next-forge
上周 Star 数:1200+
AutoGen 是一个由微软开源的用于构建 AI 代理系统的开源框架。它简化了事件驱动、分布式、可扩展且具有弹性的代理应用程序的创建。其核心魅力在于能够创建自主、可扩展且多才多艺的人工智能代理团队,这些代理可以高效协作、自如操作,独立执行广泛的复杂任务。
AutoGen 提供以下主要功能:
异步消息传递:代理通过异步消息进行通信,支持事件驱动和请求/响应交互模式。
全面类型支持:在所有接口中使用类型,并在构建时强制类型检查,重点关注质量和凝聚力
可扩展和分布式:设计可跨组织边界运行的复杂分布式代理网络。
模块化和可扩展:使用可插入组件定制您的系统:自定义代理、工具、内存和模型。
跨语言支持:跨不同编程语言互操作代理。目前支持 Python 和 .NET,更多语言即将推出。
可观察性和调试:用于跟踪、追踪和调试代理交互和工作流的内置功能和工具,包括使用 OpenTelemetry 支持行业标准可观察性
例如使用 AutoGen,构建复杂的多代理对话系统,可以归结为:
定义一组具有专门能力和角色的代理。
定义代理之间的交互行为,即当一个代理收到来自另一个代理的消息时要回复什么。
这两个步骤都是直观且模块化的,使这些代理可重复使用和组合。例如,要构建基于代码的问答系统,可以设计代理及其交互,使用 AutoGen 可将编码工作量减少 4 倍以上。
AutoGen 尤其适合那些追求极致任务自动化、希望解决创新问题或希望大幅提升现有人工智能能力的企业。
对于开发者而言,AutoGen 还提供了强大的调试工具包,包括 API 调用的完整日志记录功能等,进一步提高了开发效率。
Chat2DB
项目名称:Chat2DB - AI数据库工具
GitHub 链接:https://github.com/CodePhiliaX/Chat2DB
上周 Star 数:550+
Chat2DB 是AI 驱动的数据库工具和 SQL 客户端,是热门的 GUI 客户端,支持 MySQL、Oracle、PostgreSQL、DB2、SQL Server、DB2、SQLite、H2、ClickHouse 等。
Chat2DB希望帮助使用者可以一站式管理各类数据库,无论背景都可以深入洞察数据,轻松驾驭复杂分析。
AI 设计数据库表结构
在设计数据库表时,通常需要逐个输入字段,Chat2DB只需在Table Copilot中输入表名和列名,就会自动设置数据类型、键和注释,节省您90%的时间。此外,您还可以一键插入测试数据。
AI 生成SQL
在应用开发中,常常需要进行大量CRUD操作,有时还需要进行数据统计,例如统计本月每周的注册用户数。看似简单的需求,实际却需考虑分组、日期函数等问题。使用Chat2DB,只需简单的一句话,即可轻松解决这些难题,对不熟悉SQL的开发者尤为友好。
智能SQL编辑器
对于经验丰富的SQL开发者来说,优秀的SQL编辑器至关重要。Chat2DB的智能SQL编辑器功能强大。
AI 生成图表
以往,老板或产品、运营常常要求你导出报表,现在你可以让他们自己来做了。只需简单描述,Chat2DB便能生成可视化报表,若结果不尽如人意,那就看看他们的询问是否清晰。
Excel解析分析
在分析Excel数据时,如果不熟悉统计函数会非常麻烦。但使用Chat2DB,只需选择本地Excel文件,它能帮你完成数据统计,甚至生成美观的图表,便于与产品经理或运营分享。
在数据库支持方面,Chat2DB不仅兼容常见的国外数据库,更重要的是,支持所有主流国产数据库,如达梦、人大金仓、openGauss、TiDB、OceanBase等,为国内用户提供了更多选择和兼容性。
使用上Chat2DB 利用AI的能力可以帮助用户快速设计表,快速生成SQL,并且加速SQL的开发时间和优化调试体验,节省大量的时间时间。同时Chat2DB还支持AI 生成图表,只需简单描述,Chat2DB便能生成可视化报表,还可以对EXCEL进行分析,选择本地Excel文件,它能帮你完成数据统计,甚至生成美观的图表。
Chat2DB除了支持场景的数据库,还支持所有主流国产数据库。
最后项目还开源了 Chat2DB-SQL-7B 模型。可以从huggingface上了解到更多详细的信息。