aub.ai

aub.ai

Flutter包实现设备本地生成式AI与离线文本生成

AubAI是一个Flutter/Dart包,为应用提供设备本地的生成式AI功能,包括离线文本生成。该包支持macOS、Windows、Linux、Android、iOS和iPadOS等多个平台。AubAI设计简洁,易于使用,鼓励开源社区参与,并提供应用示例和教程。通过集成llama.cpp库,AubAI使开发者能够在Flutter项目中便捷地使用先进AI模型。

AubAIFlutterAI本地AI跨平台Github开源项目
<div align="center"> <image alt="AubAI应用图标" height=256 src="https://github.com/BrutalCoding/aub.ai/blob/main/example/assets/appicon_avatar.png?raw=true"/> <h1>AubAI</h1>

<sub>AubAI为您的应用带来设备端生成式AI能力,包括离线文本生成等功能。</sub>

Pub GitHub stars

</div>

简介

Flutter开发者、AI爱好者和前瞻性开发者们,你们好!准备好用设备端生成式AI(包括先进的文本生成功能)来革新你的应用了吗?你来对地方了。

认识一下AubAI:这是一个专为赋予你的应用设备端生成式AI模型能力而设计的Flutter/Dart包。无论是生成文本、增强用户交互还是其他AI驱动的任务,AubAI都能满足你的需求。

这个包对所有主要平台来说都是改变游戏规则的。不要只相信我的话,你可以在我的YouTube教程YouTube.com/@BrutalCoding上看到AubAI的实际应用。

AubAI不仅功能强大、用途广泛,而且用户友好且开源。是时候用最新的生成式AI技术释放你的应用的全部潜力了。

特性和功能

先进的生成式AI集成

  • 文本生成:利用AubAI的尖端语言模型实现流畅的文本生成,通过高级自然语言处理提升用户体验。轻松下载并尝试来自HuggingFace等源的任何GGUF模型,轻松将顶级AI功能引入你的应用。

跨平台兼容性

  • 通用平台支持:AubAI专为Flutter精心设计,确保在多种平台上无缝运行。这种广泛的兼容性涵盖了各种操作系统,满足多样化的开发需求:

    • macOS (ARM64, x86_64)
    • Windows (x86_64)
    • Linux (x86_64)
    • Android (ARM64, x86_64)
    • iOS (ARM64)
    • iPadOS (ARM64)

用户友好设计

  • 简化集成:AubAI的核心是致力于简单性,使复杂的AI功能对各种水平的开发者都易于使用。
  • 开源社区:秉承协作开发精神,AubAI是一个开源包。我们鼓励并欢迎社区贡献,推动创新并营造持续进步的环境。

演示和教程

  • 引人入胜的实例:在我的YouTube频道YouTube.com/@BrutalCoding上探索AubAI的实际应用并观看其运行。提供清晰的真实世界示例,展示AubAI如何用设备端生成式AI改变你的应用,学习如何轻松将AubAI集成到你的项目中。

你喜欢这个项目吗?

假设你已经查看了AubAI,并且喜欢它,有几种方式可以表示你的赞赏:

  • 为这个项目加星
    • 这是表示赞赏的好方法,也有助于这个项目获得更多关注。
  • 成为赞助者
  • 贡献
    • 如果你是开发者,你可以通过修复bug、添加功能或改进文档来为这个项目做出贡献。查看CONTRIBUTING.md文件了解更多信息。
  • 传播消息
    • 告诉你的朋友、家人和同事这个项目。越多人了解这个项目,我们就越接近让AI不依赖任何第三方服务而对每个人都可用的目标。

考虑成为赞助者。虽然这个项目的理念是让AI对每个人都可用,但它确实需要花费大量时间。我的房东还不接受GitHub星星作为付款方式,至少目前还不接受。如果你有能力,请考虑成为赞助者。可以是一次性1美元,每月1美元,或任何其他金额。每一点帮助都很重要,无论是精神上还是经济上。

如果你是一个即将购买豪华游艇的富有个人,可以考虑在方向盘上少装一个镀金旋钮,用那笔钱把你的名字添加到赞助者名单中。

下载示例应用

人人可用的AI

目标是让AI对每个人都可用,对吧?这就是为什么我花了相当多时间确保示例应用可以在所有主要平台上下载。我想让每个人都能尽可能轻松地尝试。没有什么比真实世界的例子更能展示AubAI的能力了。

不需要技术知识。只需下载应用,就可以开始使用了。

