Add ollama-copilot-mode to switch to local LLM for copilot
This commit is contained in:
parent
c140740a32
commit
f8c3f76cbd
@ -47,4 +47,40 @@
|
|||||||
:command comfy-ui-command
|
:command comfy-ui-command
|
||||||
:filter #'comfy-ui-process-filter))))
|
:filter #'comfy-ui-process-filter))))
|
||||||
|
|
||||||
|
(defvar ollama-copilot-proxy-port 11435
|
||||||
|
"Port for the Ollama Copilot proxy server.")
|
||||||
|
|
||||||
|
(defvar ollama-copilot-model "codellama:code"
|
||||||
|
"Model for the Ollama Copilot proxy server.")
|
||||||
|
|
||||||
|
(defun ollama-copilot-ensure ()
|
||||||
|
"Start the Ollama Copilot proxy server if it's not already running."
|
||||||
|
(let ((proc-name "ollama-copilot"))
|
||||||
|
(unless (get-process proc-name)
|
||||||
|
(unless (executable-find "ollama-copilot")
|
||||||
|
(user-error "Could not find ollama-copilot executable!"))
|
||||||
|
(make-process :name proc-name
|
||||||
|
:buffer (format "*%s*" proc-name)
|
||||||
|
:command `("ollama-copilot"
|
||||||
|
"-proxy-port" ,(format ":%s" ollama-copilot-proxy-port)
|
||||||
|
"-model" ,ollama-copilot-model)))))
|
||||||
|
|
||||||
|
(defvar ollama-copilot--proxy-cache nil
|
||||||
|
"Internal variable to cache the old proxy value.")
|
||||||
|
|
||||||
|
(define-minor-mode ollama-copilot-mode
|
||||||
|
"Minor mode to use ollama-copilot as a local Copilot proxy."
|
||||||
|
:global t
|
||||||
|
(require 'copilot)
|
||||||
|
(if ollama-copilot-mode
|
||||||
|
(progn
|
||||||
|
(ollama-copilot-ensure)
|
||||||
|
(setq ollama-copilot--proxy-cache copilot-network-proxy)
|
||||||
|
(setq copilot-network-proxy `(:host "127.0.0.1"
|
||||||
|
:port ,ollama-copilot-proxy-port
|
||||||
|
:rejectUnauthorized :json-false))
|
||||||
|
(copilot-diagnose))
|
||||||
|
(setq copilot-network-proxy ollama-copilot--proxy-cache)
|
||||||
|
(copilot-diagnose)))
|
||||||
|
|
||||||
(provide 'init-ai)
|
(provide 'init-ai)
|
||||||
|
Loading…
Reference in New Issue
Block a user