PSF: Stabilizing workspace after crash. Valid kernel/skill fixes.
This commit is contained in:
@@ -0,0 +1,20 @@
|
||||
(defun get-embedding (text &key (provider :ollama))
|
||||
"Retrieves the embedding vector for TEXT using specified PROVIDER."
|
||||
(kernel-log "NEURO [Embedding] - Generating via ~a..." provider)
|
||||
(case provider
|
||||
(:ollama (get-embedding-ollama text))
|
||||
(:gemini (get-embedding-gemini text))
|
||||
(t (error "Unsupported embedding provider: ~a" provider))))
|
||||
|
||||
(defun get-embedding-ollama (text)
|
||||
(let* ((url "http://localhost:11434/api/embeddings")
|
||||
(payload (cl-json:encode-json-to-string `(("model" . "mxbai-embed-large") ("prompt" . ,text))))
|
||||
(response (dex:post url :content payload :headers '(("Content-Type" . "application/json")))))
|
||||
(cdr (assoc :embedding (cl-json:decode-json-from-string response)))))
|
||||
|
||||
(defun get-embedding-gemini (text)
|
||||
(let* ((api-key (getf (org-agent:get-credentials :gemini) :api-key))
|
||||
(url (format nil "https://generativelanguage.googleapis.com/v1beta/models/embedding-001:embedContent?key=~a" api-key))
|
||||
(payload (cl-json:encode-json-to-string `(("content" . (("parts" . ((("text" . ,text))))))))))
|
||||
(let ((response (dex:post url :content payload :headers '(("Content-Type" . "application/json")))))
|
||||
(cdr (assoc :values (cdr (assoc :embedding (cl-json:decode-json-from-string response))))))))
|
||||
Reference in New Issue
Block a user