Substrate ist ein leistungsstarkes SDK zum Erstellen mit KI, inklusive Batterien: Sprachmodelle, Bildgenerierung, integrierter Vektorspeicher, Sandbox-Codeausführung und mehr. Um Substrate zu verwenden, verbinden Sie einfach Aufgaben und führen dann den Workflow aus. Mit diesem einfachen Ansatz können wir KI-Systeme (von RAG über Agenten bis hin zu multimodalen generativen Erfahrungen) erstellen, indem wir einfach die Berechnung beschreiben, ohne zusätzliche Abstraktionen .
Substrate ist außerdem eine Workflow-Ausführungs- und Inferenz- Engine, die für die Ausführung zusammengesetzter KI-Workloads optimiert ist. Die Verknüpfung mehrerer Inferenz-APIs ist von Natur aus langsam – unabhängig davon, ob Sie es selbst durchführen oder ein Framework wie LangChain verwenden. Mit Substrate können Sie auf das Framework verzichten, weniger Code schreiben und zusammengesetzte KI schnell ausführen.
Wenn Sie gerade erst anfangen, gehen Sie zu docs.substrat.run.
Eine detaillierte API-Referenz zu den auf Substrate verfügbaren Knoten finden Sie unter Substrate.run/nodes.
# install from PyPI
pip install substrate
from substrate import Substrate , ComputeText , sb
Initialisieren Sie den Substrate-Client.
substrate = Substrate ( api_key = SUBSTRATE_API_KEY )
Generieren Sie eine Story mit dem ComputeText
Knoten.
story = ComputeText ( prompt = "tell me a story" )
Fassen Sie die Ausgabe des story
-Knotens mit einem anderen ComputeText
Knoten zusammen. Da story
noch nicht ausgeführt wurde, verwenden wir sb.concat
um mit der zukünftigen Ausgabe zu arbeiten.
summary = ComputeText ( prompt = sb . concat ( "summarize this story in one sentence: " , story . future . text ))
Führen Sie die story
→ summary
aus, indem Sie den Endknoten an substrate.run
übergeben.
response = substrate . run ( story , summary )
(Um das Diagramm asynchron auszuführen, verwenden Sie einfach async_run
und await
“.)
response = await substrate . async_run ( story , summary )
Rufen Sie die Ausgabe des Zusammenfassungsknotens ab, indem Sie sie an response.get
übergeben.
summary_out = response . get ( summary )
print ( summary_out . text )
# Princess Lily, a kind-hearted young princess, discovers a book of spells and uses it to grant her family and kingdom happiness.
Um das obige Beispiel als Notizbuch auszuführen, navigieren Sie zum Verzeichnis examples/notebooks
und führen Sie Folgendes aus:
make ensure # install dependencies
poetry run marimo edit basic.py # run the notebook
Viele weitere Beispiele sind im Verzeichnis /examples
enthalten.