PROBIEREN SIE ES HIER AUS
Open Canvas ist eine Open-Source-Webanwendung für die Zusammenarbeit mit Agenten, um Dokumente besser zu schreiben. Es ist von „Canvas“ von OpenAI inspiriert, weist jedoch einige wesentliche Unterschiede auf.
Open Source : Der gesamte Code, vom Frontend über den Inhaltsgenerierungsagenten bis zum Reflexionsagenten, ist Open Source und MIT-lizenziert.
Eingebauter Speicher : Open Canvas wird standardmäßig mit einem Reflexionsagenten ausgeliefert, der Stilregeln und Benutzereinblicke in einem gemeinsam genutzten Speicher speichert. Dadurch kann sich Open Canvas sitzungsübergreifend Fakten über Sie merken.
Beginnen Sie mit vorhandenen Dokumenten : Open Canvas ermöglicht es Benutzern, mit einem leeren Text oder Code-Editor in der Sprache ihrer Wahl zu beginnen, sodass Sie die Sitzung mit Ihren vorhandenen Inhalten beginnen können, anstatt gezwungen zu sein, mit einer Chat-Interaktion zu beginnen. Wir glauben, dass dies eine ideale UX ist, da Sie oft bereits über einige Inhalte verfügen und diese iterieren möchten.
Speicher : Open Canvas verfügt über ein integriertes Speichersystem, das automatisch Reflexionen und Erinnerungen an Sie und Ihren Chatverlauf generiert. Diese werden dann in nachfolgende Chat-Interaktionen einbezogen, um ein persönlicheres Erlebnis zu ermöglichen.
Benutzerdefinierte Schnellaktionen : Mit benutzerdefinierten Schnellaktionen können Sie Ihre eigenen Eingabeaufforderungen definieren, die an Ihren Benutzer gebunden sind und über Sitzungen hinweg bestehen bleiben. Diese können dann einfach mit einem einzigen Klick aufgerufen und auf das Artefakt angewendet werden, das Sie gerade betrachten.
Vorgefertigte Schnellaktionen : Es gibt auch eine Reihe vorgefertigter Schnellaktionen für häufige Schreib- und Codierungsaufgaben, die immer verfügbar sind.
Artefaktversionierung : Allen Artefakten ist eine „Version“ zugeordnet, sodass Sie in die Vergangenheit reisen und frühere Versionen Ihres Artefakts sehen können.
Code, Markdown oder beides : Die Artefaktansicht ermöglicht die Anzeige und Bearbeitung von Code und Markdown. Sie können sogar Chats führen, die Code und Markdown-Artefakte generieren, und zwischen ihnen wechseln.
Live-Markdown-Rendering und -Bearbeitung : Mit dem Markdown-Editor von Open Canvas können Sie den gerenderten Markdown während der Bearbeitung anzeigen, ohne hin und her wechseln zu müssen.
Sie können unsere bereitgestellte Version kostenlos nutzen, indem Sie opencanvas.langchain.com besuchen
oder
Sie können dieses Repository klonen und lokal ausführen/in Ihrer eigenen Cloud bereitstellen. Schritte dazu finden Sie im nächsten Abschnitt.
Das Ausführen oder Entwickeln von Open Canvas ist einfach. Klonen Sie zunächst dieses Repository und navigieren Sie in das Verzeichnis.
Git-Klon https://github.com/langchain-ai/open-canvas.gitcd open-canvas
Als nächstes installieren Sie die Abhängigkeiten über Yarn:
Garn installieren
Installieren Sie dann LangGraph Studio, das zum lokalen Ausführen der Diagramme erforderlich ist, oder erstellen Sie ein LangSmith-Konto, um es in der Produktion in der LangGraph Cloud bereitzustellen.
Kopieren Sie anschließend den Inhalt der Datei .env.example
in .env
und legen Sie die erforderlichen Werte fest:
# LangSmith tracingLANGCHAIN_TRACING_V2=true LANGCHAIN_API_KEY=# LLM-API-Schlüssel# Anthropic für Reflexion verwendetANTHROPIC_API_KEY=# OpenAI für Inhaltsgenerierung verwendetOPENAI_API_KEY=# LangGraph-Bereitstellung oder lokaler Entwicklungsserver über LangGraph Studio.# Bei lokaler Ausführung sollte diese URL in der Datei „constants.ts“ festgelegt werden. # LANGGRAPH_API_URL=# Supabase für Authentifizierung# Öffentlich keyNEXT_PUBLIC_SUPABASE_URL= NEXT_PUBLIC_SUPABASE_ANON_KEY=
Starten Sie abschließend den Entwicklungsserver:
Garnentw
Öffnen Sie dann localhost:3000 mit Ihrem Browser und beginnen Sie mit der Interaktion!
Sie können sich hier auch eine kurze (2-minütige) Videoanleitung zur lokalen Einrichtung von Open Canvas ansehen.
Open Canvas ist so konzipiert, dass es mit jedem LLM-Modell kompatibel ist. Für die aktuelle Bereitstellung sind die folgenden Modelle konfiguriert:
Anthropischer Claude 3 Haiku ? : Haiku ist das schnellste Modell von Anthropic und eignet sich hervorragend für schnelle Aufgaben wie Bearbeitungen an Ihrem Dokument. Melden Sie sich hier für ein Anthropic-Konto an.
Feuerwerk Lama 3 70B ? : Llama 3 ist ein SOTA-Open-Source-Modell von Meta, unterstützt von Fireworks AI. Hier können Sie sich für ein Konto anmelden.
OpenAI GPT 4o Mini ? : GPT 4o Mini ist das neueste und kleinste Modell von OpenAI. Hier können Sie sich für einen API-Schlüssel anmelden.
Wenn Sie ein neues Modell hinzufügen möchten, befolgen Sie diese einfachen Schritte:
Ergänzen oder aktualisieren Sie die Modellanbietervariablen in constants.ts
.
Installieren Sie das erforderliche Paket für den Anbieter (z. B. @langchain/anthropic
).
Aktualisieren Sie die Funktion getModelNameAndProviderFromConfig
in src/agent/utils.ts
um Ihren neuen Modellnamen und Anbieter einzuschließen.
Führen Sie einen manuellen Test durch, indem Sie Folgendes überprüfen:
4a. Erzeugen Sie ein neues Artefakt
4b. Generieren Sie eine Folgenachricht (erfolgt automatisch nach der Generierung eines Artefakts)
4c. Aktualisieren Sie ein Artefakt über eine Nachricht im Chat
4d. Aktualisieren Sie ein Artefakt mit einer Schnellaktion
4e. Wiederholen Sie dies für Text/Code (stellen Sie sicher, dass beide funktionieren)
Nachfolgend finden Sie eine Liste der Funktionen, die wir in naher Zukunft zu Open Canvas hinzufügen möchten:
React im Editor rendern : Wenn Open Canvas React-Code (oder HTML-Code) generiert, sollten wir ihn im Idealfall live im Editor rendern können. Edit : Das ist jetzt in der Planungsphase!
Mehrere Assistenten : Benutzer sollten in der Lage sein, mehrere Assistenten zu erstellen, von denen jeder über einen eigenen Speicher verfügt.
Geben Sie Assistenten benutzerdefinierte „Tools“ : Sobald wir RemoteGraph
in LangGraph.js implementiert haben, sollten Benutzer in der Lage sein, Assistenten Zugriff zu gewähren, um ihre eigenen Diagramme als Tools aufzurufen. Dies bedeutet, dass Sie Ihren Assistenten so anpassen können, dass er Zugriff auf aktuelle Ereignisse, Ihren persönlichen Wissensgraphen usw. hat.
Haben Sie eine Funktionsanfrage? Bitte eröffnen Sie ein Problem!
Wir möchten Open Canvas weiterentwickeln und verbessern und brauchen dafür Ihre Hilfe!
Zunächst gibt es eine Handvoll GitHub-Probleme mit Funktionsanfragen, in denen Verbesserungen und Ergänzungen beschrieben werden, um die UX der App noch besser zu machen. Es gibt drei Hauptetiketten:
frontend
: Diese Bezeichnung wird Problemen hinzugefügt, die sich auf die Benutzeroberfläche konzentrieren und keine große oder gar keine Arbeit an den Agenten erfordern.
ai
: Diese Bezeichnung wird Problemen hinzugefügt, die sich auf die Verbesserung des/der LLM-Agent(s) konzentrieren.
fullstack
: Diese Bezeichnung wird Problemen hinzugefügt, die eine Berührung sowohl des Frontend- als auch des Agentencodes erfordern.
Wenn Sie Fragen zum Mitwirken haben, wenden Sie sich bitte per E-Mail an mich: brace(at)langchain(dot)dev
. Bei allgemeinen Fehlern/Problemen mit dem Code öffnen Sie bitte ein Issue auf GitHub.