Browse Source

change vector

master
godo 5 months ago
parent
commit
dc512623c1
  1. 9
      godo/ai/server/chat.go
  2. 30
      godo/ai/vector/vector.go

9
godo/ai/server/chat.go

@ -10,7 +10,6 @@ import (
"godo/office"
"log"
"net/http"
"strings"
"time"
)
@ -73,13 +72,9 @@ func ChatHandler(w http.ResponseWriter, r *http.Request) {
libs.ErrorMsg(w, err.Error())
return
}
basePath, err := libs.GetOsDir()
if err != nil {
libs.ErrorMsg(w, "get vector db path error:"+err.Error())
return
}
for _, s := range resk {
s.FilePath = strings.TrimPrefix(s.FilePath, basePath)
// s.FilePath = strings.TrimPrefix(s.FilePath, basePath)
res.Documents = append(res.Documents, types.AskDocResponse{Content: s.Content, Score: s.Score, FilePath: s.FilePath, FileName: s.FileName})
}
libs.SuccessMsg(w, res, "")

30
godo/ai/vector/vector.go

@ -280,9 +280,9 @@ func handleGodoosFile(filePath string, knowledgeId uint) error {
// 检查是否为 .godoos 文件
if strings.HasPrefix(baseName, ".godoos.") {
// 去掉 .godoos. 前缀和 .json 后缀
fileName := strings.TrimSuffix(strings.TrimPrefix(baseName, ".godoos."), ".json")
//提取实际文件名部分
actualFileName := extractFileName(fileName)
// fileName := strings.TrimSuffix(strings.TrimPrefix(baseName, ".godoos."), ".json")
// //提取实际文件名部分
// actualFileName := extractFileName(fileName)
// 读取文件内容
content, err := os.ReadFile(filePath)
@ -307,6 +307,10 @@ func handleGodoosFile(filePath string, knowledgeId uint) error {
if err != nil {
return err
}
basePath, err := libs.GetOsDir()
if err != nil {
return err
}
// 拼接文件名和内容
// var filterDocs []string
// for _, res := range doc.Split {
@ -329,8 +333,8 @@ func handleGodoosFile(filePath string, knowledgeId uint) error {
//log.Printf("Adding document: %s", res)
vectordoc := model.VecDoc{
Content: res,
FilePath: filePath,
FileName: actualFileName,
FilePath: strings.TrimPrefix(doc.RePath, basePath),
FileName: doc.Title,
ListID: knowledgeId,
}
vectordocs = append(vectordocs, vectordoc)
@ -348,11 +352,11 @@ func handleGodoosFile(filePath string, knowledgeId uint) error {
}
}
func extractFileName(fileName string) string {
// 假设文件名格式为:21.GodoOS企业版介绍
parts := strings.SplitN(fileName, ".", 3)
if len(parts) < 2 {
return fileName
}
return parts[1]
}
// func extractFileName(fileName string) string {
// // 假设文件名格式为:21.GodoOS企业版介绍
// parts := strings.SplitN(fileName, ".", 3)
// if len(parts) < 2 {
// return fileName
// }
// return parts[1]
// }

Loading…
Cancel
Save