当前位置: 首页 > article >正文

通过自然语言表达你的想法。GitHub Spark让任何人都能使用人工智能,为自己创建软件...

52308ec1f8a06b185661fb0e4777a4e5.png

我们能否让任何人都能使用人工智能,为自己创建软件?尽管开发者喜欢定制自己的开发环境以提高效率和趣味性,但创建个性化应用程序的复杂性常常阻止他们这样做。

如何使个性化软件的创建变得像定制开发环境一样简单?并让更多人能够轻松实现这种个性化。


shadow:

我今天仔细学习了Github最新发布的Spark介绍。Spark 不是用来生成代码的工具,而是用来生成应用的工具。并且,倡导生成解决问题的“微应用”,微应用聚焦解决单一的问题,而不是大而全,并且是个性化的问题

在Spark的功能上,有非常多值得学习的新的人机交互的方式和功能点。我把重点信息都做了加粗,分享给大家:

731de353e5b265faf1e954e224b5dcb4.gif

GitHub Spark 简介

GitHub Spark 是一款由人工智能驱动的工具,用于创建和共享微应用(sparks),这些微应用可以根据您的确切需求和偏好进行定制,并可直接从您的桌面和移动设备上使用。无需编写或部署任何代码。

它通过3个主要功能实现:

  1. 基于 NL 的编辑器,可轻松描述您的想法,然后随着时间的推移不断完善它们

  2. 托管运行时的环境,用于托管您的 Spark,并让其访问数据存储、主题和 LLM
  3. 支持 PWA 的管理后台,让你可以从任何地方管理和启动你的 spark

此外,GitHub Spark 还允许您与他人共享您的 spark,并控制他们的只读或读写权限。然后,他们可以选择收藏 spark ,并直接使用它, 或重新混合它(fork?),以进一步适应他们的偏好。

非常……个性化!

让我们看看它是如何工作的🎬

什么是“微应用程序”?

GitHub Spark 遵循Unix的应用哲学,软件应该专注于完成一个特定的任务,并且要做到最好。这个任务应特别满足用户的需求,无论其使用时长如何。换句话说,软件应简单、专注、高效地解决一个问题即使这个问题是短暂的或小众的。

(Unix的应用哲学强调软件应专注于做好一件事,通过简单、模块化和可组合的设计来实现高效和灵活的解决方案)

所以“微”并不是指应用程序的价值大小,而是指其功能复杂性的大小。

灵感/案例

以下是使用 GitHub Spark 制作应用的一些灵感。这些灵感包括生活管理工具、学习辅助工具、搞笑动画和新闻客户端。但它们的共同点是:它们的外观和感觉完全符合创作者的期望。不多也不少 ❤️

371f555d9f6a8e680816ec6fd845bb09.png

儿童零花钱追踪器,可以以只读或读写模式(父母)使用,并在达到收入目标时使用 LLM 生成庆祝信息。

20a07d51886e60ebe82dcd32532314a5.png

一个六岁孩子想象并创造的动画:汽车世界。

a5f60786a19dcdcc55f1903b92e82eba.png

一款用于追踪每周卡拉 OK 之夜以及每位受邀嘉宾状态的应用程序。

7edee977bef2a1bf225a6d41e243df18.png

由一名 10 岁的孩子在学校创建和使用的一款地图应用,允许按名称搜索城市,然后使用 LLM 生成有趣的 tldr 描述。

