From ed5f25fb4d3ed775ba51de1e251c3d51486dd55f Mon Sep 17 00:00:00 2001 From: kj Date: Mon, 28 Apr 2025 18:58:34 -0300 Subject: [PATCH] Move gptel to his own ia init file. --- configs/init-ai.el | 46 ++++++++++++++++++++++++++++++++++++++++ configs/init-packages.el | 32 ++-------------------------- init.el | 1 + 3 files changed, 49 insertions(+), 30 deletions(-) create mode 100644 configs/init-ai.el diff --git a/configs/init-ai.el b/configs/init-ai.el new file mode 100644 index 0000000..a68e743 --- /dev/null +++ b/configs/init-ai.el @@ -0,0 +1,46 @@ +;;; init-ai.el --- Configuración de inteligencias artificales -*- lexical-binding: t -*- + +;; Author: kj +;; URL: https://git.kj2.me/kj/confi-emacs-actual + +;;; Commentary: + +;; Esta configuración para Inteligencia artifical en emacs, principalmente para el uso de chats. + +;;; Code: + +;; Cliente LLM (ollama, chatgpt, gemini, etc.) +(use-package gptel + :defer t + :config + ;; (setq gptel-model 'gemma3:4b + ;; gptel-backend (gptel-make-ollama "Ollama" + ;; :host "localhost:11434" + ;; :stream t + ;; :models '("mistral:latest" + ;; "deepseek-r1:1.5b" + ;; "deepcoder" + ;; "dolphin-llama3:latest" + ;; "gemma3:4b" + ;; "llava:latest")) + gptel-default-mode 'org-mode + gptel-prompt-prefix-alist + '((markdown-mode . "# ") + (org-mode . "* ") + (text-mode . "# ")) + gptel-directives + '((default . "Eres un LLM que vive dentro de Emacs. Responde de manera concisa.") + (programming . "Eres un LLM y un programador profesional cuidadoso. Provee el código y solo el código como output sin ningún texto adicional, prompt o nota.") + (programming_tutor . "Eres un LLM y un programador profesional cuidadoso. Revisa el siguiente código y realiza sugerencias concisas en español para mejorarlo.") + (programming_explainer . "Eres un LLM y un programador profesional cuidadoso. Revisa el siguiente código y explica en español de manera concisa, su funcionamiento.") + (programming_describer . "Eres un LLM y un programador profesional cuidadoso. Revisa el siguiente código y explica en español su funcionamiento línea a línea.") + (writing . "Eres un LLM y un asistente de escritura. Responde de manera concisa.") + (grammarly . "You are a large language model and professional philologist. Improve grammar and spelling.") + (chat . "Eres un LLM y un compañero de conversación. Responde de manera concisa.") + (traductor . "Eres un traductor profesional. Traduce a español tomando en cuenta los posibles tecnicismos y nombres que no deberían traducirse.") + ) + ) + ) + +(provide 'init-ai) +;;; init-ai.el ends here diff --git a/configs/init-packages.el b/configs/init-packages.el index 6a8bac7..411301e 100644 --- a/configs/init-packages.el +++ b/configs/init-packages.el @@ -67,8 +67,8 @@ (setq dashboard-startup-banner (expand-file-name "duck.svg" user-emacs-directory)) (setq dashboard-items '( - (recents . 10) - ;; (agenda . 10) + ;; (recents . 10) + (agenda . 10) )) ) @@ -137,34 +137,6 @@ (elpaca-after-init . exec-path-from-shell-initialize) :defer t) -;; Cliente LLM (ollama, chatgpt, gemini, etc.) -(use-package gptel - :defer t - :config - (setq gptel-model "gemma2" - gptel-backend (gptel-make-ollama "Ollama" - :host "localhost:11434" - :stream t - :models '("mistral:latest" "dolphin-llama3:latest" "gemma2" "llava:latest")) - gptel-default-mode 'org-mode - gptel-prompt-prefix-alist - '((markdown-mode . "# ") - (org-mode . "* ") - (text-mode . "# ")) - gptel-directives - '((default . "Eres un LLM que vive dentro de Emacs. Responde de manera concisa.") - (programming . "Eres un LLM y un programador profesional cuidadoso. Provee el código y solo el código como output sin ningún texto adicional, prompt o nota.") - (programming_tutor . "Eres un LLM y un programador profesional cuidadoso. Revisa el siguiente código y realiza sugerencias concisas en español para mejorarlo.") - (programming_explainer . "Eres un LLM y un programador profesional cuidadoso. Revisa el siguiente código y explica en español de manera concisa, su funcionamiento.") - (programming_describer . "Eres un LLM y un programador profesional cuidadoso. Revisa el siguiente código y explica en español su funcionamiento línea a línea.") - (writing . "Eres un LLM y un asistente de escritura. Responde de manera concisa.") - (grammarly . "You are a large language model and professional philologist. Improve grammar and spelling.") - (chat . "Eres un LLM y un compañero de conversación. Responde de manera concisa.") - (traductor . "Eres un traductor de libros de informática profesional. Traduce a español tomando en cuenta los posibles tecnicismos que no deberían traducirse.") - ) - ) - ) - ;; Resalta los escapes de secuencia (use-package highlight-escape-sequences :defer t diff --git a/init.el b/init.el index c17ac22..fda6d33 100644 --- a/init.el +++ b/init.el @@ -18,6 +18,7 @@ (require 'init-theme) (require 'init-packages) (require 'init-functions) +(require 'init-ai) (require 'init-vc) (require 'init-org) (require 'init-eglot)