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

Superduper - 在数据上构建端到端AI工作流和应用

在这里插入图片描述

文章目录

    • 一、关于 Superduper
      • 相关链接资源
    • 二、安装
    • 三、基本用法
    • 四、更多Superduper说明
      • Superduper支持什么?
      • 核心功能
      • 关键优势
      • 一个优雅的更新模式来更新已应用的组件
      • 利用 `Template` 类的智能表单构建器
      • 基于Python原生类型注解的序列化
      • 社区与获取帮助
      • 当前支持的数据存储


一、关于 Superduper

Superduper 是一个基于 Python 的框架,用于在您的数据上构建 端到端 AI-数据工作流和应用,同时与主要数据库集成。

它支持最新的技术和技术,包括 LLMs、向量搜索、RAG、多模态以及经典 AI 和 ML 范式。

开发者可以通过构建 组合和声明式对象 来利用 Superduper,这些对象将部署、编排和版本管理等细节外包给 Superduper 引擎。

这使得开发者可以完全避免实现 MLOps、ETL 管道、模型部署、数据迁移和同步。

使用Superduper简单地说就是 “CAPE”:连接到您的数据,应用任意AI到这些数据,打包并重用应用程序在任意数据上,以及执行基于AI输出的数据查询和预测。

  • 连接 Connect
  • 应用 Apply
  • Package
  • 执行 Execute

相关链接资源

  • Github : https://github.com/superduper-io/superduper
  • 文档 : https://docs.superduper.io
  • 博客: https://blog.superduper.io
  • 网站: https://superduper.io
  • 模板 : https://docs.superduper.io/docs/category/templates
  • Slack: https://join.slack.com/t/superduper-public/shared_invite/zt-1yodhtx8y-KxzECued5QBtT6JFnsSNrQ
  • Youtube : https://www.youtube.com/channel/UC-clq9x8EGtQc6MHW0GF73g
  • 领英 : https://www.linkedin.com/company/superduper-io"
  • 许可证 - Apache 2.0
  • 招聘:https://join.com/companies/superduper

二、安装

必需:确保您已安装 Python 3.10+。
安装基本包:

pip install superduper-framework >= 0.6.0

安装您数据后端的插件:

# at least one or more of the following:
pip install superduper-mongodb >= 0.6.0
# or
pip install superduper-sql >= 0.6.0
# or
pip install superduper-snowflake >= 0.6.0

安装适用于您用例的附加插件(可选):

pip install superduper-<plugin_name>

三、基本用法

Connect

db = superduper('mongodb|postgres|mysql|sqlite|duckdb|snowflake://<your-db-uri>')

Apply

listener = MyLLM('self_hosted_llm', architecture='llama-3.2', postprocess=my_postprocess).to_listener('documents', key='txt')
db.apply(listener)

Package

application = Application('my-analysis-app', components=[listener, vector_index])
template = Template('my-analysis', component=app, substitutions={'documents': 'table'})
template.export('my-analysis')

Execute

query = db['documents'].like({'txt', 'Tell me about Superduper'}, vector_index='my-index').select()
query.execute()

Superduper 可在任何地方运行;您也可以 联系我们 了解更多关于将 Superduper 工作流程大规模投入生产的企业平台的信息。


四、更多Superduper说明

Superduper支持什么?

Superduper足够灵活,可以支持广泛的AI技术和范式。我们在pluginstemplates目录中提供了一系列预构建的功能。特别是,当AI和数据需要以持续和紧密集成的形式交互时,Superduper表现得尤为出色。以下是一些示例,您可以从我们的模板中进行尝试:

  • 语义多模态向量搜索 (图片, 文本, 视频)
  • 检索增强生成 具有特殊要求(数据获取涉及语义搜索以及业务规则和预处理)
  • LLM finetuning on database hosted data
  • 使用多模态数据进行迁移学习
    我们正在寻找热情的开发者,以贡献到Superduper开源中提供的精彩预构建模板和工作流程的库。请加入讨论,通过贡献问题和拉取请求!