TL;DR(Too Long; Didn't Read)是对长篇内容的极简总结,通常只有一句话,旨在快速传达核心信息。

efc933169e313b2ad09a8f5cd4ccfb8e.png

一个自定义的 HackerNews 客户端,显示前 20 个帖子,并使用 LLM 总结评论(这真的很有用!)。这是某个团队的日常 HN 驱动程序。

GitHub Spark 主要功能👍


基于 NL 的工具链

创建应用时,您必须知道自己想要什么。不仅仅是总体思路,还有确切的功能、详细的交互行为以及整体外观和感觉。不幸的是,这可能会变得相当复杂,甚至可能让人不知所措,甚至中途放弃。这正是GitHub Spark 要解决的问题!

GitHub Spark 让你从一个简单的想法开始,例如 :“一个跟踪我孩子零花钱的应用程序”。

然后通过“辅助探索”让复杂性慢慢浮现。特别是,它基于 NL 的编辑器旨在让创建过程变得轻松有趣!

—— 四个核心功能:

交互式预览

修订版本

自动历史记录

模型选择



交互式预览

当您在 GitHub Spark 中输入 NL 表达式时,它不仅会生成代码,还会立即运行并通过交互式预览显示它。这种“以应用程序为中心的反馈循环”允许您根据需要,快速地调整细节,直观地了解您的意图时进行迭代:

“嗯,我想我想要在这里添加一个切换按钮!”

5814ee1a602a65eec1d1b8455d6baf22.png


修订版本

当您创建或迭代 spark 时,您可以选择请求一组变体。这将生成 3-6 个不同版本的请求,每个版本都有细微但有意义的差别

你可能知道自己想要某个功能,但不太清楚它的外观或行为,因此获得一些可以启发和扩展思维的想法会很有帮助。就像一个 AI 思想伙伴!

(和你一起在做头脑风暴

6561edd31d3a084862fc8f0d4d565d02.png要求对模棱两可的修订版本进行修改

自动历史记录

当你迭代 spark 时,每个修订都会自动保存,只需单击一下即可恢复。这样你就可以探索想法(和变体),而不必担心丢失任何进度。更重要的是,你无需自己管理版本控制。这可以实现一种“好奇心驱动的开发”,你可以先有一个想法,然后尝试一下,而不必担心会产生任何负面后果(例如弄乱你的应用程序)。

0800e414cd67230c33299fcc0c232c1a.png

从协作的角度来看,历史记录也非常引人注目,因为每当有人与您分享火花时,它都会提供一种“语义查看源代码”的形式。在创建 GitHub Spark 时,我们发现我们会自然而然地互相分享新想法,然后立即查看历史记录以了解他们是如何实现的。这几乎就像能够窥视他人的思想,并看到他们序列化的思维过程。

模型选择

创建或修改火花时,您可以从四个 AI 模型中选择一个:Claude Sonnet 3.5、GPT-4o、o1-preview 和 o1-mini。这很棒,因为它允许您尝试一个想法,如果您没有得到预期的结果,您可以撤消并使用完全不同的模型重试。此外,历史记录会跟踪您每次修订使用的模型,这让您可以看到火花随着时间的推移如何演变。

2a7d6093d7cc6c3ffa7af2aa837cd373.png

创建新 spark 时选择模型

31cfdc5ac69c1bfe7975fff666b1be4a.png

修改现有火花时选择模型



托管运行时环境

我们将 GitHub Spark 称为“以应用为中心”的工具(而不是“以代码为中心”的工具)。这并不是因为它不允许您查看或编辑代码(它可以!),而是因为它旨在创建可供查看、感受和使用的应用 — 而不是简单地生成代码,然后期望您使用它来执行某些操作(构建、部署、配置数据库等)。

它通过为其工具链添加一个托管运行时环境来实现这一点,该环境围绕四个核心功能构建:

免部署托管

主题化设计系统

持久数据存储

集成模型提示

免部署托管

当你创建或修改 spark 时,更改会自动部署,并且可以在你的桌面、平板电脑或移动设备上运行和安装(通过 PWA)。从这个意义上讲,GitHub Spark 有点像一个微应用云,它将创建、部署和使用软件的行为简化为一个动作:通过自然语言表达你的想法 🚀


主题化设计系统

为了确保您的应用外观和感觉良好,GitHub Spark 包含一组内置 UI 组件和一个可主题化的设计系统。因此,每当您创建新应用时,表单控件、布局和图标等内容看起来都应该是开箱即用的。如果您想进一步调整任何内容,可以使用主题编辑器更改默认的强调色、边框半径、应用间距和颜色主题(浅色/深色)。

持久数据存储

无论是制作待办事项列表、园艺规划器还是井字游戏,大多数有趣的应用都需要存储数据。GitHub Spark 运行时可以满足您的需求,它提供托管键值存储,并自动知道何时使用它。此外,GitHub Spark 还提供数据编辑器,让您轻松查看和编辑 Spark 正在使用的数据。这样,您就可以完全控制任何状态,而无需担心任何细节。

集成模型提示

GitHub Spark 运行时与GitHub Models集成,允许您向 Spark 添加生成式 AI 功能,而无需任何 LLM 知识(例如,总结文档、为儿童睡前应用生成故事)。此外,它还提供了一个提示编辑器,可让您查看 GitHub Spark 生成的提示,并允许您根据需要对其进行调整 - 而无需编辑任何代码。

639743a271bf93f8be7fc4c0c320466b.png

查看你的 spark 正在使用的 AI 提示,

然后手动编辑一个

呼!这可真不少。但为了让 GitHub Spark 实现愿景:

将应用程序创建成本降至零

我们觉得这个工具链和运行时是绝对必要的。而且我们认为用户会喜欢它的使用体验 🥰

另外我们还在探索以下方向:

扩展协作模式

例如公共画廊,允许用户对某人在其 spark 分叉中所做的更改进行语义合并、多人游戏

扩展编辑器界面

例如,提供“X射线模式”,允许总结和调整应用程序的精确行为。

X光模式,该模式允许用户:

1/ 总结应用的整体结构和组件:帮助用户了解应用的各个部分是如何组织和相互联系的。

2/ 调整应用的具体行为和交互:使用户能够精细地控制和修改应用的行为,确保其运行方式完全符合个人需求。

这种“X光模式”旨在为用户提供更深入的理解和更精细的控制,使他们能够更准确地调整和优化他们的微应用(sparks),从而更好地满足特定的使用场景和需求。

扩展运行环境

例如更多内置组件、更好地与第三方服务集成、实现文件存储和向量搜索

最后,Github提到了:

还有很多我们还没有想到的很酷的东西!

欢迎分享本文,

目前有130人

在Mixlab AI编程社区探索

个性化应用的无限可能~~

8f96f251ad6453bd625492960be590ab.jpeg

原文:

https://githubnext.com/projects/github-spark


http://www.kler.cn/a/381445.html

相关文章:

  • HarmonyOS使用arkTS拉起指定第三方应用程序
  • MySQL查询where中包含多个in条件问题
  • 【ShuQiHere】️ 深入了解 ADB(Android Debug Bridge):您的 Android 开发利器!
  • 搜维尔科技:【煤矿虚拟仿真】煤矿企业、高校、科研单位-多语言支持、数字孪生、交互式学习体验
  • Ghidra无头模式(自动化批处理执行重复性任务)
  • unity3d————叉乘的知识点
  • Spring Boot环境下的导师双选流程优化
  • 鸿蒙ArkTS中的布局容器组件(Column、Row、Flex、 Stack、Grid)
  • Xfce桌面设置右键菜单:用右键打开VSCode
  • ABAP Git PULL 出错:DDIF_TABLE_PUT
  • Linux基础1
  • Spring-Day5
  • 什么是软件设计模式, 它们⽤于解决什么问题, 它们为什么有效
  • Redis到底支不支持事务?半事务
  • pycharm中的服务是什么?
  • Docker篇(学习前言)
  • 【Fargo】22:H.264文件读取并RTP分片打包
  • 练习LabVIEW第四十题
  • 在 Windows 中简化 Nginx 命令行操作
  • EL面包屑导航实现
  • (JVM)我们该如何认识 Java的内存模型(Java Memory Model(JMM))? 本篇文章告诉你答案 !带你全面了解JMM
  • 微控制器(MCU)如何运行存储在Flash的程序???
  • 数据分析挖掘系统-全方位洞察与决策
  • 众测遇到的一些案列漏洞
  • 从安全角度看多线程(附Golang举例)
  • QT中OpenGL学习笔记1