Utilisez Navamai pour suralimenter votre productivité et votre flux de travail avec une IA personne, rapide et de qualité. Transformez votre terminal en une application AI personnelle configurable, interactive et discrète. Puissance de 15 LLMS et 7 fournisseurs au bout de votre doigt. Associez les flux de travail dans Markdown, VS Code, Obsidian et GitHub. Obtenez rapidement productif avec trois commandes simples.
La commande est tout ce dont vous avez besoin: donc les fans de LLM Science obtiendront le jeu de mots dans notre slogan. C'est une pièce sur le célèbre article qui a introduit le monde à l'architecture du modèle de transformateur - l'attention est tout ce dont vous avez besoin. Avec Navamai, une commande simple via votre terminal ou shell préféré est tout ce dont vous avez besoin pour plier un modèle grand ou petit langage à vos souhaits. Navamai fournit une riche interface utilisateur juste dans votre invite de commande. Pas d'onglets de navigateur à ouvrir, pas d'applications à installer, pas de commutation de contexte ... juste un flux de travail pur, simple et rapide. Essayez-le avec une commande simple comme ask "create a table of planets" et voir votre terminal prendre vie comme une interface utilisateur de chat avec des réponses en streaming rapide, des tables formatées de marque et même des blocs de code avec des reflets de couleur si votre invite nécessite du code en réponse! Navamai a publié 14 commandes pour vous aider à personnaliser votre flux de travail d'IA personnel.
Top Models and Providers: Vous pouvez facilement changer de modèle privé ou de LLM frontalière hébergé. Navamai est livré avec une prise en charge configurable pour plus de 15 modèles de premier plan (GPT 4O, Sonnet 3.5, Gemini 1.5 Pro, Mistral Nemo, Sonar Llama 3.1 ...) de 7 fournisseurs (Olllama, Anthropic, Openai, Groq, Google, Bedrock et perplexité).
Markdown Workflows: Navamai fonctionne avec le contenu Markdown (fichiers texte avec des commandes de formatage simple). Vous pouvez donc l'utiliser avec de nombreux outils populaires tels que VS Code et Obsidian pour concevoir rapidement et de manière transparente un flux de travail personnalisé qui améliore votre métier.
Faites plus avec moins: Navamai est très simple à utiliser hors de la boîte lorsque vous apprenez sa poignée de commandes puissantes. Au fur et à mesure que vous êtes à l'aise, vous pouvez personnaliser les commandes Navamai simplement en modifiant un fichier de configuration et en alignant Navamai en fonction de votre workflow. Tout à Navamai a des défaillances raisonnables pour commencer rapidement.
Faites-vous le vôtre: lorsque vous êtes prêt, tout est configurable et extensible, y compris les commandes, les modèles, les fournisseurs, les invites, les paramètres du modèle, les dossiers et les types de documents. Une autre chose magique se produit lorsque l'interface à votre AI générative est une humble invite de commande. Vous ressentirez un sentiment de contrôle. Pour contrôler votre flux de travail, votre intimité, vos intentions et vos artefacts. Vous contrôlez complètement votre flux de travail d'IA personnel avec Navamai.
Allez dans un dossier où vous souhaitez initialiser Navamai. Il peut s'agir de votre coffre-fort Obsidian ou d'un dossier de projet de code VC ou même d'un dossier vide.
pip install -U navamai # upgrade or install latest NavamAI
navamai init # copies config file, quick start samples
navamai id # identifies active provider and model
ask " How old is the oldest pyramid? " # start prompting the model Vous devrez configurer des touches Model-Provider. Modifiez votre configuration d'environnement ~/.zshrc comme ainsi.
export ANTHROPIC_API_KEY= # https://docs.anthropic.com/en/api/getting-started
export OPENAI_API_KEY= # https://openai.com/index/openai-api/
export GROQ_API_KEY= # https://console.groq.com/keys
export GEMINI_API_KEY= # https://ai.google.dev/gemini-api
export PERPLEXITY_KEY= # https://www.perplexity.ai/settings/api Si vous ne souhaitez utiliser aucun du modèle, tout ce que vous avez à faire est de supprimer les entrées correspondantes de navamai.yml dans le model-mapping et les sections provider-model-mapping . Assurez-vous également que les autres configurations de modèle se réfèrent uniquement aux modèles disponibles.
Pour les modèles locaux, installez Olllama et téléchargez les derniers modèles que vous souhaitez exécuter.
Vous êtes maintenant prêt à tester tous les modèles et fournisseurs.
navamai test ask
navamai test visionSautez cette section si vous avez déjà votre environnement Python.
Tout d'abord, vous devriez exécuter le dernier Python de votre système avec Python Package Manager mis à niveau vers les dernières personnes.
python --version
# should return Python 3.12.x or higher as on Sep'24pyenv Version Manager.Changez d'abord le répertoire dans votre espace de travail VS Code, votre vault Obsidian ou votre dossier où vous souhaitez installer Navamai. Créez ensuite l'environnement virtuel.
python -m venv env Vous pouvez maintenant activer votre environnement virtuel comme ainsi. Vous remarquerez que le répertoire préfixé avec (env) indique que vous exécutez maintenant dans l'environnement virtuel.
. env/bin/activate Pour quitter l'environnement virtuel en utilisant la commande deactivate . Réintégrez en utilisant la même commande que plus tôt.
Vous êtes maintenant prêt à installer Navamai.
* Notez que navamai , ask , image et refer sont quatre commandes de haut niveau à votre disposition lorsque vous installez Navamai.
| Commande | Exemple et description |
|---|---|
| * demander | ask "your prompt"Inviter le LLM pour une réponse rapide et nette (par défaut jusqu'à 300 mots), une réponse à un tour askNavigue dans le dossier des invites configurées, répertorie les modèles d'invite à l'exécution de l'utilisateur. |
| audit | navamai auditAnalysez votre propre utilisation de Navamai au fil du temps avec un tableau de bord de ligne de commande perspicace et un rapport Markdown. |
| configurer | navamai config ask save trueModifier la configuration du fichier navamai.yml à partir de la ligne de commande |
| rassembler | navamai gather "webpage url"Grattez proprement un article d'une page Web, sans les menus, la barre latérale, le pied de page. Comprend des images. Économise en tant que marquage formaté similaire à la source HTML. Reportez-vous au contenu Markdown gratté à l'aide de la commande refer gather .Utilisez la vision sur les images grattées en utilisant la commande navamai vision . |
| * référer | refer text-to-extractParcourez un ensemble de fichiers texte bruts et exécutez des invites personnalisées pour extraire de nouveaux contenus structurés. refer inline-prompts-to-runExécuter les invites intégrées en ligne dans le texte pour développer, modifier et convertir les documents existants. refer intentsDéveloppez un ensemble d'intentions et d'invites dans un modèle d'intention refer your-commandVous pouvez configurer vos propres extensions pour référer la commande en copie simplement et en modifiant l'une des configurations de modèle refer-existing . |
| courir | navamai runParcourez le dossier Code pour les fichiers de marque avec des blocs de code, créez, configurez et exécutez l'application dans une seule commande!Les fichiers de markdown du dossier Code avec des blocs de code sont créés à l'aide de la commande ask en exécutant Create Vite App.md ou similaire. |
| identifiant | navamai idIdentifie le fournisseur et le modèle actuels pour la commande asknavamai id section-nameIdentifie le fournisseur et le modèle défini dans une section spécifique |
| * image | imageSélectionnez un modèle d'invite pour générer une image. image "Prompt for image to generate"Invite à générer une image. |
| init | navamai initInitialiser Navamai dans n'importe quel dossier. Copies navamai.yml Par défaut Config et rapide Intentes et intérêts et fichiers intégrés. Vérifie avant l'écrasement. Utiliser l'option - Force pour forcer les fichiers et les dossiers d'écrasement. |
| intention | navamai intents "Financial Analysis"Choisissez de manière interactive parmi une liste d'intentions dans un modèle pour se référer à des intégres de contenu |
| fusionner | navamai merge "Source File"Recherche Source File updated avec des balises d'espace réservé [merge here] ou comme définie personnalisée dans merge Config, puis fusionne les deux fichiers dans Source File merged . Utilisez avec la commande refer inline-prompts-to-run pour réduire le nombre de jetons traités lors de l'édition de texte long pour le contexte mais à la mise à jour d'une section. |
| diviser | navamai split "Large File"Utilisez cette commande pour diviser un grand fichier en morceaux dans un rapport spécifié du contexte du modèle cible. Vous pouvez configurer le modèle cible et le rapport dans la section split de la configuration. Le fichier d'origine reste intact et de nouveaux fichiers avec le même nom et part # suffix sont créés. |
| test | navamai test askTests Navamai Commande à l'aide de tous les fournisseurs et modèles définis dans navamai.yml Config et fournit un résumé de test.navamai test visionTestez des modèles de vision. |
| tendances | navamai trendsVisualisez les tendances de latence et de la longueur des jetons basées sur navamai test pour les commandes ask et vision entre les modèles et les fournisseurs. Vous pouvez tendance pendant une période de jours en utilisant l'option de commande --days 7 . |
| valider | navamai validate "Financial Analysis"Valide les intégres générées antérieures exécutant un autre modèle et rapporte la différence en pourcentage entre le contenu validé et original. |
| vision | navamai vision -p path/to/image.png "Describe this image"Exécute des modèles de vision sur les images de Path local (-P), URL (-U) ou CAME (-C) et répond en fonction de l'invite. |
En utilisant Navamai avec quelques commandes simples dans votre terminal, vous pouvez créer un gestionnaire de contenu AI personnel simple mais puissant avec votre outil de marque de choix comme l'obsidien ou le code VS. Par exemple, vous pouvez rédiger des articles de blogs partiels, écrire vos idées de semences, commencer par une liste d'intentions et invites, ou capturer des notes partielles d'une conférence où vous avez été légèrement distrait.
Ensuite, vous pouvez utiliser la commande refer en conjonction avec des configurations refer-section personnalisées dans navamai.yml pour étendre ce contenu partiel, incomplet ou de graines dans des publications complètes, des notes, des articles, des modèles invites et même des articles bien documentés. Vous pouvez expérimenter le choix des modèles et des fournisseurs, régler les paramètres du modèle dans la configuration par type de document, définir des dossiers personnalisés pour votre contenu et spécifier des invites système spécifiques au document pour obtenir exactement le résultat que vous désirez en fonction du type de document. Il vous suffit de vous souvenir d'une commande simple refer et vous êtes tous définis.
À titre d'exemple rapide, consultez le dossier Posts avec un échantillon de publication partiellement écrite sur les stratégies de croissance des startups. Affichez maintenant la section de configuration associée dans navamai.yml pour l'expansion des publications.
refer-post-to-update :
lookup-folder : Posts
max-tokens : 4000
model : sonnet
provider : claude
save : true
save-folder : Posts
system : You will be given a partially written blog post on a topic.
Your job as an expert blog writer is to expand the post...
temperature : 0.5 Veuillez noter que pour la concision, nous ne répertorions pas l'invite complète du système ici. Vous pouvez évidemment le changer en fonction de votre flux de travail. Pour l'instant, il suffit d'exécuter refer post-to-update "startup-growth-hacking" dans le dossier de travail où vous avez initialisé Navamai. Bientôt, la réponse du modèle commence à diffuser dans votre terminal. Le message élargi est enregistré dans le dossier Posts avec un préfixe updated afin que vous puissiez comparer avec l'original.
Pour créer un nouveau type de document comme des articles de recherche, des notes de classe, des recettes de cuisine ou autre chose, tout ce que vous avez à faire est de copier et de personnaliser l'une des sections refer-post-to-update ou refer-intents-to-expand en quelque chose comme votre section refer-notes-to-summarize personnalisée. Ensuite, vous pouvez exécuter une commande personnalisée sur votre nouveau type de document comme refer notes-to-summarize "your-notes-file" et obtenir les mêmes résultats.
Lorsqu'il est combiné avec d'autres commandes Navamai, ce flux de travail peut devenir encore plus puissant. À titre d'exemple, commencez par définir votre modèle de document pour un ensemble d'intentions et d'invites comme une simple marque. Par exemple, Financial Analysis ou Product Management est présentée ici. Ajoutez ensuite quelques intentions comme des titres comme, Macro Factors Impact Stocks ou Top Companies by ROCE , etc. Ensuite, ajoutez des invites simples sous ces intentions pour générer du contenu. Vous pouvez désormais utiliser Navamai pour développer l'ensemble des intentions et des invites dans votre modèle de document avec la commande refer intents-to-expand "Financial Analysis" et que le modèle réfléchira à des intentions et des invites plus connexes à utiliser.
Maintenant, exécutez navamai intents-to-expand "Financial Analysis" et choisissez parmi une liste d'intentions à générer en tant que intégres de contenu. La réponse est enregistrée dans le dossier Embeds automatiquement et l'intégration est liée instantanément dans votre modèle de document. Rincer, répéter.
Ce flux de travail peut devenir très utile très rapidement. Comme chaque modèle a lié des intégres, la vue du graphique de l'obsidienne peut être utilisée pour visualiser les liens. Vous pouvez faire preuve de créativité et lier des modèles liés ou même améliorer les intérêts générés avec plus d'intentions. Bien sûr, cela signifie également que vous pouvez utiliser tous les grands plugins d'obsidienne pour générer des sites Web, des PDF, etc. Votre créativité + Obsidian + Navamai = Magic!
Navamai est livré avec une prise en charge configurable pour plus de 15 modèles de premier plan de cinq fournisseurs (Olllama, Anthropic, Openai, Groq, Google). La commande navamai test peut être utilisée pour exécuter chacune des commandes Navamai sur toutes les combinaisons de fournisseurs et de modèles et de répondre avec un résumé des résultats de test et d'évaluation du modèle. Utilisez-le pour comparer rapidement les modèles et les fournisseurs ainsi que lorsque vous ajoutez ou supprimez un nouveau modèle ou un nouveau fournisseur dans la configuration.
Cette commande est super utile lors de la comparaison du temps de réponse du modèle (latence), de la qualité de la réponse (suit-il le système et les instructions rapides), la précision de la réponse et la longueur de jeton (coût) pour la même invite. Vous pouvez configurer les invites de test dans navamai.yml dans la section test .
Voici un exemple de commande de la commande navamai test vision et de résumé du test qui en résulte. Je cette invite et image par défaut, nous partageons l'image d'environ 150 à 160 personnes debout à proximité en cercle et demandant au modèle de compter le nombre de personnes. Le bon numéro se situe entre 150 et 160. Cela peut être utilisé pour calculer la précision relative de chaque modèle en fonction de la réponse. La façon dont la réponse suit l'invite du système et l'invite de l'utilisateur indique la qualité de la réponse.
Vous pouvez également remarquer que les temps de réponse semblent proportionnels à la taille du modèle. Pour Claude, opus> Sonnet> haiku. Pour les Gémeaux, pro> flash. Pour Openai, GPT-4O> GPT-4-MINI.
Vous pouvez également exécuter navamai test ask Command de tester tous les modèles et fournisseurs. Dans cette course, vous pouvez trouver que Groq est parmi les fournisseurs les plus rapides en ce qui concerne le temps de réponse.
Bien sûr, vous avez peut-être besoin de plusieurs essais pour obtenir une meilleure intuition des temps de réponse, car il existe plusieurs facteurs qui affectent la latence autre que la taille ou l'architecture du modèle, comme la latence du réseau, qui peut changer entre plusieurs essais.
Chaque navamai test Command Run enregistre les données de résumé de test dans le dossier Metrics par horodatage et modèle de fournisseur. Au fil du temps, vous pouvez visualiser les tendances de la latence et des métriques du nombre de jetons pour voir si les modèles fonctionnent de manière cohérente. Exécutez la commande navamai trends pour afficher les tendances pendant 7 jours (par défaut).
La visualisation utilise des lignes d'éclat pour afficher les tendances des données au fil du temps. Utilisez-le pour décider quand / si pour changer de modèle en fonction des tendances de performances.
Vous voulez comparer plusieurs modèles côte à côte? Tout ce que vous avez à faire est d'ouvrir plusieurs coquilles ou des instances de terminal. Maintenant, dans chacun de ceux-ci, un par un, modifiez le modèle, exécutez le même ask "prompt" et comparez les résultats côte à côte. Simple!
Au fur et à mesure que les commandes Navamai utilisent la configuration navamai.yml dans le dossier actuel à chaque fois qu'ils s'exécutent, vous pouvez créer des workflows en cours d'exécution, multimodel et transversal plus complexes en copie simplement le fichier de configuration en plusieurs dossiers et des commandes en cours d'exécution. De cette façon, vous pouvez exécuter des tâches de longue date sur un modèle local dans un dossier et un terminal. Pendant que vous faites votre flux de travail quotidien dans un autre. Et ainsi de suite.
Il n'y a pas de marketing comportemental ou de piratage de croissance qu'une entreprise peut faire dans votre invite de commande. Vous guidez votre flux de travail comme vous vous sentez en forme. Exécutez le fournisseur de modèles le plus rapide (GROQ avec LLAMA 3.1), ou le modèle le plus capable en ce moment (Sonnet 3.5 ou GPT-4O), ou le dernier petit modèle de votre ordinateur portable (Mistral Nemo), ou le modèle avec le plus grand contexte (Gemini 1.5 Flash), vous décidez. Exécutez avec un WiFi rapide ou sans WiFi (en utilisant des modèles locaux), pas de contraintes. Recherchez instantanément, recherche, Q&R pour apprendre quelque chose ou générer un ensemble d'artefacts à économiser plus tard. Le passage à l'un de ces workflows est quelques modifications dans un fichier de configuration ou quelques commandes faciles à retenir sur votre terminal.
Vous pouvez également configurer les noms de modèle personnalisés dans le mappage réel de la version du modèle pour simplifier les commandes de commutation de modèle. Avec le mappage suivant, les commandes pour changer les modèles sont navamai config ask model llama ou navamai config intents model haiku et ainsi de suite.
model-mapping :
# Claude models
sonnet : claude-3-5-sonnet-20240620
opus : claude-3-opus-20240229
haiku : claude-3-haiku-20240307
# Ollama models
llama : llama3.1
gemma : gemma2
mistral : mistral-nemo
# Groq models
groq-mixtral : mixtral-8x7b-32768
groq-llama : llama2-70b-4096
# OpenAI models
gpt4mini : gpt-4o-mini
gpt4o : gpt-4o
# Gemini models
gemini-pro : gemini-1.5-pro
gemini-flash : gemini-1.5-flash Vous décidez quel modèle et fournisseur en qui vous avez confiance, ou même choisissez d'exécuter un LLM localement sur votre ordinateur portable. Vous contrôlez la privé de vos données et préférences privées. Navamai prend en charge les modèles de pointe d'Anthropic, Openai, Google et Meta. Vous pouvez choisir un fournisseur hébergé ou Olllama comme fournisseur de modèles local sur votre ordinateur portable. Communiquez entre les modèles et les fournisseurs à l'aide d'une commande simple comme navamai config ask model llama pour passer du modèle actuel.
Vous pouvez également charger des ensembles de configuration de modèle personnalisés mappés sur chaque commande. Configurez-les dans le fichier navamai.yml . Voici un exemple de contrainte comment navamai ask et navamai intents Les commandes se comportent différemment à l'aide de fournisseurs de modèles locaux et hébergés.
ask :
provider : ollama
model : mistral
max-tokens : 300
save : false
system : Be crisp in your response. Only respond to the prompt
using valid markdown syntax. Do not explain your response.
temperature : 0.3
intents :
provider : claude
model : sonnet
max-tokens : 1000
save : true
folder : Embeds
system : Only respond to the prompt using valid markdown syntax.
When responding with markdown headings start at level 2.
Do not explain your response.
temperature : 0.0 Navamai enregistre une trace des commandes, des invites, des modèles, des dossiers de recherche et des fichiers enregistrés dans le fichier trail.yml . Vous pouvez visualiser cela à chaque fois en utilisant la commande navamai audit pour obtenir des informations sur votre utilisation Navamai au fil du temps.
Vos intensités sont des tâches que vous souhaitez exécuter, des objectifs que vous souhaitez atteindre, des plans que vous souhaitez réaliser, des décisions que vous souhaitez prendre ou des questions auxquelles vous souhaitez répondre. Vous contrôlez toute votre expérience Navamai avec vos intentions. Vous pouvez enregistrer vos intentions de tâches simples dans un fichier texte. Vous pouvez les rappeler quand vous en avez besoin. Vous pouvez exécuter des modèles sur vos intentions telles que vous vous sentez en forme. Vous pouvez enregistrer des résultats en fonction de vos intentions.
Vous pouvez vérifier le contenu généré par un LLM avec validation à partir d'un autre modèle. Assurez-vous d'exécuter la commande valide qu'après avoir exécuté la commande refer intents pour générer la première passe d'embeds. Utilisez navamai validate "Financial Analysis" ou tout modèle d'intention que vous avez créé. Le flux de travail pour la validation est similaire à l'élargissement des intentions. Ce n'est que dans ce cas que la configuration du modèle Validate décide quel modèle et fournisseur à utiliser. Vous pouvez également modifier l'invite de validation pour vérifier les choses spécifiques pertinentes pour votre cas d'utilisation. Le DIFF est calculé sur le texte original et validé en supprimant les nouvelles lignes, l'espace blanc ou le formatage de marque lors de la comparaison du DIFF en utilisant une notation de similitude. Utilisez-le pour automatiser la validation de la qualité du contenu généré.