SuperDuper เป็นกรอบการทำงานที่ใช้ Python สำหรับการสร้าง เวิร์กโฟลว์ AI-Data และแอพพลิเคชั่น บนข้อมูลของคุณเองโดยรวมกับฐานข้อมูลสำคัญ รองรับเทคโนโลยีและเทคนิคล่าสุดรวมถึง LLMS, Vector-Search, RAG, Multimodality รวมถึงกระบวนทัศน์ AI แบบคลาสสิกและ ML แบบคลาสสิก
นักพัฒนาอาจใช้ประโยชน์จาก Superduper โดยการสร้าง วัตถุที่เป็นองค์ประกอบและการประกาศ ซึ่งให้รายละเอียดของการปรับใช้การประสานและการกำหนดเวอร์ชันและอื่น ๆ อีกมากมายสำหรับเครื่องยนต์ Superduper สิ่งนี้ช่วยให้นักพัฒนาสามารถหลีกเลี่ยงการใช้ MLOPs, ETL ไปป์ไลน์การปรับใช้แบบจำลองการย้ายข้อมูลและการซิงโครไนซ์
การใช้ SuperDuper เป็นเพียง " CAPE ": เชื่อมต่อ กับข้อมูลของคุณ ใช้ AI โดยพลการกับข้อมูล แพ็คเกจ และนำแอปพลิเคชันมาใช้กับข้อมูลโดยพลการและ ดำเนินการ สืบค้น AI-DATABASE และการคาดการณ์เกี่ยวกับผลลัพธ์ AI และข้อมูลที่เกิดขึ้น
เชื่อมต่อ
db = superduper ( 'mongodb|postgres|mysql|sqlite|duckdb|snowflake://<your-db-uri>' )
นำมาใช้
listener = MyLLM ( 'self_hosted_llm' , architecture = 'llama-3.2' , postprocess = my_postprocess ). to_listener ( 'documents' , key = 'txt' )
db . apply ( listener )
บรรจุุภัณฑ์
application = Application ( 'my-analysis-app' , components = [ listener , vector_index ])
template = Template ( 'my-analysis' , component = app , substitutions = { 'documents' : 'table' })
template . export ( 'my-analysis' )
ประหารชีวิต
query = db [ 'documents' ]. like ({ 'txt' , 'Tell me about Superduper' }, vector_index = 'my-index' ). select ()
query . execute ()
Superduper อาจทำงานได้ทุกที่ นอกจากนี้คุณยังสามารถติดต่อเราเพื่อเรียนรู้เพิ่มเติมเกี่ยวกับแพลตฟอร์ม Enterprise เพื่อนำเวิร์กโฟลว์ Superduper ของคุณไปสู่การผลิตในระดับ
Superduper มีความยืดหยุ่นเพียงพอที่จะรองรับเทคนิคและกระบวนทัศน์ AI ที่หลากหลาย เรามีฟังก์ชั่นที่สร้างไว้ล่วงหน้าในไดเรกทอรี plugins
และ templates
โดยเฉพาะอย่างยิ่ง Superduper เก่งเมื่อ AI และข้อมูลจำเป็นต้องมีปฏิสัมพันธ์ในรูปแบบที่ต่อเนื่องและครบถ้วน นี่คือตัวอย่างตัวอย่างบางอย่างที่คุณอาจลองจากแม่แบบของเรา:
เรากำลังมองหาที่จะเชื่อมต่อกับนักพัฒนาที่กระตือรือร้นเพื่อสนับสนุนเพลงของเทมเพลตและเวิร์กโฟลว์ที่สร้างไว้ล่วงหน้าที่น่าทึ่งและเวิร์กโฟลว์ที่มีอยู่ในโอเพ่นซอร์ส Superduper โปรดเข้าร่วมการสนทนาโดยมีส่วนร่วมในปัญหาและดึงคำขอ!
Component
) โดยใช้รูปแบบการเขียนโปรแกรมแบบประกาศซึ่งรวมเข้ากับข้อมูลในฐานข้อมูลของคุณอย่างใกล้ชิดโดยใช้ชุดดั้งเดิมและคลาสพื้นฐานComponent
ที่สัมพันธ์กันหลายรายการลงใน Application
AI-DataComponent
ที่ผ่านการทดสอบการต่อสู้ Model
และ Application
ซ้ำโดยใช้ Template
ทำให้นักพัฒนาสามารถเริ่มต้นได้ง่ายด้วยการใช้งาน AI ที่ยากลำบากApplication
ปพลิเคชันModel
รวมถึงข้อมูลฐานข้อมูลหลักเพื่อเปิดใช้งานแอปพลิเคชัน AI-Data รุ่นล่าสุดรวมถึงรสชาติทั้งหมดของการค้นหาเวกเตอร์การค้นหา RAG และอีกมากมาย ความยืดหยุ่นขนาดใหญ่
รวมโมเดล AI ที่ใช้ Python ใด ๆ , API จากระบบนิเวศกับฐานข้อมูลและคลังสินค้าที่ได้รับการทดสอบมากที่สุด Snowflake, MongoDB, Postgres, MySQL, SQL Server, SQLite, BigQuery และ Clickhouse ทั้งหมดได้รับการสนับสนุน
การรวมเข้าด้วยกันอย่างไร้รอยต่อหลีกเลี่ยง mlops
ลบความจำเป็นในการใช้ MLOPs โดยใช้ส่วนประกอบ superduper ที่ประกาศและองค์ประกอบซึ่งระบุสถานะสิ้นสุดว่าแบบจำลองและข้อมูลควรไปถึง
ส่งเสริมการใช้ซ้ำของรหัสและการพกพา
ส่วนประกอบของแพ็คเกจเป็นเทมเพลตการเปิดเผยพารามิเตอร์สำคัญที่จำเป็นในการใช้ซ้ำและสื่อสารแอปพลิเคชัน AI ในชุมชนและองค์กรของคุณ
ประหยัดค่าใช้จ่าย
ใช้การค้นหาเวกเตอร์และการสร้างการฝังโดยไม่ต้องใช้ฐานข้อมูลเวกเตอร์เฉพาะ สลับระหว่างโมเดลที่โฮสต์ด้วยตนเองและโมเดลโฮสต์ API ได้อย่างง่ายดายโดยไม่มีการเปลี่ยนแปลงรหัสที่สำคัญ
ย้ายไปผลิตโดยไม่ต้องใช้ความพยายามเพิ่มเติม
REST API ของ Superduper ช่วยให้สามารถให้บริการรุ่นที่ติดตั้งได้โดยไม่ต้องมีงานพัฒนาเพิ่มเติม สำหรับความสามารถในการปรับขนาดของระดับองค์กร, ปลอดภัยล้มเหลว, การรักษาความปลอดภัยและการบันทึก, แอปพลิเคชันและเวิร์กโฟลว์ที่สร้างขึ้นด้วย Superduper อาจถูกปรับใช้ในคลิกเดียวที่ SuperDuper Enterprise
main
? เรากำลังดำเนินการในการเปิด 0.4.0
ที่กำลังจะมาถึง ในรุ่นนี้เรามี:
Component
ทริกเกอร์การคำนวณเริ่มต้นและการคำนวณที่ขึ้นกับข้อมูลโดยใช้ @trigger
สิ่งนี้จะช่วยให้ Component
มีความหลากหลายขนาดใหญ่นอกเหนือจาก Model
ที่ได้รับการยอมรับอย่างดี Listener
VectorIndex
CDC
ทั่วไปสิ่งนี้จะช่วยให้นักพัฒนาสามารถสร้างช่วงของฟังก์ชั่นที่ตอบสนองต่อการเปลี่ยนแปลงข้อมูลที่เข้ามา
Template
เพื่อเปิดใช้งานหน่วยที่ใช้งานได้ใหม่ของฟังก์ชั่นที่สมบูรณ์ ส่วนประกอบที่บันทึกเป็นอินสแตนซ์ Template
จะช่วยให้ผู้ใช้สามารถปรับใช้ Component
ที่ปรับ Application
และทดสอบแล้วและการใช้งานแอปพลิเคชันบนแหล่งข้อมูลทางเลือกได้อย่างง่ายดาย
Template
คอนกรีตในโครงการ Template
เทมเพลตเหล่านี้อาจใช้กับ Superduper ด้วยคำสั่งเดียวอย่างง่าย
superduper apply <template> '{"variable_1": "value_1", "variable_2": ...}'
หรือ:
from superduper import templates
app = template ( variable_1 = 'value_1' , variable_2 = 'value_2' , ...)
db . apply ( app )
ตอนนี้คุณสามารถดู Component
ซ์ส่วนประกอบ Application
และ Template
ของคุณในผู้ใช้อินเทอร์เฟซและดำเนินการสืบค้นโดยใช้อินสแตนซ์ QueryTemplate
โดยตรงกับเซิร์ฟเวอร์ REST
superduper start
การติดตั้ง :
pip install superduper-framework
ดู เทมเพลตที่สร้างไว้ล่วงหน้า:
superduper ls
เชื่อมต่อ และ ใช้ เทมเพลตที่สร้างไว้ล่วงหน้า:
( หมายเหตุ: เทมเพลตที่สร้างไว้ล่วงหน้าได้รับการสนับสนุนโดย Python 3.10 เท่านั้นคุณสามารถใช้คุณสมบัติอื่น ๆ ทั้งหมดใน Python 3.11+ )
# e.g. 'mongodb://localhost:27017/test_db'
SUPERDUPER_DATA_BACKEND= < your-db-uri > superduper apply simple_rag
ดำเนิน การค้นหาหรือการทำนายผล:
from superduper import superduper
db = superduper ( '<your-db-uri>' ) # e.g. 'mongodb://localhost:27017/test_db'
db [ 'rag' ]. predict ( 'Tell me about superduper' )
ดู และ ตรวจสอบ ทุกอย่างในอินเทอร์เฟซ Superduper จากบรรทัดคำสั่ง:
superduper start
หลังจากทำเช่นนี้คุณพร้อมที่จะสร้างส่วนประกอบแอปพลิเคชันและเทมเพลตของคุณเอง!
เริ่มต้น ด้วยการคัดลอกเทมเพลตที่มีอยู่ไปยังสภาพแวดล้อมการพัฒนาของคุณเอง:
superduper bootstrap < template_name > --destination templates/my-template
แก้ไข สมุดบันทึก build.ipynb
เพื่อสร้างฟังก์ชันการทำงานของคุณเอง
หากคุณมีปัญหาคำถามความคิดเห็นหรือแนวคิด:
[email protected]
มีหลายวิธีในการมีส่วนร่วมและพวกเขาไม่ จำกัด เฉพาะการเขียนรหัส เรายินดีต้อนรับการมีส่วนร่วมทั้งหมดเช่น:
โปรดดูคู่มือการสนับสนุนของเราสำหรับรายละเอียด
ขอบคุณไปกับคนที่ยอดเยี่ยมเหล่านี้:
Superduper เป็นโอเพ่นซอร์สและตั้งใจที่จะเป็นความพยายามของชุมชนและมันจะเป็นไปไม่ได้หากไม่มีการสนับสนุนและความกระตือรือร้นของคุณ มีการแจกจ่ายภายใต้ข้อกำหนดของใบอนุญาต Apache 2.0 การบริจาคใด ๆ ที่เกิดขึ้นกับโครงการนี้จะอยู่ภายใต้บทบัญญัติเดียวกัน
เรากำลังมองหาคนดีที่ลงทุนในปัญหาที่เราพยายามแก้ไขเพื่อเข้าร่วมกับเราเต็มเวลา ค้นหาบทบาทที่เราพยายามเติมที่นี่!