核心功能

  • 创建一个超级超级数据-AI 连接/数据层,由您自己的
  • 数据后端(数据库/数据湖/数据仓库)
  • 元数据存储(与databackend相同或不同)
  • 工件存储(用于存储大对象)
  • 计算实现
  • 使用声明式编程模型构建复杂的功能单元(组件),这些单元与您的数据后端中的数据紧密集成,通过一组简单的原语和基类实现。
  • 构建更大的功能单元,将多个相互关联的 Component 实例封装到 AI 数据 Application
  • 重复使用经过实战考验的 ComponentModelApplication 实例,通过 Template 为开发者提供一个容易入手的起点,以便进行困难的 AI 实现
  • 一种透明、可读、网络友好且高度可移植的序列化协议,“Superduper-protocol”,用于通信实验结果,使 Application 线程和版本易于跟踪,并从AI世界到数据库/类型化数据世界的优雅过渡。
  • 使用 Model 实例的输出以及主数据后端数据组合执行查询,以启用最新一代的 AI-数据应用,包括所有类型的向量搜索、RAG 以及更多更多。

关键优势

  • 极大的灵活性
    结合任何基于Python的AI模型,与最成熟、经过实战考验的数据库和仓库进行集成;Snowflake、MongoDB、Postgres、MySQL、SQL Server、SQLite、BigQuery和Clickhouse都受到支持。
  • 无缝集成避免MLOps
    去除实现MLOps的需求,使用声明式和组合式的Superduper组件,这些组件指定了模型和数据应达到的最终状态。
  • 提高代码的可重用性和可移植性
    将组件打包为模板,公开所需的键参数,以便在您的社区和组织中重用和通信AI应用程序。
  • 成本节省
    实现无需专用向量数据库的向量搜索和嵌入生成。轻松地在自托管模型和API托管模型之间切换,无需进行重大代码更改。
  • 无需额外努力即可迁移到生产环境
    Superduper的REST API允许安装的模型无需额外开发工作即可提供服务。为了实现企业级可扩展性、安全措施、安全性和日志记录,使用Superduper创建的应用程序和工作流程可以一键部署到Superduper企业。

一个优雅的更新模式来更新已应用的组件

这意味着更改深层次的 Component 中的提示或参数不会意味着
从头开始启动所有组件。这也为回滚奠定了基础
并且版本固定。


利用 Template 类的智能表单构建器

这将允许开发者将他们的应用程序作为无代码界面进行展示。


基于Python原生类型注解的序列化

from superduper import typing as tclass MyPDF:path: t.Filemy_func: t.Blobmy_other_func: t.Pickle

社区与获取帮助

如果您有任何问题、疑问、评论或想法:


当前支持的数据存储

  • MongoDB
  • MongoDB Atlas
  • Snowflake
  • PostgreSQL
  • MySQL
  • SQLite
  • DuckDB
  • Google BigQuery
  • Microsoft SQL Server (MSSQL)
  • ClickHouse

2025-04-16(三)

相关文章:

  • AI问答收集
  • 深入理解React中的Props与State:核心区别与最佳实践
  • 基于CNN卷积神经网络和GEI步态能量提取的视频人物步态识别算法matlab仿真
  • QT6 源(36):界面组件的总基类 QWidget 的源码阅读
  • 《Spring Boot 测试框架指南:@SpringBootTest与Mockito的最佳实践》
  • PCM 参数深度解析:采样率、帧、缓存大小与多通道关系
  • Docker 容器与镜像核心操作命令大全(实战指南)
  • AI开发-效率提升小工具-“打盹弹窗侠”记录
  • 【Python3】Django 学习之路
  • 55、⾸屏加载⽩屏怎么进⾏优化
  • ES6 Object.values 特定字段处理
  • Java项目—— 拼图小游戏(进阶版)
  • PowerBi中的Measure(度量值)如何理解和应用?
  • 数字化转型浪潮下,B端产品如何助力企业乘风破浪?
  • Android studio—socketIO库的emit与return的使用
  • JVM对象创建全过程
  • .net core 项目快速接入Coze智能体-开箱即用-第2节
  • langgraph框架之初识
  • AI 编程工具—如何在 Cursor 中集成使用 MCP工具
  • Banana Pi BPI-RV2 RISC-V 路由器开发板发售, 全球首款RISC-V路由器
  • 湖南省委书记人民日报撰文:坚定不移贯彻总体国家安全观,更好统筹高质量发展和高水平安全
  • 农文旅项目投资1700万后被告知是禁养区?南京浦口通报
  • 董军与越南国防部长共同主持中越边境国防友好交流活动
  • 10亿美元拿下加纳金矿!“矿茅”紫金矿业黄金板块突围战再下一城
  • 眨眼间能完成10亿次存储,上海科研团队研制出超高速闪存
  • 美海军第二艘航母抵达中东地区,南北夹击胡塞武装