Compare commits

..

25 Commits

Author SHA1 Message Date
278a817709 Merged main into release while building v.2.0.25 2025-11-09 19:10:57 +06:00
fbf8e0408c Merged main into release while building v.2.0.21 2025-11-09 15:01:31 +06:00
1428e0bd5c Merged main into release while building v.2.0.20 2025-11-09 14:45:59 +06:00
9365e0833c Merged main into release while building v.2.0.19 2025-11-09 14:17:01 +06:00
57f51c5d0e Merged main into release while building v.2.0.18 2025-11-09 14:02:38 +06:00
d0b53607c4 Merged main into release while building v.2.0.17 2025-11-09 13:29:15 +06:00
814ca9ba7f Merged main into release while building v.2.0.16 2025-11-09 12:47:27 +06:00
49a41c597a Merged main into release while building v2.0.14 2025-10-28 18:06:58 +06:00
93f60c4e36 Merged main into release while building v2.0.13 2025-10-28 17:56:06 +06:00
8cdb31d96d Merged main into release while building v2.0.12 2025-10-28 17:37:25 +06:00
a20fb846f0 Merged main into release while building v2.0.11 2025-10-28 17:30:35 +06:00
90cfc6fb0c Merged main into release while building v2.0.11 2025-10-28 16:58:58 +06:00
114146f4d2 Merged main into release while building v2.0.10 2025-10-28 16:07:20 +06:00
b4b902cb4c Merged main into release while building v2.0.7 2025-10-28 15:12:13 +06:00
7933abe62d Merged main into release while building v2.0.7 2025-10-28 14:52:58 +06:00
d213de7a95 Merged main into release while building v2.0.5 2025-10-28 14:42:21 +06:00
81b01d74ae Merged main into release while building v2.0.6 2025-10-28 14:33:44 +06:00
1fbdd237a3 Merged main into release while building v2.0.5 2025-10-28 14:25:53 +06:00
2d82b91090 Merged main into release while building v2.0.5 2025-10-28 14:24:25 +06:00
5d3829d1fe Merged main into release while building v2.0.5 2025-10-28 12:56:19 +06:00
edadedcf80 Merged main into release while building v2.0.4 2025-10-28 12:48:28 +06:00
5ff6d4e072 Merged main into release while building v2.0.4 2025-10-28 12:05:38 +06:00
ffc2d6ba0a Merged main into release while building v2.0.4 2025-10-28 11:58:25 +06:00
dab94df7d2 Merged main into release while building v2.0.3 2025-10-28 10:38:19 +06:00
281f7f877a Merged main into release while building v2.0.3 2025-10-28 10:29:20 +06:00
10 changed files with 14 additions and 79 deletions

View File

@@ -1,32 +0,0 @@
# Goreleaser configuration version 2
version: 2
builds:
- id: lcg
binary: "lcg_{{ .Version }}"
goos:
- linux
- windows
- darwin
goarch:
- amd64
- arm64
env:
- CGO_ENABLED=0
ldflags:
- -s -w
- -X main.version={{.Version}}
- -X main.commit={{.Commit}}
- -X main.date={{.Date}}
main: .
dir: .
archives:
- id: lcg
ids:
- lcg
formats:
- binary
name_template: "{{ .Binary }}_{{ .Os }}_{{ .Arch }}"
files:
- "lcg_{{ .Version }}"

View File

@@ -1 +1 @@
v.2.0.26
v.2.0.25

View File