从商店下载示例应用

  • iOS、iPadOS、macOS
  • Android:(即将推出)
  • Windows:(即将推出)
  • Linux:(即将推出)

如果你喜欢这个项目,请务必点击"Star"按钮。也许有一天我的房东会接受GitHub星星作为付款方式!

设置

  1. 在你的pubspec.yaml文件中添加以下内容:
dependencies: aub_ai: ^1.0.0
  1. 运行flutter pub get安装包。

  2. 在你的Dart代码中导入包:

import 'package:aub_ai/aub_ai.dart';
  1. 与AI对话:
/// AI的输出将存储在这个变量中。 /// 可以在Text()小部件中使用,例如。 String outputByAI = ''; /// 如何使用AubAI与AI对话的示例。 Future<void> example() async { // 确保模型文件是GGUF格式。 const String filePath = 'path/to/model.gguf'; // 开始对话的提示。 const String promptByUser = '为什么天空是蓝色的?'; // 预定义的提示模板可用。 final promptTemplate = PromptTemplate.chatML().copyWith( prompt: promptByUser, ); // 执行所有魔法的主要函数。 await talkAsync( filePathToModel: filePath, promptTemplate: promptTemplate, onTokenGenerated: (String token) { // 这个回调函数会为AI生成的每个标记调用。 // 标记可以看作是部分单词,如"你"和"好"。 setState(() { outputByAI += token; }); }, ); }

技术细节

AubAI利用了llama.cpp的力量。这是一个C++库,允许你在设备上运行AI模型。它快速、轻量且开源。这是AubAI的完美搭配。

虽然llama.cpp是一个很棒的库,但将其集成到Flutter项目中并不简单。这就是AubAI的用武之地。它是一个Flutter/Dart包,让你能轻松在Flutter项目中使用llama.cpp。

AubAI的愿景是让AI对每个人都可用,而AI不仅仅是生成文本。这就是为什么AubAI设计成模块化的。随着时间的推移,更多AI功能将被添加到AubAI中,如图像生成、语音生成等。

支持的模型文件格式

  • GGUF

资源

如果你在寻找模型文件,可以在这里找到一些: HuggingFace.co。 在撰写本文时,已有超过2300个模型可供使用。其中一些可能在数学方面表现出色,另一些在编程方面很强,还有一些擅长诗歌创作,也有一些在各个方面都很出色。你需要为你的应用找到最适合的模型,或者像我在示例应用中那样让用户自己选择模型。

免责声明

AubAI、本人以及任何参与此项目的人员均不对使用本项目造成的任何损害负责。使用风险自负。

许可

开源许可

请查看LICENSE文件。除非另有明确说明,所有文件均按AGPL-3.0许可证授权。

商业许可

AubAI采用AGPL-3.0许可证。但我们理解AGPL-3.0许可证并不总是适合商业用途。因此,我们为那些希望在商业环境中使用AubAI但不想遵守AGPL-3.0许可证的用户提供商业许可。

如需咨询商业许可,请联系daniel@brutalcoding.com

贡献

请阅读CONTRIBUTING.md文件。

YouTube

对AubAI感兴趣吗?看看我的频道,我会制作关于AubAI的视频:YouTube.com/@BrutalCoding

包括演示、教程等更多内容。

为方便起见,我在下面列出了一些视频:

Werkloos

这个荷兰词完美描述了我目前的状况:失业。但如果用英语说这个词,你可能会跳过这部分,但你还是在这里。我很高兴你仍在阅读。

最近,在去年9月,我工作的金融科技初创公司由于市场条件严峻不得不关闭。虽然我目前正在找新工作,但要找到一家能结合我对AI和Flutter热情的公司并不容易。

我决定冒险一试,在找到新工作或资金耗尽(2024年1-2月)之前继续这个项目。无论哪种情况先发生。也许我会找到一种方法使这个项目可持续发展,同时保持开源。我只是随遇而安。

AubAI之友

  • shady.ai - 使用AubAI在本地运行AI模型的面向消费者的应用。这是我正在构建的应用,用于展示AubAI的功能,并使AI对大众accessible。
  • llama.cpp - 用于在本地构建和运行AI模型的C++库。
  • Flutter Perth - 珀斯的Flutter聚会小组。我是组织者。参加我定期举办的在线聚会,了解更多关于Flutter和AI的信息。

编辑推荐精选

讯飞智文

讯飞智文

一键生成PPT和Word,让学习生活更轻松

