Nano Bots : robots basés sur l'IA qui peuvent être facilement partagés sous forme de fichier unique, conçus pour prendre en charge plusieurs fournisseurs tels que Cohere Command, Google Gemini, Maritaca AI MariTalk, Mistral AI, Ollama, OpenAI ChatGPT et autres, avec prise en charge des outils d'appel. (fonctions).
Améliorez votre productivité et votre flux de travail en apportant la puissance de l'intelligence artificielle à votre éditeur de code !
Installation
Instance d'API locale
Installation
Commandes
Rapide
Appliquer
Évaluer
Arrêt
Cartouches
Marché
Défaut
Raccourcis
Valeurs par défaut suggérées
Commandes personnalisées
État
Confidentialité et sécurité : questions fréquemment posées
Mes fichiers/code/contenu seront-ils partagés ou téléchargés vers des services tiers ?
Quelles informations peuvent être partagées avec des fournisseurs d’IA tiers ?
Qui sont ces tiers ?
Existe-t-il une option pour éviter de partager des informations ?
Puis-je l'utiliser pour du contenu/code privé ou confidentiel ?
Dois-je payer pour l'utiliser ?
Ce projet est-il affilié à OpenAI ?
Garantie et clause de non-responsabilité
Développement
Pour installer Nano Bots pour Sublime Text, veuillez suivre ces étapes :
Avant de procéder à l’installation, assurez-vous d’installer Package Control.
Ouvrez Sublime Text, puis utilisez le raccourci ctrl + shift + p pour ouvrir la palette de commandes.
Choisissez « Contrôle du package : installer le package » dans la palette de commandes.
Recherchez « Nano Bots » et appuyez sur Entrée pour installer le package.
Vous pouvez également cloner manuellement le référentiel à l'aide de la commande suivante :
clone git https://github.com/icebaker/sublime-nano-bots.git "/home/me/.config/sublime-text/Packages/Nano Bots"
Par défaut, l'accès à l'API publique Nano Bots est disponible. Cependant, il ne fournit qu'une cartouche par défaut et peut parfois être lent ou indisponible en raison des limites de débit. Ceci est courant lorsque de nombreux utilisateurs à travers le monde utilisent intensément l’API simultanément.
Pour obtenir les meilleures performances et la possibilité de développer et de personnaliser vos propres cartouches, il est recommandé d'utiliser vos propres informations d'identification de fournisseur pour exécuter votre instance de l'API localement. Cette approche offrira une expérience supérieure et personnalisée, contrairement à l'expérience pratique mais limitée fournie par l'API publique.
Pour connecter votre package à votre propre API Nano Bots locale, démarrez une instance locale à l'aide de nano-bots-api. Veuillez noter que l'API locale s'appuie toujours sur des fournisseurs externes, qui ont leurs propres politiques en matière de sécurité et de confidentialité. Cependant, si vous choisissez d'utiliser Ollama avec des modèles open source, vous pouvez vous assurer que tout reste local et totalement privé.
Une fois que vous avez accès à l'API Nano Bots, vous pouvez aller dans « Préférences » -> « Paramètres » et ajouter la configuration suivante :
{ "NANO_BOTS_API_ADDRESS": "http://localhost:3048", "NANO_BOTS_STREAM" : vrai, "NANO_BOTS_END_USER": "anonyme" // votre nom}
Après l'installation, vous aurez les commandes suivantes disponibles dans la palette de commandes :
Nano Bots : invite
Nanobots : postuler
Nano Bots : évaluer
Nanobots : Arrêtez
La commande Prompt fonctionne comme un chat traditionnel, vous permettant de poser une question et de recevoir une réponse du Nano Bot.
Exemple:
Prompt: write a hello world in Ruby
Nano Bot: puts "Hello, world!"
La commande Appliquer fonctionne sur une sélection de texte. Vous sélectionnez un morceau de texte et demandez au Nano Bot d'effectuer une action.
Exemple:
Selected Text: How are you doing?
Prompt: translate to french
Nano Bot: Comment allez-vous ?
La commande Évaluer envoie votre texte actuellement sélectionné à un Nano Bot sans aucune instruction supplémentaire.
Exemple:
Selected Text: Hi!
Nano Bot: Hello! How can I assist you today?
Pour interrompre une réponse en streaming ou arrêter d'attendre une réponse complète, vous pouvez utiliser la commande "Stop" dans la palette de commandes. Ceci est utile si vous réalisez que la réponse du bot n’est pas celle que vous attendiez de votre demande.
Lors de l'exécution de l'une des commandes mentionnées précédemment, une invite apparaîtra vous demandant de sélectionner une cartouche. La cartouche par défaut est l'interaction de chat standard. Cependant, vous pouvez créer vos propres cartouches qui apparaîtront automatiquement dans la palette de commandes.
Pour plus de détails sur les cartouches, veuillez vous référer à la spécification Nano Bots. Vous pouvez le trouver ici.
Vous pouvez explorer le Nano Bots Marketplace pour découvrir de nouvelles cartouches qui peuvent vous aider.
Vous pouvez remplacer la cartouche par défaut en créant la vôtre avec le nom default.yml
:
---méta : symbole : ? nom : par défaut auteur : Votre nom version : 1.0.0 licence : CC0-1.0 description : Un assistant utile.provider : id : openai informations d'identification : adresse : ENV/OPENAI_API_ADDRESSjeton d'accès : ENV/OPENAI_API_KEY paramètres : utilisateur : ENV/NANO_BOTS_END_USERmodèle : gpt-3.5-turbo
Il n'y a pas de raccourcis par défaut, mais vous pouvez ajouter le vôtre en allant dans « Préférences » et en sélectionnant « Liaison de touches ». Nous recommandons les suivants :
[ {"keys": ["ctrl+b", "ctrl+p"], "command": "nano_bots","args": { "state": "-", "action": "prompt", "mode ": "ajouter" } }, {"keys": ["ctrl+b", "ctrl+l"], "command": "nano_bots","args": {"state": "-", "action": "apply", "mode" ": "remplacer", "prefix": "","format": "[invite] : [entrée]" } }, {"keys": ["ctrl+b", "ctrl+b"], "command": "nano_bots","args": { "state": "-", "action": "évaluer", "mode ": "remplacer" } }, {"keys": ["ctrl+b", "ctrl+k"], "command": "nano_bots","args": { "action": "stop" } } ]
Le mot-clé action
fait référence aux commandes disponibles.
Le mode
fait référence à la manière dont la réponse sera délivrée lorsqu'un texte est sélectionné. add
ajoutera la réponse après le texte sélectionné, tandis que replace
la remplacera par la réponse.
Lorsque add
est défini, vous souhaiterez peut-être également ajouter un prefix
:
{ "touches": ["ctrl+b", "ctrl+l"], "command": "nano_bots", "args": { "state": "-", "action": "apply", "mode": "add", "prefix": "n", "format": " [invite] : [entrée]" } },
Lors de l'utilisation de la commande apply
, il est possible de personnaliser l'invite en incluant un mot-clé format
:
Selected Text: How are you doing?
Prompt: translate to french
{ "format": "[invite] : [entrée]"}
Produira l'invite :
translate to french: How are you doing?
Si vous préférez ignorer l'invite de sélection d'une cartouche lors de l'utilisation de ces commandes, vous pouvez définir au préalable la cartouche souhaitée :
{"keys": ["ctrl+b", "ctrl+b"], "command": "nano_bots","args": { "state": "-", "action": "évaluer", "mode ": "remplacer", "cartouche": "-" } }
Le -
représente la cartouche par défaut. Vous pouvez la remplacer par n'importe quelle autre cartouche disponible dans votre système.
Si vous souhaitez définir une commande simple qui ne nécessite aucune intervention ou considération de l'utilisateur, vous pouvez y parvenir en utilisant :
{"keys": ["ctrl+b", "ctrl+p"], "command": "nano_bots","args": { "state": "-", "action": "prompt", "mode " : "ajouter", "cartouche": "-", "input": "Bonjour!" } }
Si vous souhaitez définir une commande qui s'applique à votre sélection actuelle sans nécessiter aucune saisie supplémentaire, vous pouvez utiliser :
{"keys": ["ctrl+b", "ctrl+b"], "command": "nano_bots","args": { "state": "-", "action": "évaluer", "mode ": "remplacer", "cartouche": "-" } }
{"keys": ["ctrl+b", "ctrl+l"], "command": "nano_bots","args": { "state": "-", "action": "apply", "mode " : "remplacer", "cartouche": "-", "input": "traduire en-nous" } }
Toutes les interactions avec les Nano Bots sont apatrides par défaut. Cependant, si vous souhaitez conserver l'historique des interactions, vous pouvez utiliser une clé d'état :
{"keys": ["ctrl+b", "ctrl+p"], "command": "nano_bots","args": { "state": "0470dfa445f1f11b5eb9b3089c5943c8", "action": "prompt", "mode ": "ajouter" } }
Chaque cartouche conservera son propre état isolé. Veuillez vous référer à la spécification pour plus d'informations sur la gestion de l'état.
Absolument pas, à moins que vous n’agissiez intentionnellement en ce sens. Les fichiers sur lesquels vous travaillez ou que vous avez ouverts dans votre éditeur ne seront jamais téléchargés ou partagés sans votre action explicite.
Uniquement de petits fragments de texte/code que vous prenez intentionnellement des mesures pour partager. Le texte que vous saisissez lors de l'utilisation de la commande Prompt est partagé avec l'API publique Nano Bots, qui doit également le partager avec l'API OpenAI uniquement pour générer une réponse. Si vous utilisez Évaluer ou Appliquer, le texte spécifique que vous sélectionnez sera également partagé pour produire une réponse.
Les données que vous choisissez délibérément de partager seront transmises de manière sécurisée (HTTPS) à l'API publique Nano Bots. Cette API publique est open source et disponible pour audit ici. Il utilise l'API OpenAI pour le traitement des données. En conséquence, toutes les données que vous choisissez de partager seront également envoyées à l'API OpenAI, qui, selon leurs politiques, n'est pas utilisée pour la formation des modèles et n'est pas conservée au-delà d'une période de 30 jours.
Le partage de fragments de données est nécessaire pour générer des résultats. Vous avez la possibilité d'utiliser votre propre instance locale de l'API Nano Bots. Cette configuration garantit que toutes les interactions se produisent localement sur votre machine, les seules données partagées étant avec votre API OpenAI personnelle. Alternativement, vous pouvez décider de ne pas utiliser OpenAI également et de connecter l'API Nano Bots locale à votre propre LLM local, tel que FastChat, permettant une interaction entièrement locale et privée.
Pour le contenu/code privé ou confidentiel, nous vous recommandons, à vous ou à votre organisation, de procéder à une évaluation approfondie de la sécurité et de la confidentialité. Sur cette base, vous pouvez décider que l'API publique de Nano Bots et les politiques de confidentialité d'OpenAI sont suffisantes, ou vous pouvez choisir d'utiliser votre propre configuration privée pour l'API et le fournisseur LLM.
Non. Si vous utilisez l'API publique par défaut de Nano Bots, cela n'entraîne aucun coût, mais vous pourriez rencontrer des problèmes occasionnels de limitation de débit ou de stabilité. Si vous décidez d'utiliser votre propre fournisseur d'API et de LLM, les coûts associés dépendront du fournisseur choisi. Par exemple, l’utilisation locale de l’API Nano Bots avec OpenAI nécessitera un compte payant sur la plateforme OpenAI.
Non, il s'agit d'un projet open source sans affiliation formelle avec OpenAI. Il est conçu pour être compatible avec divers fournisseurs LLM, OpenAI étant celui par défaut. Comme OpenAI est une entreprise privée, nous ne pouvons fournir aucune garantie quant à leurs services et nous n'avons aucune affiliation. Utilisez à vos propres risques.
Ce projet suit la licence MIT. En langage clair, cela signifie :
Le logiciel est fourni tel quel. Cela signifie qu'il n'y a aucune garantie ou garantie pour cela. Cela inclut son bon fonctionnement (s'il fonctionne comme prévu), s'il est adapté à votre objectif et s'il ne nuira à rien (non-contrefaçon). Les personnes qui ont créé ou possèdent ce logiciel ne peuvent être tenues responsables si quelque chose ne va pas à cause du logiciel, que vous l'utilisiez, le modifiiez ou quoi que ce soit d'autre que vous fassiez avec lui.
En d’autres termes, nous n’assumons aucune promesse ni responsabilité quant à ce qui se passe lorsque vous l’utilisez. Il est donc important que vous l'utilisiez à vos propres risques et que vous décidiez à quel point vous lui faites confiance. Vous êtes responsable de la manière dont vous l’utilisez et des conséquences possibles de son utilisation.
Désinstallez votre package Nano Bots actuel.
Clonez le référentiel dans Packages/Nano Bots
(le lien symbolique ne fonctionne pas) :
clone git https://github.com/gbaptista/sublime-nano-bots.git "/home/me/.config/sublime-text/Packages/Nano Bots"
Pour commencer à développer sur Nano Bots pour Sublime Text, suivez ces étapes :
Installez les packages nécessaires en exécutant pip install -r requirements-dev.txt
.
Vérifiez le formatage de votre code en exécutant pycodestyle *.py
.
Analysez votre code à l'aide de pylint en exécutant pylint *.py
.