MCPcopy Create free account
hub / github.com/LumaAI-API/Luma-API / InitTemplate

Function InitTemplate

common/template.go:15–70  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

13var Templates map[string]*template.Template
14
15func InitTemplate() {
16 // init
17 // load template file
18 Templates = make(map[string]*template.Template)
19 // register template
20 if ChatTemplateDir == "" {
21 Logger.Warnf("InitTemplate empty TemplateDir")
22 return
23 }
24
25 exist, err := PathExists(ChatTemplateDir)
26 if err != nil {
27 panic(err)
28 }
29
30 if !exist {
31 Logger.Warnf("InitTemplate empty TemplateDir")
32 return
33 }
34
35 err = filepath.Walk(ChatTemplateDir, func(path string, info os.FileInfo, err error) error {
36 if info.IsDir() {
37 return nil
38 }
39 if filepath.Ext(path) != ".yaml" {
40 return nil
41 }
42 var tempContent map[string]string
43 fileBody, err := os.ReadFile(path)
44 if err != nil {
45 err = errors.Wrap(err, fmt.Sprintf("load failed: %s", info.Name()))
46 return err
47 }
48 err = yaml.Unmarshal(fileBody, &tempContent)
49 if err != nil {
50 err = errors.Wrap(err, fmt.Sprintf("load failed: %s", info.Name()))
51 return err
52 }
53
54 for k, v := range tempContent {
55 if strings.TrimSpace(v) == "" {
56 continue
57 }
58 subTemp, err := template.New(info.Name() + k).Parse(v)
59 if err != nil {
60 return err
61 }
62 Templates[k] = subTemp
63 }
64
65 return nil
66 })
67 if err != nil {
68 panic(err)
69 }
70}

Callers 1

mainFunction · 0.92

Calls 1

PathExistsFunction · 0.85

Tested by

no test coverage detected