讯飞智文是一个利用 AI 技术的项目,能够帮助用户生成 PPT 以及各类文档。无论是商业领域的市场分析报告、年度目标制定,还是学生群体的职业生涯规划、实习避坑指南,亦或是活动策划、旅游攻略等内容,它都能提供支持,帮助用户精准表达,轻松呈现各种信息。

热门AI工具AI办公办公工具讯飞智文AI在线生成PPTAI撰写助手多语种文档生成AI自动配图
讯飞星火

讯飞星火

深度推理能力全新升级,全面对标OpenAI o1

科大讯飞的星火大模型,支持语言理解、知识问答和文本创作等多功能,适用于多种文件和业务场景,提升办公和日常生活的效率。讯飞星火是一个提供丰富智能服务的平台,涵盖科技资讯、图像创作、写作辅助、编程解答、科研文献解读等功能,能为不同需求的用户提供便捷高效的帮助,助力用户轻松获取信息、解决问题,满足多样化使用场景。

模型训练热门AI工具内容创作智能问答AI开发讯飞星火大模型多语种支持智慧生活
Spark-TTS

Spark-TTS

一种基于大语言模型的高效单流解耦语音令牌文本到语音合成模型

Spark-TTS 是一个基于 PyTorch 的开源文本到语音合成项目,由多个知名机构联合参与。该项目提供了高效的 LLM(大语言模型)驱动的语音合成方案,支持语音克隆和语音创建功能,可通过命令行界面(CLI)和 Web UI 两种方式使用。用户可以根据需求调整语音的性别、音高、速度等参数,生成高质量的语音。该项目适用于多种场景,如有声读物制作、智能语音助手开发等。

Trae

Trae

字节跳动发布的AI编程神器IDE

Trae是一种自适应的集成开发环境(IDE),通过自动化和多元协作改变开发流程。利用Trae,团队能够更快速、精确地编写和部署代码,从而提高编程效率和项目交付速度。Trae具备上下文感知和代码自动完成功能,是提升开发效率的理想工具。

热门AI工具生产力协作转型TraeAI IDE
咔片PPT

咔片PPT

AI助力,做PPT更简单!

咔片是一款轻量化在线演示设计工具,借助 AI 技术,实现从内容生成到智能设计的一站式 PPT 制作服务。支持多种文档格式导入生成 PPT,提供海量模板、智能美化、素材替换等功能,适用于销售、教师、学生等各类人群,能高效制作出高品质 PPT,满足不同场景演示需求。

讯飞绘文

讯飞绘文

选题、配图、成文,一站式创作,让内容运营更高效

讯飞绘文,一个AI集成平台,支持写作、选题、配图、排版和发布。高效生成适用于各类媒体的定制内容,加速品牌传播,提升内容营销效果。

AI助手热门AI工具AI创作AI辅助写作讯飞绘文内容运营个性化文章多平台分发
材料星

材料星

专业的AI公文写作平台,公文写作神器

AI 材料星,专业的 AI 公文写作辅助平台,为体制内工作人员提供高效的公文写作解决方案。拥有海量公文文库、9 大核心 AI 功能,支持 30 + 文稿类型生成,助力快速完成领导讲话、工作总结、述职报告等材料,提升办公效率,是体制打工人的得力写作神器。

openai-agents-python

openai-agents-python

OpenAI Agents SDK,助力开发者便捷使用 OpenAI 相关功能。

openai-agents-python 是 OpenAI 推出的一款强大 Python SDK,它为开发者提供了与 OpenAI 模型交互的高效工具,支持工具调用、结果处理、追踪等功能,涵盖多种应用场景,如研究助手、财务研究等,能显著提升开发效率,让开发者更轻松地利用 OpenAI 的技术优势。

Hunyuan3D-2

Hunyuan3D-2

高分辨率纹理 3D 资产生成

Hunyuan3D-2 是腾讯开发的用于 3D 资产生成的强大工具,支持从文本描述、单张图片或多视角图片生成 3D 模型,具备快速形状生成能力,可生成带纹理的高质量 3D 模型,适用于多个领域,为 3D 创作提供了高效解决方案。

3FS

3FS

一个具备存储、管理和客户端操作等多种功能的分布式文件系统相关项目。

3FS 是一个功能强大的分布式文件系统项目,涵盖了存储引擎、元数据管理、客户端工具等多个模块。它支持多种文件操作,如创建文件和目录、设置布局等,同时具备高效的事件循环、节点选择和协程池管理等特性。适用于需要大规模数据存储和管理的场景,能够提高系统的性能和可靠性,是分布式存储领域的优质解决方案。

下拉加载更多