@@ -27,7 +27,6 @@ type Config struct {
ResultHistory string
NoHistoryEnv string
AllowExecution bool
Think bool
Query string
MainFlags MainFlags
Server ServerConfig

View File

@@ -1 +1 @@
v.2.0.26
v.2.0.25

View File

@@ -44,19 +44,11 @@ type Chat struct {
type Gpt3Request struct {
Model string `json:"model"`
Stream bool `json:"stream"`
Stream bool `json:"stream"`
Messages []Chat `json:"messages"`
Options Gpt3Options `json:"options"`
}
type Gpt3ThinkRequest struct {
Model string `json:"model"`
Stream bool `json:"stream"`
Think bool `json:"think"`
Messages []Chat `json:"messages"`
Options Gpt3Options `json:"options"`
}
type Gpt3Options struct {
Temperature float64 `json:"temperature"`
}

View File

@@ -200,26 +200,12 @@ func (p *ProxyAPIProvider) Health() error {
// Chat для OllamaProvider
func (o *OllamaProvider) Chat(messages []Chat) (string, error) {
think := config.AppConfig.Think
var payload interface{}
if think {
payload = Gpt3Request{
payload := Gpt3Request{
Model: o.Model,
Messages: messages,
Stream: false,
Stream: false,
Options: Gpt3Options{o.Temperature},
}
} else {
payload = Gpt3ThinkRequest{
Model: o.Model,
Messages: messages,
Stream: false,
Think: false,
Options: Gpt3Options{o.Temperature},
}
}
jsonData, err := json.Marshal(payload)
if err != nil {

View File

@@ -5,7 +5,7 @@ metadata:
namespace: lcg
data:
# Основные настройки
LCG_VERSION: "v.2.0.26"
LCG_VERSION: "v.2.0.25"
LCG_BASE_PATH: "/lcg"
LCG_SERVER_HOST: "0.0.0.0"
LCG_SERVER_PORT: "8080"

View File

@@ -5,7 +5,7 @@ metadata:
namespace: lcg
labels:
app: lcg
version: v.2.0.26
version: v.2.0.25
spec:
replicas: 1
selector:
@@ -18,7 +18,7 @@ spec:
spec:
containers:
- name: lcg
image: kuznetcovay/lcg:v.2.0.26
image: kuznetcovay/lcg:v.2.0.25
imagePullPolicy: Always
ports:
- containerPort: 8080

View File

@@ -15,11 +15,11 @@ resources:
# Common labels
# commonLabels:
# app: lcg
# version: v.2.0.26
# version: v.2.0.25
# managed-by: kustomize
# Images
# images:
# - name: lcg
# newName: kuznetcovay/lcg
# newTag: v.2.0.26
# newTag: v.2.0.25

18
main.go
View File

@@ -109,7 +109,6 @@ lcg [опции] <описание команды>
LCG_PROXY_URL URL прокси для proxy провайдера (по умолчанию: /api/v1/protected/sberchat/chat)
LCG_API_KEY_FILE Файл с API ключом (по умолчанию: .openai_api_key)
LCG_APP_NAME Название приложения (по умолчанию: Linux Command GPT)
LCG_ALLOW_THINK только для ollama: разрешить модели отправлять свои размышления ("1" или "true" = разрешено, пусто = запрещено). Имеет смысл для моделей, которые поддерживают эти действия: qwen3, deepseek.
Настройки истории и выполнения:
LCG_NO_HISTORY Отключить запись истории ("1" или "true" = отключено, пусто = включено)
@@ -164,18 +163,12 @@ lcg [опции] <описание команды>
Usage: "Disable writing/updating command history (overrides LCG_NO_HISTORY)",
Value: false,
},
&cli.BoolFlag{
Name: "think",
Aliases: []string{"T"},
Usage: "Разрешить модели отправлять свои размышления",
Value: false,
},
&cli.StringFlag{
Name: "query",
Aliases: []string{"Q"},
Usage: "Query to send to the model",
DefaultText: "Привет! Порадуй меня случайной Linux командой ...",
Value: "Привет! Порадуй меня случайной Linux командой ...",
DefaultText: "Hello? what day is it today?",
Value: "Hello? what day is it today?",
},
&cli.StringFlag{
Name: "sys",
@@ -223,10 +216,7 @@ lcg [опции] <описание команды>
if c.IsSet("model") {
config.AppConfig.Model = model
}
config.AppConfig.Think = false
if c.IsSet("think") {
config.AppConfig.Think = c.Bool("think")
}
promptID := c.Int("prompt-id")
timeout := c.Int("timeout")
@@ -1028,7 +1018,7 @@ func printDebugInfo(file, system, commandInput string, timeout int) {
fmt.Printf("📁 Файл: %s\n", file)
fmt.Printf("🤖 Системный промпт: %s\n", system)
fmt.Printf("💬 Запрос: %s\n", commandInput)
fmt.Printf("⏱️ Таймаут: %d сек\n", timeout)
fmt.Printf("⏱️ Таймаут: %d сек\n", timeout)
fmt.Printf("🌐 Провайдер: %s\n", config.AppConfig.ProviderType)
fmt.Printf("🏠 Хост: %s\n", config.AppConfig.Host)
fmt.Printf("🧠 Модель: %s\n", config.AppConfig.Model)