ai_xiaopei
9 days ago 4cd5499d60a851a59723067e74a4a92f7254b8e9
internal/llm/client.go
@@ -249,6 +249,37 @@
   return &result, nil
}
// ClassifyDocuments 分类文档
func (c *Client) ClassifyDocuments(prompt string) (string, error) {
   response, err := c.callLLMWithRetry(prompt)
   if err != nil {
      return "", err
   }
   // 解析 JSON
   var result []struct {
      Path        string  `json:"path"`
      Platform    string  `json:"platform"`
      Device      string  `json:"device"`
      ContentType string  `json:"content_type"`
      Confidence  float64 `json:"confidence"`
   }
   if err := parseJSON(response, &result); err != nil {
      return "", fmt.Errorf("解析 LLM 响应失败: %w", err)
   }
   // 转换回 JSON 字符串
   jsonBytes, err := json.Marshal(result)
   if err != nil {
      return "", err
   }
   return string(jsonBytes), nil
}
// ClassifyDocuments 分类文档
// callLLMWithRetry 带重试的 LLM 调用
func (c *Client) callLLMWithRetry(prompt string) (string, error) {
   // 第一次尝试