Nano-Bots: KI-gestützte Bots, die einfach als einzelne Datei geteilt werden können und für die Unterstützung mehrerer Anbieter wie Cohere Command, Google Gemini, Maritaca AI MariTalk, Mistral AI, Ollama, OpenAI ChatGPT und andere konzipiert sind, mit Unterstützung für Anruftools (Funktionen).
Steigern Sie Ihre Produktivität und Ihren Arbeitsablauf, indem Sie die Leistungsfähigkeit der künstlichen Intelligenz in Ihren Code-Editor integrieren!
Installation
Lokale API-Instanz
Aufstellen
Befehle
Prompt
Anwenden
Auswerten
Stoppen
Patronen
Marktplatz
Standard
Verknüpfungen
Vorgeschlagene Standardeinstellungen
Benutzerdefinierte Befehle
Zustand
Datenschutz und Sicherheit: Häufig gestellte Fragen
Werden meine Dateien/Codes/Inhalte geteilt oder auf Dienste Dritter hochgeladen?
Welche Informationen können an Drittanbieter von KI weitergegeben werden?
Wer sind diese Dritten?
Gibt es eine Möglichkeit, die Weitergabe von Informationen zu vermeiden?
Kann ich dies für private oder vertrauliche Inhalte/Code verwenden?
Muss ich dafür bezahlen?
Ist dieses Projekt mit OpenAI verbunden?
Garantie und Haftungsausschluss
Entwicklung
Um Nano Bots für Sublime Text zu installieren, befolgen Sie bitte diese Schritte:
Bevor Sie mit der Installation fortfahren, stellen Sie sicher, dass Sie Package Control installieren.
Öffnen Sie Sublime Text und verwenden Sie dann die Tastenkombination Strg + Umschalt + P, um die Befehlspalette zu öffnen.
Wählen Sie in der Befehlspalette „Paketkontrolle: Paket installieren“.
Suchen Sie nach „Nano Bots“ und drücken Sie die Eingabetaste , um das Paket zu installieren.
Alternativ können Sie das Repository manuell mit dem folgenden Befehl klonen:
Git-Klon https://github.com/icebaker/sublime-nano-bots.git „/home/me/.config/sublime-text/Packages/Nano Bots“
Standardmäßig ist der Zugriff auf die öffentliche Nano Bots API verfügbar. Es stellt jedoch nur eine Standardkassette bereit und kann aufgrund von Geschwindigkeitsbegrenzungen manchmal langsam oder nicht verfügbar sein. Dies ist häufig der Fall, wenn viele Benutzer auf der ganzen Welt die API gleichzeitig intensiv nutzen.
Um die beste Leistung zu erzielen und die Möglichkeit zu haben, Ihre eigenen Module zu entwickeln und zu personalisieren, wird empfohlen, dass Sie Ihre eigenen Provider-Anmeldeinformationen verwenden, um Ihre Instanz der API lokal auszuführen. Dieser Ansatz bietet ein überlegenes und individuelles Erlebnis im Gegensatz zu dem bequemen, aber begrenzten Erlebnis, das die öffentliche API bietet.
Um Ihr Paket mit Ihrer eigenen lokalen Nano Bots-API zu verbinden, starten Sie eine lokale Instanz mit nano-bots-api. Bitte beachten Sie, dass die lokale API immer noch auf externe Anbieter angewiesen ist, die ihre eigenen Richtlinien bezüglich Sicherheit und Datenschutz haben. Wenn Sie sich jedoch für die Verwendung von Ollama mit Open-Source-Modellen entscheiden, können Sie sicherstellen, dass alles lokal bleibt und vollständig privat bleibt.
Sobald Sie Zugriff auf die Nano Bots API haben, können Sie zu „Einstellungen“ -> „Einstellungen“ gehen und die folgende Konfiguration hinzufügen:
{ „NANO_BOTS_API_ADDRESS“: „http://localhost:3048“, „NANO_BOTS_STREAM“: wahr, „NANO_BOTS_END_USER“: „anonym“ // Ihr-Name}
Nach der Installation stehen Ihnen in der Befehlspalette folgende Befehle zur Verfügung:
Nano Bots: Prompt
Nano Bots: Bewerben
Nano Bots: Bewerten
Nano-Bots: Stopp
Der Prompt-Befehl funktioniert wie ein herkömmlicher Chat, sodass Sie eine Frage stellen und eine Antwort vom Nano Bot erhalten können.
Beispiel:
Prompt: write a hello world in Ruby
Nano Bot: puts "Hello, world!"
Der Befehl „Anwenden“ funktioniert bei einer Textauswahl. Sie wählen einen Text aus und bitten den Nano Bot, eine Aktion auszuführen.
Beispiel:
Selected Text: How are you doing?
Prompt: translate to french
Nano Bot: Comment allez-vous ?
Der Befehl „Auswerten“ sendet Ihren aktuell ausgewählten Text ohne weitere Anweisungen an einen Nano Bot.
Beispiel:
Selected Text: Hi!
Nano Bot: Hello! How can I assist you today?
Um eine Streaming-Antwort zu unterbrechen oder das Warten auf eine vollständige Antwort zu beenden, können Sie den Befehl „Stopp“ in der Befehlspalette verwenden. Dies ist nützlich, wenn Sie feststellen, dass die Antwort des Bots nicht Ihren Erwartungen entspricht.
Wenn Sie einen der zuvor genannten Befehle ausführen, werden Sie aufgefordert, eine Patrone auszuwählen. Die Standard-Cartridge ist die Standard-Chat-Interaktion. Sie können jedoch Ihre eigenen Patronen erstellen, die automatisch in der Befehlspalette angezeigt werden.
Weitere Einzelheiten zu Patronen finden Sie in der Nano Bots-Spezifikation. Sie können es hier finden.
Sie können den Nano Bots Marketplace erkunden, um neue Patronen zu entdecken, die Ihnen helfen können.
Sie können die Standard-Cartridge überschreiben, indem Sie eine eigene mit dem Namen default.yml
erstellen:
---meta: symbol: ? Name: Standard Autor: Ihr Name Version: 1.0.0 Lizenz: CC0-1.0 Beschreibung: Ein hilfreicher Assistent. Anbieter: ID: openai Anmeldeinformationen: Adresse: ENV/OPENAI_API_ADDRESS Zugriffstoken: ENV/OPENAI_API_KEY Einstellungen:Benutzer: ENV/NANO_BOTS_END_USERModell: gpt-3.5-turbo
Es gibt keine Standardverknüpfungen, aber Sie können Ihre eigenen hinzufügen, indem Sie zu „Einstellungen“ gehen und „Tastenkombination“ auswählen. Wir empfehlen folgende:
[ {"keys": ["ctrl+b", "ctrl+p"], "command": "nano_bots", "args": { "state": "-", "action": "prompt", "mode ": "hinzufügen" } }, {"keys": ["ctrl+b", "ctrl+l"], "command": "nano_bots", "args": {"state": "-", "action": "apply", "mode ": "replace", "prefix": "","format": "[prompt]: [input]" } }, {"keys": ["ctrl+b", "ctrl+b"], "command": "nano_bots", "args": { "state": "-", "action": "evaluate", "mode ": "ersetzen" } }, {"keys": ["ctrl+b", "ctrl+k"], "command": "nano_bots", "args": { "action": "stop" } } ]
Das Schlüsselwort action
bezieht sich auf die verfügbaren Befehle.
Der mode
bezieht sich darauf, wie die Antwort übermittelt wird, wenn ein Text ausgewählt wird. add
fügt die Antwort nach dem ausgewählten Text hinzu, während replace
ihn durch die Antwort ersetzt.
Wenn add
definiert ist, möchten Sie möglicherweise auch ein prefix
hinzufügen:
{ "keys": ["ctrl+b", "ctrl+l"], „command“: „nano_bots“, „args“: { „state“: „-“, „action“: „apply“, „mode“: „add“, „prefix“: „n“, „format“: „ [prompt]: [input]" } },
Bei Verwendung des Befehls apply
“ ist es möglich, die Eingabeaufforderung anzupassen, indem ein format
-Schlüsselwort eingefügt wird:
Selected Text: How are you doing?
Prompt: translate to french
{ "format": "[prompt]: [input]"}
Erzeugt die Eingabeaufforderung:
translate to french: How are you doing?
Wenn Sie bei der Verwendung dieser Befehle die Aufforderung zur Auswahl einer Patrone lieber überspringen möchten, können Sie die gewünschte Patrone vorher definieren:
{"keys": ["ctrl+b", "ctrl+b"], "command": "nano_bots", "args": { "state": "-", "action": "evaluate", "mode ": "replace", "cartridge": "-" } }
Das -
stellt die Standardkassette dar. Sie können es durch jede andere verfügbare Patrone in Ihrem System ersetzen.
Wenn Sie einen einfachen Befehl definieren möchten, der keine Benutzereingaben oder Überlegungen erfordert, können Sie dies erreichen, indem Sie Folgendes verwenden:
{"keys": ["ctrl+b", "ctrl+p"], "command": "nano_bots", "args": { "state": "-", "action": "prompt", "mode ": "add", "cartridge": "-", "input": "Hallo!" } }
Wenn Sie einen Befehl definieren möchten, der für Ihre aktuelle Auswahl gilt, ohne dass zusätzliche Eingaben erforderlich sind, können Sie Folgendes verwenden:
{"keys": ["ctrl+b", "ctrl+b"], "command": "nano_bots", "args": { "state": "-", "action": "evaluate", "mode ": "replace", "cartridge": "-" } }
{"keys": ["ctrl+b", "ctrl+l"], "command": "nano_bots", "args": { "state": "-", "action": "apply", "mode ": "replace", "cartridge": "-", "input": "translate to en-us" } }
Alle Interaktionen mit Nano Bots sind standardmäßig zustandslos. Wenn Sie jedoch den Verlauf der Interaktionen beibehalten möchten, können Sie einen Statusschlüssel verwenden:
{"keys": ["ctrl+b", "ctrl+p"], "command": "nano_bots", "args": { "state": "0470dfa445f1f11b5eb9b3089c5943c8", "action": "prompt", "mode ": "hinzufügen" } }
Jede Patrone behält ihren eigenen isolierten Zustand bei. Weitere Informationen zur Zustandsverwaltung finden Sie in der Spezifikation.
Auf keinen Fall, es sei denn, Sie ergreifen absichtlich entsprechende Maßnahmen. Die Dateien, an denen Sie arbeiten oder die Sie in Ihrem Editor geöffnet haben, werden ohne Ihr ausdrückliches Eingreifen niemals hochgeladen oder geteilt.
Nur kleine Text-/Codefragmente, die Sie absichtlich teilen möchten. Der Text, den Sie bei Verwendung des Prompt-Befehls eingeben, wird mit der Nano Bots Public API geteilt, die ihn auch mit der OpenAI API teilen muss, ausschließlich um eine Antwort zu generieren. Wenn Sie „Bewerten“ oder „Anwenden“ verwenden, wird der von Ihnen ausgewählte spezifische Text ebenfalls geteilt, um eine Antwort zu erstellen.
Die Daten, die Sie bewusst teilen, werden sicher (HTTPS) an die Nano Bots Public API übertragen. Diese öffentliche API ist Open Source und kann hier geprüft werden. Es verwendet die OpenAI-API für die Datenverarbeitung. Daher werden alle Daten, die Sie freigeben möchten, auch an die OpenAI-API gesendet, die gemäß ihren Richtlinien nicht für das Modelltraining verwendet und nicht über einen Zeitraum von 30 Tagen hinaus gespeichert wird.
Zur Generierung von Ausgaben ist die gemeinsame Nutzung von Datenfragmenten erforderlich. Sie haben die Möglichkeit, Ihre eigene lokale Instanz der Nano Bots API zu verwenden. Durch dieses Setup wird sichergestellt, dass alle Interaktionen lokal auf Ihrem Computer stattfinden und die einzigen gemeinsam genutzten Daten mit Ihrer persönlichen OpenAI-API erfolgen. Alternativ können Sie sich auch dafür entscheiden, OpenAI nicht zu verwenden und stattdessen die lokale Nano Bots API mit Ihrem eigenen lokalen LLM wie FastChat zu verbinden und so eine vollständig lokale und private Interaktion zu ermöglichen.
Für private oder vertrauliche Inhalte/Codes empfehlen wir Ihnen oder Ihrer Organisation, eine gründliche Sicherheits- und Datenschutzbewertung durchzuführen. Auf dieser Grundlage können Sie entscheiden, dass die öffentliche Nano Bots-API und die Datenschutzrichtlinien von OpenAI ausreichend sind, oder Sie können sich dafür entscheiden, Ihr eigenes privates Setup für die API und den LLM-Anbieter zu verwenden.
Nein. Wenn Sie die standardmäßige öffentliche Nano Bots-API verwenden, fallen keine Kosten an, es kann jedoch gelegentlich zu Ratenbegrenzungen oder Stabilitätsproblemen kommen. Wenn Sie sich für die Nutzung Ihres eigenen API- und LLM-Anbieters entscheiden, hängen die damit verbundenen Kosten von dem von Ihnen gewählten Anbieter ab. Für die lokale Nutzung der Nano Bots API mit OpenAI ist beispielsweise ein kostenpflichtiges OpenAI-Plattformkonto erforderlich.
Nein, dies ist ein Open-Source-Projekt ohne formelle Zugehörigkeit zu OpenAI. Es ist auf Kompatibilität mit verschiedenen LLM-Anbietern ausgelegt, wobei OpenAI der Standardanbieter ist. Da es sich bei OpenAI um ein privates Unternehmen handelt, können wir keine Zusicherungen zu deren Dienstleistungen geben und haben keinerlei Verbindungen. Die Nutzung erfolgt auf eigene Gefahr.
Dieses Projekt folgt der MIT-Lizenz. Im Klartext bedeutet es:
Die Software wird so bereitgestellt, wie sie ist. Das heißt, es gibt keine Garantie oder Gewährleistung dafür. Dazu gehört, wie gut es funktioniert (ob es wie erwartet funktioniert), ob es für Ihren Zweck geeignet ist und ob es keinen Schaden anrichtet (keine Rechtsverletzung). Die Personen, die diese Software erstellt haben oder besitzen, können nicht dafür verantwortlich gemacht werden, wenn aufgrund der Software etwas schief geht, unabhängig davon, ob Sie sie verwenden, ändern oder sonst etwas damit tun.
Mit anderen Worten: Wir geben keine Zusicherung oder Verantwortung dafür, was passiert, wenn Sie es verwenden. Daher ist es wichtig, dass Sie es auf eigenes Risiko nutzen und entscheiden, wie sehr Sie ihm vertrauen. Sie sind derjenige, der für die Art und Weise Ihrer Nutzung und die möglichen Folgen ihrer Nutzung verantwortlich ist.
Deinstallieren Sie Ihr aktuelles Nano Bots-Paket.
Klonen Sie das Repository in Packages/Nano Bots
(symbolischer Link funktioniert nicht):
Git-Klon https://github.com/gbaptista/sublime-nano-bots.git „/home/me/.config/sublime-text/Packages/Nano Bots“
Um mit der Entwicklung von Nano Bots für Sublime Text zu beginnen, befolgen Sie diese Schritte:
Installieren Sie die erforderlichen Pakete, indem Sie pip install -r requirements-dev.txt
ausführen.
Überprüfen Sie die Formatierung Ihres Codes, indem Sie pycodestyle *.py
ausführen.
Analysieren Sie Ihren Code mit Pylint, indem Sie pylint *.py
ausführen.