Alternative Jupyter moderne et open source.
Essayez-le ici »
Discord · Site Web · Problèmes · Contact
Pretzel est un fork de Jupyter dont le but est d'améliorer les capacités de Jupyter. Nous avons ajouté la génération et l'édition de code AI, la complétion des onglets en ligne, le chat dans la barre latérale et la correction des erreurs à Jupyter pour le moment et bien d'autres à venir.
Passer à Bretzel depuis Jupyter est extrêmement simple puisqu'il s'agit simplement d'une version améliorée de Jupyter . Toutes vos configurations, paramètres, raccourcis clavier et extensions Jupyter fonctionneront immédiatement.
pip install pretzelai
puis exécutez pretzel lab
pour ouvrir l'interface web. OU, utilisez notre version hébergée gratuite : bretzelai.app@
pour déclencher la saisie semi-automatique avec les noms de fonctions et de variables.Notre feuille de route comprend des fonctionnalités de construction telles que :
Installer Bretzel avec pip
pip install pretzelai
Pour conda, installez d'abord pip avec conda install pip
puis pip install pretzelai
.
Ensuite, démarrez Pretzel avec :
pretzel lab
Vous pourrez accéder à l'interface Bretzel via l'URL fournie.
Pour utiliser votre propre modèle d'IA, consultez la section Configuration.
Si vous rencontrez des difficultés pour installer Pretzel (par exemple sous Windows), vous pouvez l'exécuter dans un conteneur Docker.
FROM python:3.9-slim
RUN apt-get update && apt-get install -y
build-essential
gcc
&& rm -rf /var/lib/apt/lists/*
WORKDIR /root/pretzel
RUN pip install pretzelai
EXPOSE 8888
CMD [ "pretzel" , "lab" , "--ip=0.0.0.0" , "--allow-root" , "--notebook-dir=/root/pretzel" , "--ServerApp.allow_remote_access=True" , "--ServerApp.token=''" , "--no-browser" ]
Dans le même dossier où se trouve votre Dockerfile, exécutez docker build -t pretzel .
Pour exécuter bretzel, vous pouvez exécuter : docker run --name pretzel -p 8888:8888 pretzel
et une fois le conteneur exécuté, vous pouvez y accéder à http://localhost:8888/lab
. Pour arrêter le conteneur, appuyez sur Ctrl + C
suivi de docker stop pretzel
.
Si vous souhaitez accéder à votre dossier local dans Pretzel, vous pouvez exécuter : docker run --rm -p 8888:8888 -v $(pwd):/root/pretzel pretzel
- cela mappera votre répertoire actuel au /root/pretzel
du conteneur Docker /root/pretzel
. Assurez-vous que Docker a accès à votre répertoire actuel.
Pour mettre à jour Pretzel vers la dernière version, reconstruisez simplement l'image Docker avec l'indicateur --no-cache : docker build --no-cache -t pretzel .
et maintenant vous pouvez exécuter Docker comme à l'étape 3.
Vous pouvez utiliser ce Dockerfile pour créer et exécuter la version de pointe. Suivez les étapes (en commençant à l'étape 2) dans la section Exécution dans un conteneur Docker
Si vous obtenez une erreur lors de l'installation qui ressemble à ceci :
Failed to build installable wheels for some pyproject.toml based projects (pystemmer)
Cela signifie que l'installation n'a pas réussi à installer la dépendance PyStemmer
. Cela se produit généralement parce que vous n’avez pas installé les bons outils de construction. Pour résoudre ce problème :
sudo apt-get update && sudo apt-get install build-essential python3-dev
brew install gcc
. Si cela ne fonctionne pas, vous devrez peut-être également exécuter xcode-select --install
Une fois cela fait, vous devriez pouvoir pip install pretzelai
pour installer Pretzel.
Le serveur Pretzel AI par défaut utilise le Codestral de Mistral, mais vous pouvez changer le modèle d'achèvement en ligne dans les paramètres Pretzel AI. Voir la section configuration.
Cmd+K
(Mac) / Ctrl+K
(Windows/Linux) ou cliquez sur « Demander à AI » pour ouvrir la zone de texte d'invite AI et écrire vos instructions de génération/édition de code.@
pour obtenir une liste déroulante des variables disponibles dans votre session. L'ajout de cette @vairable
à l'invite enverra sa valeur à l'IACtrl+Cmd+B
(Mac) / Ctrl+Alt+B
(Linux/Windows) ou l'icône Bretzel dans la barre latérale droite pour activer la barre latérale AI.@
pour faire référence aux variables et aux trames de données en mémoire, de la même manière que les cellules du bloc-notes.Exemples d'utilisation de la barre latérale AI :
my_function
pour être plus efficace" ← cela permettra de trouver la fonction my_function
dans tout le notebook et de la modifiersales_data
inject
ou ij
(insensible à la casse) - cela indique à l'IA d'ajouter uniquement du nouveau code et de ne pas modifier le code existant dans la cellule.Bretzel fonctionne immédiatement, aucune configuration n'est nécessaire. Nous NE stockons AUCUN code ou donnée que vous envoyez au serveur Pretzel AI.
Néanmoins, si vous souhaitez utiliser un modèle d'IA différent, vous pouvez configurer Pretzel pour qu'il utilise des modèles d'IA de plusieurs fournisseurs différents, y compris des modèles locaux. Dans ce cas, la requête IA va directement de votre ordinateur vers le service IA (OpenAI, Anthropic etc).
Settings
dans la barre de menu supérieure, puis cliquez sur Pretzel AI Settings
Sous la section Configurer les services AI , vous pouvez
N'oubliez pas de sauvegarder vos paramètres après avoir apporté des modifications. Pretzel validera votre configuration pour s'assurer que tout est correctement configuré.
Remarque : nous n’avons pas encore testé les modèles Azure Enterprise OpenAI . Si vous trouvez des bugs, veuillez les signaler dans les problèmes GitHub et nous les corrigerons dès que possible.
La documentation Jupyter originale est disponible ici et le README Jupyterlab est disponible ici.
Nous ne collectons aucune information personnelle. Nous utilisons la télémétrie de base uniquement pour les fonctionnalités d'IA que nous avons créées - par exemple, lorsque vous cliquez sur "Ask AI", nous recevons un événement indiquant que quelqu'un a cliqué sur "Ask AI". Nous associons uniquement un identifiant anonyme à votre utilisateur. Si vous autorisez les cookies, cela nous aide à savoir qu'il s'agit du même utilisateur sur plusieurs sessions de navigateur (ce qui est très utile !). Si vous n'autorisez pas les cookies, chaque fois que vous ouvrez un navigateur, vous êtes un nouvel utilisateur anonyme pour nous.
Nous collectons également des invites ( mais pas les réponses ) pour les fonctionnalités d'IA que nous avons créées. Cela peut être désactivé dans les paramètres (Paramètres > Bretzel AI > Décocher la télémétrie des invites), mais nous apprécierions vraiment que vous ne le fassiez pas - cela est très utile pour améliorer nos invites.
Nous ne collectons aucun code. Même lorsque vous utilisez le serveur cloud AI de Pretzel pour les complétions, nous ne stockons aucun code.
Si vous utilisez la version hébergée de Pretzel (https://pretzelai.app), nous créons un utilisateur pour vous en fonction de votre adresse e-mail. Vous pouvez toujours simplement vous connecter et supprimer toutes les données que vous avez pu stocker sur notre serveur hébergé. Nous ne faisons aucune sauvegarde ni copie de vos données.
Notre serveur hébergé est gratuit. Cependant, nous supprimerons vos données et votre compte 30 jours après votre dernière connexion. Si vous souhaitez supprimer votre compte plus tôt, veuillez nous envoyer un e-mail à [email protected] avec pour objet « Suppression de compte » et nous supprimerons votre compte immédiatement.
Q. Qu'est-il arrivé à l'ancienne version de Pretzel AI, l'outil visuel de manipulation de données intégré au navigateur ?
R. Il est disponible dans le dossier pretzelai_visual
ici. Veuillez consulter ce PR pour plus d'informations.
Q. Quel modèle d'IA Pretzel utilise-t-il ?
A. Pretzel utilise différents modèles d'IA pour diverses tâches :
Modèle par défaut : GPT-4o
Complétions en ligne : le modèle Codestral de Mistral
Option de secours :
Nous continuons à expérimenter avec des modèles et à soutenir des modèles locaux et Claude d'Anthropic est en tête de notre liste.
Q. Qu'en est-il de la fonctionnalité X ?
A. Il y en a une tonne que nous voulons construire. Veuillez ouvrir un problème et dites-nous ce que vous voulez que nous construisions !
Q. Où est la feuille de route ?
R. Nous avons une feuille de route approximative en haut de ce README. Nous aimerions créer de nombreuses fonctionnalités, mais nous ne sommes que deux. Nous recueillons donc des commentaires sur ce qui serait le plus utile. Veuillez ouvrir un problème ou envoyez-nous simplement un e-mail avec vos commentaires ! En fonction de ce que nous trouvons, nous établirons la priorité de notre feuille de route.
Q. Pourquoi utilisez-vous la licence AGPL ? Ou pourquoi ne pas utiliser les licences MIT/BSD3 ?
R. Notre objectif en créant Pretzel est de créer un outil de données incroyable, gratuit pour les particuliers et les entreprises. Cela dit, nous sommes une startup composée de deux personnes - et nous ne voulons pas qu'un tiers se contente de prendre notre code et d'en vendre une version hébergée sans redonner à la communauté. Le code Jupyter est sous licence BSD-3 et si nous gardons notre nouveau code sous licence BSD-3, il n'y aurait aucun moyen d'empêcher un tiers de le faire. En conséquence, nous avons opté pour la licence AGPLv3 pour tout le nouveau code. Cela garantit que si quelqu'un d'autre souhaite prendre notre code et le vendre (SaaS ou autre), il doit également ouvrir toutes ses modifications sous AGPLv3.
Q. Pourquoi un fork de Jupyter ? Pourquoi ne pas contribuer directement à Jupyter ?
R. Cela mérite une réponse plus longue, mais voici la réponse courte : nous avons décidé de créer le nouvel outil de données de facto, moderne et open source. Au départ, nous voulions repartir de zéro. Cependant, après avoir discuté avec plusieurs professionnels des données, nous avons réalisé qu’il serait très difficile de convaincre les gens de passer à un nouvel outil, aussi performant soit-il. La meilleure façon d’inciter les gens à changer est de ne pas les faire changer du tout. C'est pourquoi nous avons décidé d'adopter Jupyter – pour des coûts de commutation quasi nuls. De plus, Jupyter est un produit mature et nous expédions les fonctionnalités très rapidement - franchement, au rythme où nous expédions les fonctionnalités, le code que nous écrivons ne sera pas accepté dans la base de code Jupyter ?. Cette décision présente également de nombreux inconvénients : nous avons dû passer beaucoup de temps à comprendre l'ensemble de l'écosystème Jupyter et les multiples bases de code, les processus de publication complexes, les différentes API, etc. Cependant, nous pensons que c'est la bonne décision pour nous.
Q. Mon entreprise s'inquiète de l'utilisation d'un outil sous licence AGPLv3. Que puis-je faire ?
R. L'AGPL est une barrière SEULEMENT SI vous modifiez Bretzel ET le redistribuez au public. Si vous l'utilisez simplement comme outil dans votre entreprise (même avec des modifications), l'AGPL NE vous demande PAS de partager votre code. Néanmoins, si AGPL est un problème pour vous, veuillez nous contacter et nous pourrons trouver quelque chose qui fonctionne.
Q. Comment comptez-vous gagner de l’argent ? OU, comment es-tu libre ? Je crains que vous rendiez cet outil payant à l'avenir.
R. Nous prévoyons de vendre une version hébergée de l'outil aux entreprises pour gagner de l'argent. Cette version hébergée comportera probablement certaines fonctionnalités spécifiques à l'entreprise dont les individus ne veulent pas ou n'ont pas besoin, telles que les contrôles d'accès aux données, les connecteurs pour les sources de données, l'intégration avec GitHub, le tableau de bord hébergé et partageable, le calcul évolutif et à la demande pour les tâches de données volumineuses, etc. Nous ne rendrons pas rétroactivement payante la version individuelle de Pretzel.