sanbo110 commited on
Commit
f9f5a60
·
verified ·
1 Parent(s): 4d5007c

Update main.go

Browse files
Files changed (1) hide show
  1. main.go +7 -33
main.go CHANGED
@@ -2,12 +2,10 @@ package main
2
 
3
  import (
4
  "bufio"
5
- "embed"
6
  "encoding/json"
7
  "errors"
8
  "fmt"
9
  "io"
10
- "io/fs"
11
  "log"
12
  "net/http"
13
  "os"
@@ -18,9 +16,6 @@ import (
18
  "github.com/joho/godotenv"
19
  )
20
 
21
- //go:embed web/*
22
- var staticFiles embed.FS
23
-
24
  type Config struct {
25
  APIPrefix string
26
  APIKey string
@@ -85,32 +80,13 @@ func authMiddleware() gin.HandlerFunc {
85
  func main() {
86
  r := gin.Default()
87
  r.Use(corsMiddleware())
88
- // 1. 映射 Web 目录到 /web 路由
89
- //r.Static("/web", "./web") // 确保 ./web 文件夹存在,并包含 index.html
90
- //subFS, err := fs.Sub(staticFiles, "web")
91
- //if err != nil {
92
- // log.Fatal(err)
93
- //}
94
- //r.StaticFS("/web", http.FS(subFS))
95
-
96
- //// 2. 根路径重定向到 /web
97
- //r.GET("/", func(c *gin.Context) {
98
- // c.Redirect(http.StatusMovedPermanently, "/web")
99
- //})
100
- // r.GET("/", func(c *gin.Context) {
101
- // c.JSON(http.StatusOK, gin.H{"message": "API 服务运行中~"})
102
- // })
103
- // 3. 健康检查
104
  r.GET("/ping", func(c *gin.Context) {
105
  c.JSON(http.StatusOK, gin.H{"message": "pong"})
106
  })
107
- // 4. API 路由组
108
- // authorized := r.Group("/")
109
- // authorized.Use(authMiddleware())
110
- // {
111
- // authorized.GET("/hf/v1/models", handleModels)
112
- // authorized.POST("/hf/v1/chat/completions", handleCompletion)
113
- // }
114
  apiGroup := r.Group("/")
115
  apiGroup.Use(authMiddleware()) // 可以选择性地提供 API 密钥
116
  {
@@ -129,7 +105,8 @@ func main() {
129
  // 新路径 /completions
130
  apiGroup.POST("/completions", handleCompletion)
131
  }
132
- // 5. 从环境变量中读取端口号
 
133
  port := os.Getenv("PORT")
134
  if port == "" {
135
  port = "7860"
@@ -164,7 +141,6 @@ func handleCompletion(c *gin.Context) {
164
 
165
  model := convertModel(req.Model)
166
  content := prepareMessages(req.Messages)
167
- // log.Printf("messages: %v", content)
168
 
169
  reqBody := map[string]interface{}{
170
  "model": model,
@@ -238,7 +214,6 @@ func handleCompletion(c *gin.Context) {
238
  line = strings.TrimSpace(line)
239
  // 忽略非 JSON 数据块(例如特殊标记 [DONE])
240
  if line == "[DONE]" {
241
- //log.Printf("响应行 DONE, 即将跳过")
242
  break
243
  }
244
  var chunk map[string]interface{}
@@ -347,7 +322,6 @@ func handleCompletion(c *gin.Context) {
347
  }
348
  }
349
 
350
-
351
  func requestToken() (string, error) {
352
  url := "https://duckduckgo.com/duckchat/v1/status"
353
  client := &http.Client{
@@ -493,4 +467,4 @@ func getIntEnv(key string, fallback int) int {
493
 
494
  func getDurationEnv(key string, fallback int) time.Duration {
495
  return time.Duration(getIntEnv(key, fallback)) * time.Millisecond
496
- }
 
2
 
3
  import (
4
  "bufio"
 
5
  "encoding/json"
6
  "errors"
7
  "fmt"
8
  "io"
 
9
  "log"
10
  "net/http"
11
  "os"
 
16
  "github.com/joho/godotenv"
17
  )
18
 
 
 
 
19
  type Config struct {
20
  APIPrefix string
21
  APIKey string
 
80
  func main() {
81
  r := gin.Default()
82
  r.Use(corsMiddleware())
83
+
84
+ // 健康检查
 
 
 
 
 
 
 
 
 
 
 
 
 
 
85
  r.GET("/ping", func(c *gin.Context) {
86
  c.JSON(http.StatusOK, gin.H{"message": "pong"})
87
  })
88
+
89
+ // API 路由组
 
 
 
 
 
90
  apiGroup := r.Group("/")
91
  apiGroup.Use(authMiddleware()) // 可以选择性地提供 API 密钥
92
  {
 
105
  // 新路径 /completions
106
  apiGroup.POST("/completions", handleCompletion)
107
  }
108
+
109
+ // 从环境变量中读取端口号
110
  port := os.Getenv("PORT")
111
  if port == "" {
112
  port = "7860"
 
141
 
142
  model := convertModel(req.Model)
143
  content := prepareMessages(req.Messages)
 
144
 
145
  reqBody := map[string]interface{}{
146
  "model": model,
 
214
  line = strings.TrimSpace(line)
215
  // 忽略非 JSON 数据块(例如特殊标记 [DONE])
216
  if line == "[DONE]" {
 
217
  break
218
  }
219
  var chunk map[string]interface{}
 
322
  }
323
  }
324
 
 
325
  func requestToken() (string, error) {
326
  url := "https://duckduckgo.com/duckchat/v1/status"
327
  client := &http.Client{
 
467
 
468
  func getDurationEnv(key string, fallback int) time.Duration {
469
  return time.Duration(getIntEnv(key, fallback)) * time.Millisecond
470
+ }