Skip to content

Commit

Permalink
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
feat: Added Deepseek AI integration
Browse files Browse the repository at this point in the history
wmahfoudh committed Jan 23, 2025
1 parent 289f99f commit 075c4f6
Showing 3 changed files with 21 additions and 1 deletion.
3 changes: 2 additions & 1 deletion core/plugin_registry.go
Original file line number Diff line number Diff line change
@@ -22,6 +22,7 @@ import (
"github.com/danielmiessler/fabric/plugins/ai/openai"
"github.com/danielmiessler/fabric/plugins/ai/openrouter"
"github.com/danielmiessler/fabric/plugins/ai/siliconcloud"
"github.com/danielmiessler/fabric/plugins/ai/deepseek"
"github.com/danielmiessler/fabric/plugins/db/fsdb"
"github.com/danielmiessler/fabric/plugins/template"
"github.com/danielmiessler/fabric/plugins/tools"
@@ -53,7 +54,7 @@ func NewPluginRegistry(db *fsdb.Db) (ret *PluginRegistry, err error) {
gemini.NewClient(),
//gemini_openai.NewClient(),
anthropic.NewClient(), siliconcloud.NewClient(),
openrouter.NewClient(), mistral.NewClient())
openrouter.NewClient(), mistral.NewClient(), deepseek.NewClient())
_ = ret.Configure()

return
15 changes: 15 additions & 0 deletions plugins/ai/deepseek/deepseek.go
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
package deepseek

import (
"github.com/danielmiessler/fabric/plugins/ai/openai"
)

func NewClient() (ret *Client) {
ret = &Client{}
ret.Client = openai.NewClientCompatible("DeepSeek", "https://api.deepseek.com", nil)
return
}

type Client struct {
*openai.Client
}
4 changes: 4 additions & 0 deletions restapi/configuration.go
Original file line number Diff line number Diff line change
@@ -44,6 +44,7 @@ func (h *ConfigHandler) GetConfig(c *gin.Context) {
"ollama": "",
"openrouter": "",
"silicon": "",
"deepseek": "",
})
return
}
@@ -63,6 +64,7 @@ func (h *ConfigHandler) GetConfig(c *gin.Context) {
"ollama": os.Getenv("OLLAMA_URL"),
"openrouter": os.Getenv("OPENROUTER_API_KEY"),
"silicon": os.Getenv("SILICON_API_KEY"),
"deepseek": os.Getenv("DEEPSEEK_API_KEY"),
}

c.JSON(http.StatusOK, config)
@@ -83,6 +85,7 @@ func (h *ConfigHandler) UpdateConfig(c *gin.Context) {
OllamaURL string `json:"ollama_url"`
OpenRouterApiKey string `json:"openrouter_api_key"`
SiliconApiKey string `json:"silicon_api_key"`
DeepSeekApiKey string `json:"deepseek_api_key"`
}

if err := c.BindJSON(&config); err != nil {
@@ -99,6 +102,7 @@ func (h *ConfigHandler) UpdateConfig(c *gin.Context) {
"OLLAMA_URL": config.OllamaURL,
"OPENROUTER_API_KEY": config.OpenRouterApiKey,
"SILICON_API_KEY": config.SiliconApiKey,
"DEEPSEEK_API_KEY": config.DeepSeekApiKey,
}

var envContent strings.Builder

0 comments on commit 075c4f6

Please sign in to comment.